The article was first published on a personal blog
A lot of people always complain that the interviewer asks some not commonly used knowledge points, such as algorithm ah, network (TCP) and so on, which is commonly said: interview builds the rocket, job turns the screw.
But have you ever wondered why this is true for the entire front end, or for most interviews, not just the front end, but for all positions? Will no one solve this problem?
I think, in fact, this is a reasonable behavior, not because it is reasonable, but because it should be so. Next, I will explain my opinion from two aspects.
First, test the mastery of professional knowledge of the solid degree
One of zhang xinxu’s ten questions is, “What is the standard for a solid foundation of front-end development?”
His explanation of “solid” seems to me to fit the question.
“Zha” can actually be understood as depth, you can imagine one with a needle, zha your skin, on a point of pressure, can make you miserable.
So how do you understand the depth of knowledge?
I still take front-end interview for example, such as test a quick sort, many people feel that there is what good test, usually not used, the engine bottom has written a good sort method, what order of magnitude with what sort bottom has also been implemented, there is no need to test ah.
But the interviewer isn’t really asking you how to write quicktype code. To be honest, in ten minutes, maybe half an hour, you can remember a quicktype code. But the real reason to look at quicksort might not just be to look at the code, but to look at the idea, the divide-and-conquer, the use of partitioning algorithms.
In addition, they might ask you, what is the time complexity of it, how to calculate it, and these questions are not going to test you on this algorithm, but on this algorithm to see if you know how to calculate the time complexity? Just to give you a sense of why quicksort is fast, and why divide-and-conquer merge sort is not so fast. And so on.
The question the interviewer is examining is just an application of various underlying ideas, through this example application to test the level of understanding of underlying ideas. So a lot of times the big company interview will be shallow to the depth of the question, until you don’t know.
Talk about “real” again, actually can be understood as full, inspect the breadth of knowledge.
Imagine if you would say that something was solid, that you were given a night’s worth of rice, and then you pressed it down, and then you put in some more rice, and then you would say a night’s worth of rice.
Therefore, the understanding of “solid” can be understood as full and complete.
How to show the breadth of your knowledge, which is real.
For example, you can study some knowledge that you don’t usually use, but you might use. For example, some simple algorithms and data structures, linked lists, TCP/IP protocol family in the network, functional programming, some HTML5 features (such as Web-compoennt) and so on.
You may be useless in the usual programming to, or the most front-end engineer will not use at ordinary times, but these are the basic skills are needed to know, such as the React in the source is to use some simple data structure, the linked list (Fiber tree is to use the chain table structure to save, is a single table, and delete) with circulation list. If you do not know the tree can be linked to the list, how to operate the list, then you may read the source is very problematic. There are some bit operations and so on, bit operations are not usually used, but FB engineers use it to solve practical problems.
Another example is web-Component, which is already a front-end componentalization standard proposed by W3C. There are also some big names in China who use Web-Component to realize some libraries, such as OMI from Tencent.
Address: github.com/Tencent/omi
So Uncle Wolf mentioned in “2019 Big Front-end Trends in Depth” that he might be the standard for the next generation of frameworks.
Our front end is changing fast, there are many new things, how not to keep up with The Times, learn more (mainly understand, not every new thing to go into depth, because you don’t have so much time, most of the time or to use the usual use of the place) some new things. React, Vue, Angular. These are all trends. They are data-driven, and jQuery is no longer the way to go.
section
Common knowledge points in the work, those are the most important, so everyone knows these, if you don’t know the point, others don’t know the things, these things are a little deeper than others, why should the interviewer want you? Maybe you are a double non (not 985, 211).
I think it is suitable for a law in any field, that is, “T” shape development, first make the major a little deeper, and then expand to both sides.
Two, drunk weng’s meaning is irrelevant
In addition, the interviewer may test you on soft skills, not just how well you complete the interview questions. Note that the easier the question, the harder it is (understand this sentence).
I take my own experience as an example, when I was doing xiaomi’s pen test questions (that is, when I sent the questions to you and finished them within two days, I sent them to him), there was a question about seeking the greatest common divisor.
A lot of people look at this problem and think it’s easy, just a few lines of code, and so did my competitors, and they wrote an algorithm.
But I think at that time, I feel the interviewer is to check the problem if you look at the code was a bit of trouble, so I just wrote a interface, interface provides can click on the Numbers, and input box, there are several calculation button, a result, users can click on the Numbers, or in the input box input Numbers to calculate the greatest common divisor, Also made some error prompts and so on.
It was like creating an app, an app that users could use, so I ended up getting hired because of that question.
The reason WHY I was admitted was that my boss told me after I got in, and I was surprised that it was because of this.
Therefore, I began to pay more attention to user experience and think more to make others more comfortable and convenient to use their own products.
The interviewer I expect
Disclaimer: I have never been an interviewer, so most of the above content is my thinking (guess), can also be said to use a reasonable explanation, to explain the current phenomenon.
This is what I expect an interviewer to do, or what I would do if I became an interviewer.
- As an interviewer, it is not to test the interviewee, but to try to find out what the interviewee is good at, and then to break the pot to see how deep the research is.
- In the inspection, first examine the breadth, then examine the depth, from the breadth of the question to extract good points, and then ask further.
A few tips
- The interviewer won’t dismiss you because you didn’t answer a certain question.
- Interviewers don’t like to cover everything on a resume and have a shallow grasp of everything.
- For common frameworks, at least know the core principles.
These were mentioned by the interviewers in our group during the discussion, and I hope they can help you.
I am taoweng, a thoughtful front-end ER, want to know more about the interview related, please pay attention to my public number: front-end Taoyuan