I am a 211 undergraduate this year, under the third year, nuggets six level of blogger, recently cast internship, a total of three, Ali’s Tao department and Ali Cloud, byte dance tiktok, of course, are looking for people to push, the results are as follows:

  1. Tao system two through, but into the system can only choose one, and then chose ariyun;
  2. Ali Cloud finished five rounds of interview, now waiting for offer;
  3. Bytedance Tiktok three rounds of technical + one round of HR, now received an offer from the front-end architecture group.

First of all, I would like to share my interview with you. Due to my different technical level and experience, I cannot guarantee that my interview questions will be of any reference to you, but they are all encountered in real interview scenarios. What I do is to ensure the authenticity and integrity.

Bytedance three rounds of technology + one round of HR

In the afternoon of March 17th, front-end intern of Douyin Architecture Group 1, 2, 3 sides + HR lasted about 3.5 hours.

This interview is not just a list of questions, mixed with some personal performance and interaction with the interviewer, so that everyone can feel the whole process more fully. In addition, in a big factory interview, you know, the interviewer likes to start from a point to ask a lot of questions, so there will be a lot of nested questions, I think this is the real interview scenario, instead of piling up questions one by one, like doing an exam paper.

Douyin side (45min) :

  • Introduce yourself

  • Can you explain the principle of VueRouter? (Two routing methods are mentioned.)

    • For the History route, how do you think the route is distributed on the server? (Stunned, the interviewer then explained to me.)
  • You said that you have read the source code of Vue, could you introduce the difference between Vuex Mutation and Action? (Mutation does synchronous operations, action is generally used for asynchrony)

    • Why design Mutation and Action? (I was not very clear at the beginning, but when it came to Redux, after communicating with the interviewers, we all agreed that Action is more suitable as the encapsulation of business logic, which provides more freedom)
  • Computer Network Seeing that you’ve written an article, I won’t ask. (Me: Laughs…) Can you tell me something about the operating system? Can you tell me something about the disk seek algorithm? (Thought for a moment, said three, FIFO, shortest first, elevator algorithm)

    • Can you tell me what the disadvantage of minimum seek time first is? (Stunned, the interviewer patiently explained to me that it would actually cause distant task starvation)
  • The difference between processes and threads (explains a wave, and also explains why Chrome switched from a single process to a multi-process architecture)

    • What interprocess communication (IPC) methods are known? (master-sub, conversational, message-mailbox mechanism, pipe, shared memory, Unix Domain Socket, and then told him THAT I have read the source code of Chromium IPC, the kernel of the previous ChannelPosix into ChannelMojo, so as to achieve the purpose of thread safety, I’ve read all of them. I think you’ve learned a lot.
  • Can you talk about the experience from entering the URL to rendering the page? (Asked many times, DNS parsing process, HTML morphology and syntax analysis, CSS parsing, compositing layer, compositing thread call rasterized thread pool, communication process between browser processes after generating bitmap, the relationship between graphics card cache and display, the interviewer said yes)

  • Here’s an algorithm for you, the container that holds the most water. Just give me the best solution.

    Picture captions

    It took me 15 minutes to finish, and it worked. I explained the idea to him, and he said what’s the idea at the heart of the algorithm? When I said the short board effect, he said it was greed. Did not answer up, feeling more embarrassed, I had a brainwave, said that maybe greed has been imperceptibly into my thoughts inside, he laughed, said can, strong, wait for a while to call the second interview officer. So it ended happily.

Douyin Second interview (1 hour)

The interviewer will not show his face and speak in a dignified tone. He may be silent for five seconds and then ask you a very serious question.

  • A brief introduction to yourself

  • ES5 write an array to deduplicate (first write an O(n^2) time)

    • Can we optimize? (I asked if I could use the new space, he said yes, and wrote an O(n) time.)

    • Can you tell a number from a string? (After thinking for a while, I still used indexOf method, but the optimal one didn’t come out. I suddenly came up with it, and my mind was a little confused at that time.)

  • Let’s talk about HTTPS encryption (symmetric encryption has AES + CHACHA20, packet mode previously has CBC, CTR, TLS1.3 only left GCM, asymmetric encryption RSA, ECDHE)

    • How do you shake hands? (Three versions: traditional RSA, TLS1.2, TLS1.3, and Session ID, Session Ticket, and PSK)

      • How does HTTPS ensure that data is tampered with? (Said the process with signature)

        • What is signature principle (private key encryption, public key decryption, comparison hash summary)

          • Which hash digest algorithms do you know?
  • Can you tell me a little bit about your project? How to solve the closure trap. 2. Solve the problem of transform failure through EventLoop)

    • Can you explain your understanding of EventLoop (Macro Task – Microtask -UI rendering)

      • What would you do if you had to do something before UI rendering? (I will start microtask execution)

      • Where is the requestAnimationFrame in an EventLoop? (Explained to him the Vsync signal for the display and browser, and rAF was executed first, he didn’t seem satisfied, I asked him, explained to me that rAF is actually done before UI rendering)

        • What are the benefits of animating separate layers? (Explained the principle of layering, which can be converted to a layer by setting CSS will-change, and called GPU acceleration)

          • Will a separate layer be redrawn? (Yes) Now that it’s redrawn, what’s the benefit of it? (Does not affect other layers)
  • What skills do you think you have? (Vue source code, browser, server rendering)

  • You said you looked at the Vue source code, can you talk about why computed is able to change itself when the dependency changes? I said that computed and watch share a Watcher class, and in the case of computed there is a deP collection dependency to achieve the effect of updating computed properties, I showed him how computed Watcher is associated with render Watcher and how Vue uninstalls unwanted dePs with cleanupDeps when collecting dependencies twice.

  • What do you think are your strengths? (1) Ability to think deeply; 2) Ability to share; 3) Community influence;

  • How much do you know about WebPack? (I talked about some optimization for WebPack, packaging time, precompiling, caching, shrinking build targets, talking about about ten plugins, and then packaging volume, how to configure treeshaking for JS and CSS)

    • Why do you think CommonJS can’t do tree-shaking?

      • Since the ESModule is loaded at compile time, can it be loaded at run time? Webpack has a dynamic import mode.

        • Loader and Plugin? And you know what the difference is? (Loader first, then plugin)
  • How do you plan for the future? (Talked about my view of level 5 engineer, my stage goal is to reach the lowest level 5)

    • What do you think of your professional goals? (Be in the top 20% of your field)
  • Is there anything you want to ask me? (Asked about the technology stack that might be reached, and what Tiktok intends to do with open source)

