I am studying in Hangzhou Normal University (the best university in the world). Thanks for my three years here, my classmates and mentors!

The author began to learn Web development by himself in the second semester of sophomore year. In the first semester of sophomore year, I worked on Java backend, and in the second semester of sophomore year, I switched to the front end and did two business projects with my tutor.

Since early February to prepare a resume, review the knowledge points, delivering a byte, tencent, baidu, ali, experiences, large and small, interview, and eventually to April 17, received a letter of intent for ali box horse has two and a half months, while also has experienced the stages of burnout, but the result is good, now hope that through this article, I will summarize the most important two months in college and share some original ideas with you.

As of press time, at present

  • Byte tiktok hang
  • Tencent PCG oral offer, not accepted
  • Arihema has landed
  • Baidu Internet of Vehicles, OC is not connected

Face the

I will write in the order of the beginning of the first (side), Tencent PCG, Byte Tiktok, Ali BU delivery is more, the last is Baidu unified recruitment (unknown department).

Why this order? Because my spring recruitment, preparation and resume were started at the same time, that is to say, I was relatively weak at the beginning, knowledge points did not review, interview experience is not enough, these are summed up during the interview.

Ant Financial Two rounds (direct end)

One side (telephone 1h10min)

I had an interview in the middle of February, when I was still a rookie. The interviewer was very nice and encouraged me all the time, saying that I had rich project experience and was willing to dig more into me. I was afraid there was a misunderstanding of the word “digging”, and I happily said “yes”. The latter was purgatory for me as a rookie.

  • To introduce myself
  • What happens when you enter the URL? Don’t say online template, say it in your own way.
  • More on DNS? (Two kinds of search, back source, can do load balancing, cache optimization, and CDN relationship)
  • React life cycle?
  • React: Do you have a React error? Why? How to solve it? (Timers forget to uninstall, component loops, etc.)
  • React Router
  • How Mobx works? How does it work?
  • How to connect Mobx and React? Do you have a look at the source of this library? What optimization was done? ) (kneeling
  • Talk about the virtual DOM
  • React component communication?
  • React Hooks do you understand what they fixed?
  • Pure Component and Memo?
  • What apis do you know about ES6? (Said some common ones)
  • Do you know how Promise works? How do chain calls work?
  • Rip code: I read my blog and found an article about my experience of brushing algorithm problems, so I said to do a problem first, the hard binary tree of Leetcode, I was stupid, I wrote for 20 minutes and didn’t write it at the end…

It’s not that hard to look back on now (pow…) But the answer at the time was halting. Here’s the lesson: Start preparing early for your internship interview!!

Second interview (telephone 40min)

A few days after the first interview, this is a round of pressure interview, the tone of the interviewer is serious, sometimes in a reproachful tone. At that time or small rookie, a lot of questions are asked for the first time, especially the source code and principle has not had time to review.

  • Tell me about your project.
  • What are the difficulties of your project? (Talking about performance optimization and selfie rotation)
  • How long have you been learning front-end? (one year)
  • React React principle? Have you read the source code?
  • Let’s talk about setState, do you understand the principle behind it? (I have not read the source code, but batch update, synchronous asynchronous, virtual DOM can be said, MY brain was always in “I have not read the source code, I am finished”)
  • Is there anything else you know more about? (Not very well answered)
  • So you only know how to use it, and you don’t know how to use it? (I was on my knees, but I was still learning about the principle of the viewer and Js design mode, while I still had some questions about the React principle. In fact, it could have guided the interviewer to ask me about what I had reviewed, such as the principle of Router, the principle of Mobx and the principle of the viewer. However, I gave in to the “power” of the interviewer at that time. With a halting “Um…” )
  • What do you consider your strengths? What are the disadvantages? (Pulls)

After the face is very depressed, but asked the next push little sister I unexpectedly…

Bytedance — Tiktok Volcano Edition two Rounds (two sides mounted)

The first video interview, I did not play very well.

One side (video 50min)

  • Rip code: binary tree to find a path sum of K.
  • The position of CSS?
  • Rip code: handwritten anti – shake, no tail, time stamp done
  • Talk about HTTP caching
  • Talk about DNS caching
  • Project difficulties? (balabala…).

Second Interview (video 40min)

  • What are the properties and characteristics of CSS postion? Which one is special?
  • Create a three-column layout with images spaced 20px apart
  • Project difficulties? What does optimization do? (balabala…).
  • HTTP cache
  • Rip code: give DOM root element, recursively find all child elements in the array
  • Cross-domain and cookie?

Tencent PCG third round (oral offer)

One side (telephone 1h)

The interviewer felt very good, is a Cantonese accent, is not very clear telephone voice, finally switched to QQ voice. There are a lot of questions, but not many very in-depth questions.

  • Why the front end?
  • How did you learn about the front end? (Youtube quick start, then GitHub find projects to read, read foreign blogs, subscribe weekly and newsletter to keep up with the latest developments)
  • Which books to read? (You don’t know the first volume, Ninja Secrets, in-depth ES6, proficient CSS 3rd edition)
  • Know CDN? Why does CDN give you faster access to resources? (First DNS, later found the direction of the wrong, round back)
  • What are the common status codes?
  • HTTPS and HTTP? (TLS/SSL)
  • (Dig deep) You said TLS will also make a handshake, how exactly?
  • (Digging deeper) So what’s the encryption process like? (Man-in-the-middle attack, defects of symmetric encryption, principles of asymmetric encryption – public and private key pairs)
  • HTTP cache? What does strong cache and negotiated cache mean? (not… The interviewer said nothing, and then asked me again.
  • What is a closure?
  • Tell me about your ES6? React React React React React React
  • What’s the difference between let and var? (Lift, block scope)
  • How does Babel convert ES6 to ES5? JSX uses Babel to convert JS to Babel.
  • React lifecycle?
  • (Deep digging) What problems have you encountered? Like in willUnmount setState()
  • (Dig deep) When is setState executed? (Mention Event Loop and transaction broker)
  • Do you know PureComponent (with the new react.Memo ())
  • What is PWA?
  • What is a ServiceWoker? (Can do full cache, offline available…)
  • (Digs) So which one comes first with the browser cache? (don’t)
  • Have you encountered cross-domain problems? How to solve it? (Add CORS package, one-click solution)
  • (Dig deep) So how does this Express CORS library work? (That’s how CORS works)
  • (Digging) Is there any other way? (JSONP – mentioned doing website analysis of JD before, or using Node as a layer agent)
  • How to achieve a center layout? How do YOU design Flex?
  • Tear an algorithm by hand — maximum continuous subsequence, classic DP.

Second interview (telephone 40min)

I have prepared the React principle by now. However, the interviewer did not ask me about the React principle.

  • Principle of SPA front-end routing
  • (Dig deep) Browser Router’s native implementation
  • HTTPS handshake (TLS handshake), what is the process?
  • How to solve cross-domain problems?

Other problems were not recorded due to errors.

Three sides (video 40min)

The interviewer was a big shot. I was shaking and I wasn’t doing very well. The questions were very basic and unexpected.

  • When can I start my internship? Internship time?
  • For the choice of city?
  • For team selection?
  • A puzzle, calculate the probability, not difficult.
  • A CSS question about transform (not well answered, I am not very familiar with CSS)
  • Native Ajax request process, JS implementation process, promise encapsulation.
  • Project difficulties? (Lots of projects, Balabla says a lot)
  • (Digging) How do you calculate this load time in your project? And then we talked about front-end monitoring.
  • Hand rip code: one DP question.

Ali Cloud two rounds (direct end)

No record.

In my impression, the questions are difficult, and many of them are the further digging and expansion of the conventional questions, as well as the scene questions.

Pen test is relatively open, do a webpack optional chain, I as a complete project to write, good evaluation.

Github.com/HytonightYX…

Ali Cainiao Network third round (direct end)

One side (telephone 1H20min)

On one side was an executive who spoke more quickly and gave the impression of being more serious. At the beginning, we talked about a lot of non-technical issues, and at the end, we talked about the business and development of newbies for a long time. We felt very good after the conversation. And later, we often called me to return my status and asked me about the choices of BU, which made me feel the concern of the supervisor.

  • Hobbies, talking about society, talking about books
  • Talk about how to study, your strengths, weaknesses, others’ evaluation of yourself
  • College life, the most proud thing
  • React state management and Mobx
  • Read what source code?
  • How to learn the front end? Q: Speaking of the React Conf, what have been the themes of recent editions?
  • (Digging deeper) Fiber architecture
  • Talk about the DNS
  • What’s the problem? I asked what the technology stack was, but was told by the interviewer not to ask such questions, but to ask about the business, technology and long-term planning of the department. Then I was introduced to these three points for more than ten minutes. I felt very sincere

After the interview, tell me directly that I passed. He will ask his colleagues to focus on my foundation tomorrow or the day after tomorrow, so that I can make good preparation.

Second interview (telephone 50min)

Really all the basics, no questions about the project. However, it is best to give an answer based on your actual experience. Closures, for example, I assisted with scenarios I used in my own projects.

  • JS primitive type? (The answer is 7, with emphasis on bigint and Symbol)
  • How do I understand closures?
  • How many options are there for animation?
  • JS to implement animation should pay attention to what?
  • Flex layout with two child elements side by side?
  • What about the cycle of events?
  • React Fiber?
  • React’s setState principle?
  • When will the React component refresh (render())?
  • Talk about high-level component HOC?
  • How is performance optimization done in the project?
  • Evolution of modularity?
  • How does Webpack implement packaged builds?

Three sides (telephone 26min)

  • To introduce myself

  • Talk about career planning

  • You mentioned that you wanted to do architecture, and you talked about your understanding of front-end architecture. (From the perspective of front-end history, front end separation, front-end engineering framework, automation, CI/CD, front-end monitoring, buried point, design mode, load balancing, cache, Kafka to the database, etc. Chat for more than ten minutes, more angles)

  • Do you have any questions?

After the interview, the interviewer called to say that I had passed and would enter me into the system and remind me to confirm.

Ali Hema Sixth Round (accepted offer)

The hema interview was the longest, lasting about one and a half months, but I felt good after the interview and felt quite compatible with the hema interviewer. I am optimistic about hema’s diversified and full-link business system, so I chose hema to continue my career and finally got the offer.

One side (telephone 1h)

  • How to implement an ORM library?
  • What does Koa do behind the scenes? (Global exception handling, middleware authentication, parameter verification)
  • What did you do with the authentication?
  • (Dig deep) According to your design, if you visit a picture through your interface will also be authenticated and lead to the login page, how to solve this problem? (This is a question that was not taken into account by the system at the time, so the answer is not good)
  • How do React and Son components communicate?
  • React state vs. props
  • How to encapsulate a component that requests data? (UI and business separation, single responsibility, higher-order functions)
  • Tree Sesect, how to optimize this Tree?
  • In addition, there is too much data when searching, how to do? (Throttling, etc.)
  • Basic: Given a piece of asynchronous code, ask for the order of output (look at tourist event loops, macros, microtasks, etc.)

Second interview (telephone 40min)

React

  • Introduce the difficulties of the project (a lot)
  • Do you know about cookie and session? What about the traditional login process?
  • Fiber Architecture Overview
  • Overview of diff principles
  • It can be asynchronous or synchronous. It can be asynchronous or synchronous. It can be asynchronous or synchronous.
  • Functional programming? The curry?
  • Node.js? Talk about node and explorer event loops

Three sides (Telephone 1h)

  • Leader introduced the business of the department to me for 20 minutes, which was great
  • Talk about your project, what role did you play, what did you overcome
  • What kind of team do you have in mind?
  • Talking about the ideal

Four sides — Technical End (telephone 1h)

  • Describe the difficulties of your project? (20 minutes)
  • You talked about state machine optimization. How did you do it? Which states are optimized to?
  • You mentioned the reuse of API, such design may lead to too much pressure on an API, could you redesign it? (BFF architecture)
  • Performance optimization, combined with practical scenarios (not just a simple list, but also how much packaging reduced, how much load time reduced by using this technology)
  • You said the image was rotated automatically, you did the inverse; So you can do both front-end and back-end. How do you choose? ,
  • What are your goals as an intern? What do you want to learn and do?

Five faces — Cross faces (phone 40min)

The interviewer is Tmall P9

  • Difficulties of the project (mentioned a long list of prepared, from zero to commercial project design ideas, communication with customers and so on, as well as note platform performance optimization process).
  • How is performance optimization done?
  • In-depth: you say a few seconds to optimize a few seconds, you this is how to measure come?
    • In-depth: front-end performance monitoring related, data buried point related
  • What competitions do you take part in? What role do you play?
  • What’s your problem?
  • Enter ali’s career development

HR interview (30min phone call)

  • To introduce myself
  • What is the project responsible for?
  • Career goals
  • The thing that lasted the longest? (front)
  • Ever thought of giving up? (no)
  • Who has influenced you most?
  • Name one thing you’ve been criticized for?
  • Name one thing you have promoted as a leader?
  • Do you have any questions?

Baidu (OC not connected)

One side (video 40min)

One side is a cold little sister interview.

  • To introduce myself
  • This section describes the differences between webstorage and cookies
  • How do you defend against XSS attacks
  • 302 What is the status code? What’s the difference from 301?
  • Tell me about your performance optimization process. (balabala…).
  • Webpack configuration process? Common plug-ins?
  • How to solve cross-domain problems?
  • Have you considered mobile optimization?
  • Rip code: deep copy
  • How to learn the front end at ordinary times? (Asked quite deep, but also on the spot let me read the information to him)

Second Interview (video 40min)

The second interview began to deviate from the project, is also a little sister interview. I laughed when I couldn’t answer some questions, and she laughed too.

  • To introduce myself
  • Talk about mobile optimization
  • How does the OAuth2 login work in your project?
  • How is the project deployed?
  • How do I know whether to access the mobile terminal or the PC terminal?
  • What if you want to use the same domain name but access different items based on the device you are accessing? (Nginx determines the device and reverse-proxies to a different port)
  • How did you choose the technology for your project?
  • When introducing yourself, I mentioned that you want to do architecture. Could you tell me about your career plan?
  • Rip code: Promise encapsulates Ajax
  • Async /setTimeout/Promise: async/setTimeout/Promise: async/setTimeout

Three sides (video 50min)

On the third side was a thin uncle, who should have been like a director. Hair is very few, talk very gentle, call me to say “you”, good impression degree upup. However, no matter which big factory, the director will talk about performance monitoring and burying points, as well as quantification of performance, friends to prepare well.

  • To introduce myself
  • Talk about the project difficulties (Balabala…)
  • Speaking of performance optimizations, how do you keep track? (Finish, continue to say that you can do buried points, you can do performance monitoring)
  • How to define the first screen load time? (You make a mistake at first, then slowly come back and thank the interviewer for reminding you)
  • How did you make today’s Picks and today’s Hottest modules, and what algorithms did you use?
  • Tell me specifically about your career plans, such as what you will do in the first few years and what you will do in the next few years.
  • How to learn the front end at ordinary times?
  • Tell me the basis of your choice of city?
  • What are the three factors that determine your choice of company and team?
  • Is there a team in Baidu that you want to join?
  • Do you have any questions?

The interviewer rated himself well.

Write to yourself: Review the past road

Playing computer is my childhood dream.

When I was a child, due to family work, I got my hands on a computer early, and began to play violent motorcycle 1998, playing red alarm, and secretly learn computer maintenance technology from my father’s colleague. I worked as an audio-visual education manager for three years in junior high school, and dismantled all the computers in the classroom in senior high school (I was scolded a lot). Then I began to be addicted to DIY hardware. In the second year of high school, I finally set up my first PC in my life (thanks to my parents). I learned VB in the high school and got full marks in zhejiang Technical college entrance examination. I successfully studied computer science and technology in university and formally entered the pit of programming.

I entered the university in 2017, but I was confused when I was a freshman. I scanned zhihu every day to find the direction and see the industry trends. I learned C language first, and then I was beaten in ACM training. I found that my algorithm could not compete with the leaders, so I turned to artificial intelligence deep learning, followed Ng’s course, learned Python, installed TensorFlow and started to make demos, and finally built a crawler for educational administration system. Can automatically identify the verification code login.

At the end of freshman year, something was wrong. This deep learning is all mathematics, ah, their probability theory has not learned, read the paper head pain, deeply feel this thing with their own ability to learn, I have to have a big man to take me, but also rich! Have no money you CPU run model to play, see somebody else GTX1080Ti run of how fast. I have no money no resources no teacher, immediately push: learn this thing to take an examination of grind, go to famous schools.

At this time, I planned to enter dachang in the next few years. Do you want to take the postgraduate entrance exam? Since take an examination of grind or to enter big factory, why don’t I undergraduate course blunt blunt? In addition, I am not good at the exam, but others, I like practice, hands-on.

All right, keep looking for other paths. This is a Java Web project, using JeeSite 2.x, which can automatically generate code templates. Hurry to learn Java, with Java Web environment with several days, by the way, learn to flip Ang, jQuery. For fun, this is a legacy project, and it is extremely difficult to match the environment, because you have to find the old version. There seems to be some strange version correspondence between Tomcat, Maven and Java. At first, I didn’t know it.

In the end, my senior and my senior led us to complete the project. Although I worked for others but didn’t get a penny, it helped me open the door to a new world: Web development, which was quite interesting.

So from the sophomore year, I changed the path again, and officially entered the pit of Web development. Learning Java and Spring by myself was a bit difficult to get started, but understanding DI and AOP was a bit of an Epiphany. Thymeleaf + jQuery, my first website comes out, is a book website, similar to douban reading that kind.

Through Spring’s MVC, I was introduced to design patterns. So I read Head First Design Patterns, and I learned about singletons and factories and stuff like that. After a semester, I did not make a few websites. I did well in Java course design, using Java FX and native support for MVC.

After the end of the first semester of my sophomore year, I met my current tutor L. We talked a lot and got along very well. I also wanted to go to his lab and learn from him. However, L tutor has a requirement: use React front-end and Node.js backend. I learned Java for a semester, which is so easy to give up, I said, I three together to learn.

It is really deep into the front end, and MY previous template + jQuery to write web pages is completely different, this component-oriented development way is deep in my heart. Node.js is lightweight, with unified front-end and back-end languages and less code than Java. As Node became more and more used, Java stopped learning.

Now recall, at that time faced with the choice of Java or Node.js are entangled, now it seems to be really ridiculous, is not a technology, like death and death, what need to learn what not to go, anyway, will be aimed at the full stack. Think of “man-month myth” in a sentence: “there is no silver bullet”.

After learning React for a few months, I worked with my teacher to create a project. After that, I created a note-sharing platform with my classmates, and then I took on a new project. Then the tutor asked me and Party A to meet the requirements, design the prototype, design the database table, and design the front and back end of the system, which was quite challenging.

After the winter vacation, here also entangled in two months of postgraduate entrance examination. Then fantasy 2020, met the epidemic, in early February began to find spring recruitment internship.

Write here, embellish a few thoughts:

  • Give up: It takes courage to give up early if you find that you really aren’t suited to something. For me, the key to quitting something is whether I feel happy doing it, whether I really like it. But when ACM training, to a set of algorithms, a set of templates I really can not lift, not appropriate, change direction! Artificial intelligence, deep learning, money, resources, mentors, no, change direction! Web development, is their own dishes, they like the front end, stick to it!

  • Nothing for nothing: did you get nothing for that time by giving up ACM? First of all, I realized that I was not suitable for this road, itself is a kind of harvest, at least the code ability is always enhanced, thinking ability has also been exercised, code hand speed has improved a lot; Deep learning enabled me to directly use face recognition in my last project. I learned Java and Spring framework by myself, which gave me access to SOLID principles, design patterns and other software engineering knowledge, which directly gave me the idea of building architecture, and made me pay more attention to code quality, system design, and future maintenance and scalability, etc. It also made me use Node to do back-end, Quick access to Express, KOA and other Web frameworks. Not to mention the fact that these things help me in my courses, gpa, etc., as far as software development courses are concerned, FULL GRADES. So doing these things for nothing has increased the breadth of my knowledge. In software development, there are certain things that are constant.

Internship Interview Guide

Personally, in addition to the one, two and three aspects of the interview, we can change the perspective, which are resume, ability, expression and potential.

Resume close

  • Brief introduction, beautiful
  • Hang up your Own GitHub and blog
  • The project should have an accessible online address

As for aesthetics, it depends on people, and aesthetics is different. Personally, I directly use Typora to write MarkDown, and then output it into PDF, with white characters on black background and several blue hyperlinks. This online tutorial is also many, not to repeat.

GitHub should be more green ah, or the home page to hang a few of their own proud work, blog also update a few technical articles, technical articles completely original is a little difficult to write down their own learning sentiment is also good, in short, to experience their continued enthusiasm.

Project access, that’s a lot of implicit stuff. If you did it yourself, it means you’re at least willing to spend money on technology, know how to configure servers, deploy front-end and back-end projects, have experience with Linux, and are willing to prove that the project is real and not just a lip service.

Technical clearance

Basics: There’s nothing to be said for this. Brush your face, hit the books, read other people’s summary essays, and draw your own mind map to fill in the gaps.

Project: the project should have difficulties, some students will ask: I don’t have difficulties how to do ah, can also make something out of nothing. You may only need that much, but you can keep improving. For example, a very simple picture upload, you may think that the line, needs to meet, but you in nuggets just search “upload”, a lot of business requirements come ah, what large file upload, breakpoint continuation, H5 upload, pre-processing before uploading, and so on, any one is common difficulties.

In addition, since it is an interview, you need to prepare well for the interview. Even if your usual level is very strong, but many questions do not spend time to review and summarize, the interview is still easy to stumble, and will affect the expression.

Express to close

  • Be polite, speak at a moderate pace, express yourself clearly and actively
  • Demonstrate your knowledge integration ability by interspersing the basics and projects

Active communication: don’t say no, don’t waste time, if you can ask “can you give some hints?” If you think you have ideas but don’t know what to say, start with “Could you give me half a minute to think about it?”

Foundation and project interspersed: ask the foundation can intersperse projects, so that it is true, and not a repeat of the answer will only recite feelings. For example, when asked about the status code, you say “… 301 redirects. I changed the address of a project I worked on earlier, so I used it in nginx configuration…

Potential shut

Note that the interviewer may be testing your potential by asking why you chose the front end, your position in the project, and how you feel about XXX (technology).

I don’t want to and I don’t want to give any answers or routines to these questions. Everyone is different. It is recommended to prepare in advance with your own experience.

Study guide

I summed up a word is that the way to learn to be wide, learn to have a summary and output.

The way of learning should be wide

1 search,

  • Search problem:If you can only use Baidu and did not open advertising &&block off some websites, then congratulations you search for things is likely to be second hand or even third hand information, there are content errors or outdated problems, I admit that a lot of things have the value of existence, but so do too low cost. If you try Google, GitHub Issue, Nuggets, Zhihu or V2EX to search, the price will be higher, because these placesMore professional. Second,GoogleSearch English keywords if you seeStack OverflowThe word, then you are not far away from solving the problem. Finally, tryTool - TimeSet to make sure what you find is new.
image-20200422103849132
  • Search for study materialsMany people want to start learning something, but don’t know how to search for good information. In fact, written official documents are very good information, you can try inGitHubSearch, Zhihu search, B site search, wechat search and Taobao search. I personally like official documents, YouTube, Google, various domestic forums, GitHub, B station in this order to find information. The Internet is so developed, information is too much, everyone’s habits are not the same, reference reference is good.
  • Search project: recommend GitHub, learn keyword search and conditional Settings!
  • Learn roadmap + technology
  • List of quality items awesome + Technology
  • Good project template RealWorld + technology
  • Conditionals: Specify stars Language Forks, etc

Secondly, there are many good forums abroad, such as Medium. There are also plenty of conf tutorials to watch on YouTube, as well as a ton of how-to tutorials, just search for English keywords.

In addition, it should be noted that the master of the correct search posture, but also do not become addicted to the search, found a good, relatively new information, you can begin to learn, do not always think of search to see if there is a better, so that you will never start to learn, favorites are a lot of information.

2 read

Front-end development of the book list is unnecessary, Zhihu Douban nuggets have a lot of recommendations.

We do front-end development engineers, in addition to front-end development, engineers first. I don’t want to just move 🧱, usually will read a little other books.

  • Good code: Code Neatness, Architecture Neatness etc
  • Project management: Myth of the Month of Man (I didn’t understand many parts, but I may learn something new after work)
  • Design: UI design “design book for everyone” product design recommendation everyone is a product manager of this website
  • Quality: The Way of Programmer Cultivation, Professional Quality of Programmer

There are other great books that you can recommend in the comments section.

3. Technical breadth and depth

The first layer: after learning a technology, I can be a “switch man” and make things that can run to meet basic business needs.

Level two: Learning best practices and being able to write high-quality, high-performance, maintainable code;

Third layer: break into the bottom layer, understand the principle, can do optimization;

Level 4: Not only can I do details well, but also I can design the overall architecture of the system, which has high requirements for the breadth and depth of knowledge.

4 tools

Here are a few points:

We eat everyday tools – PC, Win /macOS proficiency;

Editor: shortcut keys, various efficiency plug-ins, code checking, formatting, etc.

Linux common several commands;

Version control of Git, and GitHub proficiency;

Chrome debugging tips, performance testing tools, easy to use extension tools;

Postman/Navicat and other handy tools that will greatly improve our productivity.

Summarize and output

Learning struggles with forgetting, and forgetting is normal, so we need to write it down for future reference.

In addition, the learning efficiency Pyramid tells us that being able to teach others as a teacher is the most productive way, that is, to produce. Here are two ways to do it.

  • Blog or document:github pagesUnderstand, their own ECS+ jade name (sensitive words) can also be, can be matchedhexovuepressOr whatever it is,vuepressGood for organizing large amounts of documents, such as interview questions, etc. Of course, the technology is not important, the key is to write, blog to do no matter how beautiful do not write is useless.
  • Feynman method of learning: Suppose there is a beginner, you want to explain this technique to him. In my opinion, the best part of this technique is that you have to relate to other points of knowledge that the other person might understand to help you along the way. The whole process is like BFS&&DFS, which forces you to build a knowledge graph. I’ve been doing this for a long time. It works every time. Also, practice before an interview can help improve your “mouth feel.”

The end of the

Learning this matter and these two years of experience, in fact, is far from a few thousand words can be written. There’s a lot more to write about on search efficiency alone.

The purpose of this article is to summarize my experience and share my learning experience. I will be satisfied if I can help you a little. Oneself also can write some original article irregularly, can pay attention to.

Pack your bags and move on.