Three sides of Douyin (1 hour)

The young man was more affable, and much of the conversation had less to do with technical details.

  • How do you get to the front end? Why the front end? Why not engage in c++ low-level system development, backend, artificial intelligence? (Said my opinion, he agreed)

  • What kind of mindset do you have for school lessons?

  • What was the reason for doing this project? Is the knowledge that professional goes to learn useful inside?

  • How do you design the system if you want to generate a different ID every time? (Talked to him about how to resolve hash conflicts, he said ok)

  • I think I have learned C in school. What are the advantages or disadvantages of C language in design? (Mentioned the virtual base class, really can’t remember what this thing is used, by the way said the problem of multiple inheritance)

    • If you were asked to use JS to implement multiple inheritance, how would you do it, or in what other way? (Said his views on inheritance, and the design is not good, and then preferred the combinatorial way)

      • For example, you are your mother’s son, but also an employee in the company, a student in the school, how do you design your example? (Combine and instantiate different role functions)
  • How, if at all, would you classify the front-end body of knowledge? (Talked about the four branches of future front-end development)

    • If the basics need to be broken down, how do you do it? (Having said the three steps of learning the basics, level 1 application, Level 2 principles, level 3 building community and contributing code, I think I am currently between level 2 and Level 3)
  • Have you thought about making an open source tool? (Talked about my understanding of open source)

  • Do you join any clubs at school? (Yes, in a school association, with a group of people to study together)

  • Is there anything you want to ask me? (I talked to the interviewer about my own technical experience, which was enjoyable)

HR surface (30 min)

  • What was the original purpose of the project?

  • How is it possible to play songs at double speed? Why did you think of that?

  • Do you mind if your business squeezesyour open source sharing time?

  • What do you do if some code in your company cannot be open source and conflicts with your own open source sharing?

  • Why didn’t you go to your internship earlier? Now you’re looking for an internship?

  • Looking at your GPA, it’s pretty high. How do you balance academic and technical studies in school?

  • How do you feel about people commenting against you on your blog?

  • Did you have any club experience at school?

  • What interests do you have?

  • How’s your relationship with your roommate?

The overall feeling

The interview lasted for a whole afternoon, the first three sides talked for too long, and when I got to the HR side, my voice was hoarse, but the interview experience of byte was still very good, and the efficiency was quite high. I feel good about myself, mainly because of two things:

  1. Interviewers ask questions that are conductive, rather than just asking you to fill in the blanks on a specific knowledge point. They usually give you a very broad topic to play, so they give themselves a lot of space to play, but this is also related to their full preparation.
  2. The interviewer will try to ask you more in-depth questions until he catches you up, which is a good thing, because he’s usually above you, and the ability to ask in-depth questions shows that he values you.

On March 20, the offer from Douyin arrived.

Taobao two rounds of

Taobao side

March 12 night Taobao side (35min)

  • First introduce yourself, how to learn front end
  • Can you say something about the browser cache?
    • What fields does cache-control have? Does setting max-age: 0 have anything to do with whether the browser is cached? What’s the role of S-max-age?
    • Order of strong and negotiated caches
  • Can you tell me what fields a Cookie has? (I said domain, path, httpOnly, sameSite)
    • Anything else? A field about HTTPS
  • Talk about the difference between the arrow function and the ordinary function (said the writing method, prototype, this, and? For a moment, looking for hints)
    • Is this of the arrow function declarative or run-time? (Check at runtime)
      • Can the arrow function be new? So let’s talk about how new works.
  • TCP Three-way handshake
  • Are you supposed to know a lot about React? (I interrupt, not familiar with React principle, ask me Vue, later asked diff.)
  • What happens from the input URL to the page display? (I talked about DNS resolution for about 2 minutes, was called off, then continued to talk about HTML parsing, CSS parsing, composition layer, composition thread calling rasterization thread pool, browser process communication after bitmap generation, graphics card cache and display relationship, about 10-15 minutes)
    • Redraw and backflow understand?
      • How to optimize? (Said a batch operation, but forgot the others, he reminded me that DOM offline operation can also be used)
  • Do you know the direction of some of the fronts (talking about the Flutter, dart, read your team’s serverless article)
    • Have you read about WebAssembly? (No.)
    • Know about PWA? (I personally think it should be cold, then ask me how the PWA principle is? I don’t know much about Service workers.

Finally, the supervisor told me that the foundation is still very solid, the probability of passing is still very high, I hope to choose the Tao department team.

Taobao 2 face

March 17 (52min) taobao second face

  • Introduce your project (I talked about the technology stack, challenges and solutions)
  • How did you manage to get so much attention in a year and a half?
  • What do you think of your foundation? (JS is very solid, Vue turned over the source code, React slightly understand the principle)
  • What do you think React and Vue have in common?
  • Describe the browser rendering process.
  • Talk about the development of front-end technologies (from the slash-and-burn era, to jQ, Angular, React, vue, Gulp, Grunt, Rollup, WebPack, and then to the future, such as PWA, Cross-end, Serverless, Micro front, WebAssemblely, with my own understanding)
  • What else do you think the front end can do besides finish the page interaction? (First performance optimization, second data processing, and then engineering)
    • What do you think the engineering understanding is? (From the perspective of code, compilation, compression, specification, from the perspective of people, team collaboration, unified output standards)
  • Do you think you choose Ali Cloud or Taobao, what are the criteria you choose?
  • Is there anything else you want to ask me? (Asked some questions about the department involved in becoming a full-time employee)

In general, the interviewer did not ask what basic, to investigate the front-end thinking and some personal thinking, to tell me this aspect of the ability is good.

Later, the process chose Ali Cloud, and then we look at the part of Ali Cloud.

Ali cloud five rounds

Ali Cloud side

3.10 Night ali Cloud side:

  • Let’s talk about the HTTPS handshake process. (After a long and detailed talk, the interviewer knew I understood and stopped)
    • What’s the difference between HTTPS and HTTP caching? (meng)
  • How do you know the DOM API? (Not really)
    • The difference between Element and Node (pretend to think for a moment)
  • XSS attacks Cookie related fields (HttpOnly)
  • CSRF attack, explain the SameSite field of Cookie
    • The latest XXX feature in Chrome is how to defend against CSRF attacks (this is really unheard of)
  • What’s the difference between FETCH and XHR? Are not familiar with (fetch)
    • Ok, explain the CORS process for XHR (simple request, non-simple request, there you go)
  • Are there any good solutions to the React closure trap? (To tell you the truth, it is written on the resume, in fact, not deep understanding, only said one)
    • UseReducer can solve you know? (Really unclear at the time, mainly forgot the closure trap form scene, awkward)
  • In your brochure, would you please tell me the difference between the mNEmonic function of MEMos and the mnemonic function of JS? Anyway, said no.)
    • If you answer the question wrong in the middle of the scene, you will get a lower score. This question is still very good level)
  • What is the performance difference between WeakMap and Map? (The former is more GC friendly and maintains weak references)
    • Is there a difference in performance in the immediate execution function? (pause for a while, say strong and weak references will still have GC difference, no effect)
      • In other words, if the immediate execution function has a recursive function in it, is there any difference in performance? (Did not GET to the interviewer’s point ah, pass this question)
  • What is the difference between AMD and ESModule? ESModule: import, export, and export reference
    • So can you tell me what advantages ESModule has for Tree-shaking? (will do some compilation optimizations)
  • What does async await have to do with generator after compilation? (ask twice, still don’t know what to ask, direct said async await principle, he said you are too deep, ask not that, go over it)
  • Is there anything you want to ask me?

Rhetorical questions:

  1. How to solve React closure traps with useReducer? (Interviewer says again)
  2. Can you tell us what challenges you have encountered in the business you are doing and what solutions you have come up with? In the end, they also gave me some directions in the future, such as the container of the front end in the future, calling the service level for the construction of the middle platform page instead of writing each component, and understanding the concept of the security container of the back end. I am also recommended to take a look at the implementation of ant Financial’s micro front end framework. Deeply admire, opened the horizon, harvest a lot!

On the other hand, I didn’t give full play to my advantages. The questions I asked didn’t match with me, and I even didn’t understand some of the questions. Although I could see that the interviewer appreciated me, I personally felt that the situation was not optimistic. Hang up, hang up. I think hang up is normal.

Follow-up: In the afternoon of March 11th, I received a letter from my boss. He knew that the expert who met with me yesterday was recognized as the most skilled expert in the team. The evaluation from the interviewer was that although there were some problems, the overall performance was good, which was good among fresh graduates. Wait for the next round.

Ali cloud two face

3.19 The second meeting of Ali Yun at night (37min)

(PS: It’s been so long that I don’t feel nervous anymore.)

During the second interview, the supervisor asked me whether the interview was the first or the written test, because there were two procedures. I said interview first.

  • First, introduce yourself
  • Why do you want to do your open source project? Where does background data come from?
  • Any experience with NodeJS? (Say no decisively to avoid digging holes in the back)
  • What’s the difference between HTTP GET and POST requests? (I said 4 differences)
  • What about CSRF and XSS attacks? (said a lot, he said you talk too detailed, have you read the article recently, I said no)
  • Can you say something about HTTP caching? (Strong cache, negotiation cache, I’m talking about proxy, he said ok)
  • Do you know how the language standard of JS is made? (Really not familiar, go on to check yourself)
    • What is the latest grammar of ES that you have used? The newer the better
  • What do you know about Babel? Can you tell me what the stages stand for?
  • How is Vue’s reactive pair array handled? (Override array methods to manually dispatch updates)
    • Why does Object automatically dispatch updates?
  • What happens if I change the data that the current component depends on 10,000 times in a for loop? (When it comes to batch updates and nextTick, he says yes.)
  • If you were to design a project for PC, phone and tablet, what layout would you use? (First, VH, VW, and then rem adaptation with lib-Flexible library produced by Taobao, there is also a flex + PX adaptation)
  • What are the properties in CSS that start with @? (I said @media, @keyFrames, and later reminded me of @import, so I added that this is serial loading CSS)
  • Have you read about current trends in the front end, such as some new technical directions? (Said the opinion of PWA, why it is cold, flutter, electron, micro front, serverless)
  • Have you read about cloud computing? Can you talk about the direction and prospects of cloud computing? (No)
  • Do you have any interests?
  • What are your career plans? (said a lot, he smiled, said today to here, tomorrow written test)

The next day, the supervisor told me that I did not need the written test, and the written test was cancelled.

Ariyun on three sides

3.20 Three sides of Ali Yun (57min)

I talked a lot, but I talked very easily, there was no programming problem, and it was strongly related to my personal experience, so I didn’t sort out the problem.

There are clouds all around

3.24 Ali Yun Four sides (40min)

A cross surface that makes people shut down.

  • To introduce myself
  • Why the front end? (Said a lot, he asked me to sum it up in one sentence)
  • What are your career plans?
  • What challenges were encountered in the project?
  • Tell me what you know about front-end architecture and how to design an architecture solution (honestly, I can’t bear it, I haven’t studied it).
  • In a large project, how do you locate code with memory leaks? (No practice)
  • What’s the difference between last-Modified and Etag?
    • The difference between cache-control and last-Modified
  • Is the backend language more familiar with NodeJS or Java? (Java)
    • Talk about the difference between String, StringBuilder and StringBuffer
  • What are the cross-domain solutions?
  • React controlled and uncontrolled components

Ali cloud five side

3.26 Ali Cloud final surface (50min)

  • To introduce myself
  • What motivational things have you done in your community?
  • What data structures are you good at?
  • Did you compete in school?
  • What kind of environment do you want the company to be?
  • Why not invest in Tencent? (Ali face is very tired, autumn recruit to vote again)
  • Where do you want to go, Aliyun or Douyin?
  • Do you have any questions?

Personal experience sharing

Surface by share here, probably because the community is more active, before the interview push easily got the qualifications, and after a round of interviews with this part at the interviewer love experience, so all the way down and feel the difficulty is not large, is very smooth, at least for the moment all the interview didn’t hang up.

In my WeChat public number of front ternary classmate 】 【 can also see some students leave a message in the background, a lot of people want me to share some methods and experiences of the front end, before I am very resist, because I don’t feel this qualification, but now experience the test of this round of interviews, I think it is time to review and share a wave. It is mainly divided into two aspects. One is the study of front-end technology, and the other is some cases that need to be paid attention to during the interview.

Learning experience and experience

Personal experience

When I was a freshman, I studied mechanical and electrical engineering. Later, I transferred to the computer major of the school when I was a freshman, and began my career as a major student. It was probably in the second semester of my freshman year that I came across a set of JS videos in a place called One-man University. It felt good and I wanted to go deeper into this field. But later I found that the further I went, the more I needed some professional foundation of computer courses. Therefore, this step is an accident, but also a necessity.

In my sophomore year, I was under a lot of pressure from the courses in school, so I studied for a semester in a tepid way. In the middle of the semester, I had the idea of doing a full stack, so I signed up for a Python Web training course, but I did not do well in learning it, so I gave up directly. I decided to go back and make a solid foundation of the front end, I learned JS again, and then looked at JQuery. Studied the source code of the inner selectors, and then to learn Vue, of course, also follow the online tutorial to do some projects, such as MOC online Teacher Huang Yi’s Project and fried chicken music Web App, as well as Dell Lee’s Vue to where the network actual fight, step by step finish feeling on their actual fight ability to improve is very big, At least I can do a project on my own.

In the second semester of my sophomore year, I began to take over the first outsourcing project in my life, and also participated in the computer design competition, earning the first bucket of gold of more than 3,000, and also got the certificate of second prize in the Central South Division. All this to outsiders is actually pretty good experience, but for me, I have been able to feel a strong sense of crisis, because the project has been in a hurry, a lot of times of BMSC can come out the effect is the mentality to do, a lot of details and didn’t do so perfect in my imagination, and occasionally framework inside out some problems, But I didn’t have time to understand how it worked. I don’t think that’s what I want to pursue. This state of mind, say good point is called pursuit of the extreme, ugly point, is obsessive compulsive disorder.

Driven by this mentality, I immediately devoted myself to further study after completing outsourcing and competition. Read the advanced Programming in JavaScript again, study it again in ES6, watch the JavaScript video of Qomolumma Zhou Xiaotian, make relevant notes on CSDN (I don’t think it’s a blog), and learn the Webpack course in MOOCs, React introduction video, Running all the way, learning a lot.

It was at the end of the second semester of my sophomore year that I published my first post at Digg, marking the beginning of the blogging experience. To my surprise, my first blog post was picked up by the official account of the gold digger community. I was overjoyed. I felt so surprised that I was ready to keep writing, planning and producing new content.

Soon, after the end of sophomore year, summer vacation came. At this time, some friends have already gone out to look for an internship, but I know that THERE is still some gap between me and the offer, so I feel a bit of crisis. I used to ask myself: If I were to get an internship, what problems would I have?

  • First of all, the depth of the project is not enough.
  • Secondly, the computer foundation is not solid, the data structure and algorithm is not well mastered, the computer network is not basic.
  • Finally, some of the principles of the front-end technology are poorly understood, let alone the framework source code.

So, the summer before my junior year, I started preaching to my future internship. The first thing to do is to work on a project that satisfies you. It has to be sophisticated enough, but not for anyone. This project was done with React. At that time, the class component was used uniformly. Later, I tried the hooks feature, and found it was really delicious. This project was the precursor to my gold book project. When I put the code on Github, I got hundreds of stars within a few days, which made me very surprised. Before long, some classmates left comments in the issue area, thinking that it was a good exercise project, could you make a tutorial? Then I tried to put more value on the project, which I actually did, writing a little book and putting it in the community, and it went well. For details of the project, please click here.

About computer basis, I study in junior last semester spent a lot of energy, data structure and algorithm first learned lesson for network bobo from introductory to advanced teacher’s data structure, algorithm and data structure comprehensive promotion and interview this three courses play algorithm, consolidate the foundation of all, start with brush leetcode, I brush more than 100 algorithm problems in one semester. For the computer network, there was no time to learn, put this part of the plan in the winter vacation.

Finally, the in-depth study of front-end technology is divided into three directions, JS foundation, browser and framework.

On the one hand, it is the learning of JS. For me, IT is clear that I have learned JS for many times, but actually I forget it very quickly. I plan to re-read the Little Red Book, and then rebuild the complete knowledge system of JS. Then I started the creation of the JS Soul questions series blog, trying to systematically organize the knowledge of JS, but also must reach a certain depth, for me at that time was actually a considerable challenge. In the process of sorting out, I also forced myself to refer to a large number of materials and blogs, to be honest, learned a lot, more to my surprise, this series let me in the gold fire, help a lot of JS on the way to the front end.

In the browser, but before a lot of works are sciolistic, until a chance discovered a well-regarded geek time column, dedicated browser, patience to read, after feeling very big harvest, recommend you to have a good look at, solved before a lot of confusion about browser principle.

And then the front frame, force yourself to have finished the Vue source behind me, the reason is very simple, to the interview, but I didn’t think of is that I met the current interview source has asked to me is not deep, some original rational issues is very normal, but there is no doubt, read through the source code the indexes for evaluation of the interview is quite a bonus, And can let oneself stand in a higher height to deal with the interview, encounter relevant interview questions will be very calm. More importantly, after reading the source code, MY personal understanding of JS and SDK design and design pattern have been further deepened, which is not what I thought at that time, but also the wealth that I benefited from for a long time. Some people may ask you how to do it, about the source reading method, the topic is a little big, I will introduce it later.

In my junior year, I prepared such things and organized my blog. By the end of the semester, I had already published a small book with more than ten thousand fans.

Followed by the winter vacation, I put the data structure and algorithm to review again, TCP and HTTP to systematically learn again, at the same time to see some Chromium source code, review a wave of Vue source code, feel the heat almost began to send a resume, so cast Ali and bytedance, there is the above surface.

Hands-on experience sharing

Current share experience on these there might be some laundry list of feeling, but it was so I think that true enough, because for the front-end, impossible according to the learning path of a system, and then reach a very high level, the beautification of the through say it even I don’t believe myself, whose life is not such a chance to come over? Then you may ask, how can you learn the basics so solid, through these big factory interview?

I think there are two points, one is external factors, one is internal factors.

External aspect, I in the input some information at the same time, will join and scrutiny of their thinking, and use their own way to the output, into the blog, that allowed me to knowledge itself have more deep understanding, as well as after forget this part of knowledge, the revisit time can pick up soon, saved a lot to review time.

As for the internal aspect, I think self-drive is a relatively important factor, that is, the ability to drive their own learning. In fact, it is easy to say, but it is very difficult to do, because the temptation of the outside world is too much, and learning itself is out of the comfort zone, is a kind of anti-human activity, itself is uncomfortable, so many people are not willing to take the initiative to learn, this is completely understandable. So why do I have this strong drive?

Because of the sense of crisis, the sense of crisis brings fear.

Why do you say that?

Before listen to “get” APP teacher Liang Ning said, human nature is actually only two pain points: one is pleasure, one is fear. While pleasure can help people immerse themselves in something for 10,000 hours and become good at it, fear is an even greater motivator. A product that either makes the user feel good or helps him resist fear is not a good product. So in terms of personal growth, if you do something and you don’t find any pleasure in it, and you don’t have any fear, then you’re basically doing nothing in that area.

In other words, if something makes you do something really crazy, it either makes you feel good or it helps you resist fear.

For me, it’s the latter that really drives me. The sense of crisis allows me to dig out the real pain point and discover my fear, thus bringing a strong drive. If it’s just to learn something to show off, or just to conform to external expectations, the motivation can be there, but only temporarily. When you’re out of your comfort zone and in the face of numerous temptations, it’s your pain points that carry you forward.

I think understanding this point, than the so-called learning path, learning method is much more important. Most of the time it’s not a lack of learning materials, or a lack of effective learning methods, it’s just a lack of motivation and easy to slack off. Everyone is different, but I think it’s the most important thing for you to grow and find your real pain points.

Interview Experience sharing

Preparation stage

Before the interview, many people may feel anxious like me, feeling that they are not ready and want to review more things, but the more they review, the more they feel that they can not go out for the interview. This is a paradox. The reason is that there is no end to learning technology. At this point, we need to adjust our mindset and do two things:

  • Draw boundaries and systems of knowledge
  • Give yourself a deadline.

Preparation time is limited, so what we need to do is to use the limited time to achieve the most effective output, so try to do some review and consolidate and fill in the gaps, play to your strengths, rather than learning new skills for interviews, or digging into new areas. According to my current actual level, I have developed such an interview knowledge system:

In fact, I didn’t fully grasp some knowledge at that time, but I needed to go out for an interview, so I gave myself a deadline. Before March 10, I tried my best to prepare, and by the deadline, I should send out my resume no matter what. In this way, the rest of the interview series was logical, did not drag on too long, and the preparation was good.

In addition, about the front-end basic knowledge and computer foundation, I have done a systematic comb in the blog, the following to give you some of the output of the content, so that you can complete learning:

CSS article:

Analyze some classic CSS layout problems, for the front-end development + interview escort

Fun CSS3 effect challenge small summary

JS article:

(suggested collection) native JS soul of the question, I would like to ask you can catch a few? (on)

(recommended intensive reading) native JS soul of the question (middle), check whether they are really familiar with JavaScript?

(2.4W word) Native JS soul question (second), sprint 🚀 advance the last kilometer (with personal growth experience to share)

Browser:

(1.6w word) the browser soul ask, can you catch how many?

Computer Network

The TCP protocol is the soul of the question, strengthen your network underlying foundation

(Intensive reading recommended)HTTP Soul question, strengthen your knowledge of HTTP

Data structures and algorithms:

(1.8W word) How do front-end engineers systematically practice data structures and algorithms when moving forward with loads?

Front-end engineering scheme:

Implement a simple WebPack

Styled – Components: A new idea for the Separation of front-end components

Start from scratch and thoroughly understand server-side rendering.

Front-end project combat:

React Hooks and Immutable Data Streams

All the above are original, I hope to help you, at least I repeatedly read these before the interview, the efficiency is still very high.

Next comes the interview stage.

The interview process

It can be seen from the above interview that interviewers in different directions and at different levels have different preferences, so different strategies should be adopted for different interviewers. But I’d like to share some commonalities that can be applied to most interview scenarios to give you a competitive advantage. Of course, all interview strategies are based on your preparation, otherwise they are impossible.

Strategy 1: Prepare a killer card

The interviewer may meet five or six people in a day, or even a dozen. Have you ever wondered: What makes him or her more impressive?

There is a psychological effect called the peak-end effect, that is, in a limited activity, the perception of a strange thing is roughly determined by two time points: one is the peak point, one is the end point.

In terms of interview, I think it is also applicable. To be specific, the communication with the interviewer is actually the communication with a stranger. How to leave a deeper impression on him? Needed in the climactic point to show yourself, protect yourself at the end point, appropriate to the interviewer in the interview process some different answers and opinions with others, and make them feel, and at the end of time, you said actually more likely to be the interviewer remember, at this time due to interview is drawing to a close, you may not be so nervous at that time, this time need proper cautious, Don’t relax completely and avoid accidentally saying something that will hurt your situation.

In fact, I’d like to emphasize the former, how to bring the interview to a high point and make the interviewer feel amazing. In fact, this is not a simple thing, after all, can be amazing only a few, so if you can do this?

Come prepared with your best shot at the job interview. What is an ace in the hole? When the interviewer asks you a relevant question, you can be confident that you understand it better and answer it better than 90% of the interviewer. Take myself as an example, I prepared a killer and many, HTTPS encryption algorithm, Chromium process IPC principle, Fibonacci n number logn solution, browser rendering process, vUE compiler architecture, VUE two-way binding, quick row and handwritten V8 sort……

If all the other basics are OK, these killer pieces are your core competence in technology, which is what makes you irreplaceable compared to others. Of course, time is limited and it’s impossible to study every Angle in depth, but if you don’t prepare and memorize the same answers as everyone else, it’s hard to stand out from the crowd.

Strategy two: Hint

The interview process is all about feeling out the interviewer, asking questions, and giving him or her signals to explore your strengths.

Can actually have two time send some hints of signals, one is the introduction of the link, this link can show the interviewer gives you in-depth study before which a piece of technology, guidance he ask that way, the other one is the technical details of a question, can play appropriately, in response to most of the interviewer is willing to listen to you.

The last

Share so much for the time being, I hope everyone can get their own satisfactory offer in the spring recruitment.

Ps: Personal blog aggregation Github repository

If you want to get more information or contact The Group, you can follow my wechat official account, as follows: