PK creative Spring Festival, I am participating in the “Spring Festival creative submission contest”, please see: Spring Festival creative submission Contest
preface
Small plant living for many years, this year the high-level personnel changes in the unit of (leaders went to entrepreneurship and manager), go out the whole procession of a pair of, also face all over Beijing’s major Internet companies, to learn skills while not jing, only got two offers, but finally know our small factory end of this term, with the front end of the giant gap? And what’s the difference between them and us?
Without further discussion, the report is as follows, which can be regarded as a direction guide to the future, but also a summary of their own learning! The Chinese New Year is coming soon, which is to draw a satisfactory full stop for my 2021!
About myself
This dregs 17 years of graduation, from the class, the lowest undergraduate course, four thousand start salary, starting point strange low! Now the college graduates are always starting at ten thousand
From the beginning of cut figure who will only HTML, CSS, rely on the Internet dividend into a senior code farmers, although five years against the three jump, with a half-decent salary, but still don’t know what you’re in a position, what its own technology in a level (because it is what many bosses of 25 k, after surface, surface of 20 k, I feel like I can’t answer half of them), and the direction of study is erratic.
So about two months ago, when the senior management of the unit changed, I started the interview learning method, while writing business, while correcting the direction of the interview
Say oneself interview study train of thought above all!
- 1. Start from small factories first, practice, until the interview probability is large enough to enter the second interview (this slag is about ten interviews, the first two are not good at the early stage, the later stage of the basic each into the second interview)
- 2, pay attention to the need to ask after each interview, the interviewer’s evaluation of you, but also to explain to the interviewer not for the interview results, simply to know their own shortcomings, and correct their own learning direction
- 3. Then precipitate for two weeks, frantically learn the missing knowledge points of small factories, and start the road to big factories (this residue has met Meituan, Jingdong, Byte, 58, Millet, Ali, Didi, etc.). Lasted about a month)
- 4, the difference between large and small factories asked some knowledge points, as well as the degree of refinement of knowledge points, summed up those who need their own long-term deliberate practice to achieve, those who need a short-term back of the eight, those are the necessary skills every company needs. Those are the pluses the interviewer sees.
A comparison between large and small factories
First of all, it is undeniable that small factories also have some very good people, for example, I met a small factory architect, very good, compiler principle play thief. We had a great conversation.
-
1. However, as far as I feel (or may be an illusion), the front end of the small factory is lacking in technical details. Colloquially speaking, that is to say, it is literal, although we usually express in the development time is relatively rough, for example, we usually express the context is generally called the variable declaration. This term although there is no wrong, but we need to know is that (the interview itself is a not say words of occasions), so this time you the extent of the technical details and expression, directly decided to you within the interviewer impression (after all, in addition to its own sample qualified, the interview to the interviewer’s feeling is also very important! That is, feel)
-
2, small factory people tend to believe in experience, large factory people tend to believe in the basics (programming ability, basic knowledge, etc.), when you interview small factory, you will find that your project experience is asked more, programming questions are basically not tested, the rest is just some BASIC API use, Principle and some shallow framework (teachers), and you go to companies interview you will find a consortium, what handwritten bind, primese, ke chemical and physical transformation, full throttle function, then the algorithm is also one of the most important ring, even the basic knowledge in a great mess in front of you, as long as you algorithm written out, It usually passes (byte is the trick)
-
3, to look down on life and death, admit the importance of luck, because we are ordinary people, not gods, we have to admit their own limitations, admit that their time is limited, admit that their energy is limited, there are always things we can’t, or there are always things we can and forget. If you fail the interview, it’s time to pick yourself up and move on. The interview is like an exam, but the good thing is that you can take it multiple times.
-
4, big factories look at the future potential, small factories look at the matching degree of technology, I feel in the interview, found that small factories will generally limit the technology stack, come to start work. If you love technology, you love messing around, and you are active in the community, then big factories love you!
-
5, giant is the true volume, small plant lines is also commonly, but there are volumes, each time the interview I in addition to ask evaluation, also asked the basic work time, all big companies, currently only 58 to what I said is generally as early as 10 8, the others are all 995 start, small plant is more casual, volume or less severe
The interview feeling
1. Interviewing is not the same thing as going to work. You need to know how it works when you go to work, and you need to know why it works when you go to interview.
2, in the industry volume today, want to get a high salary algorithm is really very important. When you go out for an interview, try to answer 100 questions
3, the source code is relatively not so important, understand the principle can, before the interview do not hold vue, React source code gnawing, think big factory will ask you source code, they generally ask you principle, rarely ask source details
4, programming ability both large and small factories are very important, some simple handwritten source code, such as handwritten bind, or know in mind.
5, uninstall the resume of the project must be summed up how to express, I ate the expression of the loss of the interview, the project is very awesome, the expression of a complete mess, when describing your project, try to describe from the engineering point of view, and business point of view, technical point of view, three points of view, so if not how to do, edit… (If you see more gentlemen, I will issue a video to say how to edit the interview, the text is not easy to express)
Dachang front end and we actually have a gap, do not myth them
1, in the interview process, from the beginning of the interview big factory palms sweaty, always feel big factory people are strong, in fact, later found that they are not strong in all aspects, for example, in jingdong about vUE source code, I argued with the interviewer, once thought I was wrong, come back to check he was wrong.
2. Some interviewers really interview for the sake of the interview. For example, I’ve been asked
500 tigers,1 sheep, a meadow. Both tigers and sheep can eat grass. Yes, the tiger in this question can eat grass. Many tigers are not allowed to eat sheep together. Only one tiger is allowed to eat one sheep. After eating the sheep, the tiger will become a sheep. So do tigers eat sheep? Tip: tigers are smart. Every tiger is smart. Test dynamic programming, who would have thought of that?
We can just drop the interview. We don’t deserve it
3, some companies the interviewer, it feels a bit like shi snobbery, a look at the small factory, attitude is always not so kind (of course, most of which are quite friendly), helping others is what they need to learn from our (small factory are good at the moment, I interview, special kind), everyone is mutual choice, I don’t need to put down
basis
As long as it is a technical interview, no matter which factory interview, the foundation is the top priority, is must be very strong, here I list my preparation and some questions asked, specific not to say each question, according to the classification of direction
CSS problems
CSS asks very few factories, so let’s list the more important ones again (I didn’t prepare this one, these two were asked).
- Grid and Flex + JS are used to sort CSS from top to bottom.
-
- 2. Mobile terminal adaptation
Browser dependent
- 1. V8 garbage collection
- 2, macro task micro task (this basic required test, some will also ask and node end difference [asked])
- 3, network protocol related (a series of processes after the browser enters the URL [asked])
- 4, DevTools related (how to detect performance, how to detect call stack [asked])
- 5. Browser cache (strong cache negotiated cache)
- 6. Same-origin policy
- 7. Browser layering and compositing mechanisms (# Why CSS animations are more efficient than JavaScript)
- Interpreters and compilers in browsers
- Threads and processes in the browser
- 10, How to do performance optimization in redraw rearrangement [asked]
Js related
- 1. Understand closures?
- 2. Is JavaScript’s scope chain understood? What about the prototype chain? [Asked]
- 3. What are the new es6 features?
- 4. Floating point calculation error (why 0.1+0.2 is not equal to 0.3)
- 5. What is the difference between async/await and promise?
- 6, Some understanding of this (e.g. the bind function and the arrow function, this points to)
- 7, different js specifications (ES6 module and CommonJS module what is the difference?) [Asked]
- What is the difference between null and undefined? Why are the types different?
The framework paper
Vue, React, angular are all written, so some are prepared, but since VUE is the most written, most of the questions are asked about VUE (all factories respect this section, and ask only the technical stack you are best at).
vue
- 1. How to understand MVVM[asked]
- 2. What is the responsive core API? [Asked]
- 3, Why can’t listen for array changes
- 4. Virtual DOM: Have you heard of the DIff algorithm?
- 5. What is the vue template finally compiled into? What is the final product of the render function
- 6. Understand the principle of VUE front-end routing? [Asked]
- Have you read the source code? (I will ask about the details in the source code later. It is recommended to look at the source code in general, or focus on the areas in the source code that are generally considered to be good implementations.)
- 8. Implement your own V-Model [Asked]
- Some new features of VUE3
react
React was embarrassed. It was served to the prepared one without asking
- 1. React communicates with the parent and child components
- 2, hooks closure pit
- 3. Why use immutable values for setState? Is setState synchronous or asynchronous
- React One-way data flow
- 5. Redux middleware
- 6. Higher-order components
- 7. Composite events
- 8. How is Fiber optimized for performance
- 9. The nature of JSX and some differences between vUE templates
- React related performance optimization
angular
Most people don’t know angular, so no one will ask questions about dependency injection, parent-child component transfer, etc., unless they are interviewing for a specific position
webpack
Webpack since need not say more, basic must test
- What’s the difference between Webpack and Vite
- 2. Differences between Module Chunk bundles
- 3. How does WebPack optimize performance? How can I speed up webPack building? [Have been asked]
- 4. Webpack, rollup, parcel? [Have been asked]
- 5. What is the webPack build process? [Have been asked]
- 6, Webpack how to configure a single page application? How to configure a multi-page application? What about vue and React apps?
- 7. Brief on webpack related toolchains [asked]
- 8, Lorder principle, plugin principle, have you written [asked]
- 9, Webpack hot update principle
- 10. Have you heard of Babel?
ts
Ts question I also have no preparation, also is less, most are a mouth, ask you whether the project used, probably a lot of people as a tool for him, is not so much (think if this slag can need not worry interview preparation, but still must learn his type derivation is so sweet, and usage of gymnastics, interesting).
node
I have not prepared node questions, but from my interview feeling, there are few questions, if there is no special job requirements, basically no one will ask
Network protocol
The network protocol questions are not asked by small factories, but by big factories, as follows:
- 1. Brief introduction of the following seven-layer network protocol [asked]
- 2. Differences between different versions of HTTP
- 3, why is HTTPS secure (actually let you give HTTPS process say)
- 4. The difference between GET and POST [asked]
- 5, HTTP status code, 302 and 301 difference?
- What are the radical fields of HTTP?
- 7. Differences between TCP and UDP
- 8. Why three handshakes and four waves? [Asked],
Network security
I prepared this before the interview, but I was not asked about it. In fact, I had to recite some CSRF, XSS and man-in-the-middle attack without repeating it. Many people didn’t go into it deeply, and IN the process of preparation, I actually found a lot of wisdom of my predecessors (this is called surprise). For example, the emergence of token is to solve the problem of CSRF attack. The development history of front-end authentication is actually very interesting to study, but few people are interested in settling down to study in a utilitarian society.
Programming topics
The programming part is not specially prepared, this thing can not be written by reciting the eight essay, I am relying on these years intentionally or unintentionally brush 300 strength buckle, to cope with the interview, here is the value of the list of tested topics, before the start to share some blood and tears history
The programming on pit
- 1. Although I have brushed many questions intermittently, my memory is limited and I will forget them after a period of time, so that I cannot write many routine questions after brushing them (I must brush each question at least five times to ensure my feel).
- 2. If you are not able to brush the questions, you will write them out according to the solution of the questions, but the implementation details are not carefully studied. As a result, although you have a correct idea in on-site coding, you cannot get the right answer, which will greatly reduce the score of the interviewer (I suffered too much loss in this area, and every question must pay attention to details).
- 3, recommend according to the type of brush, so that you can learn from one example and master the set (face to face by brush, resulting in the same type of problem, change a form is cool)
The interview questions
First of all, programming questions are divided into two types: 1, programming basics 2, algorithm
Programming based
It’s all the same old stuff, like handwritten bind, call, apply, handwritten promise, handwritten anti-shaking throttling, function keratinization, deep copy or implementing a simple method in LoDash, implementing new, intercepting address bar parameters as key-value pairs, etc. That’s pretty much it
The difficulty is that many of his implementations are clever and require you to understand them thoroughly. You can’t figure them out with your normal thinking, but fortunately, there are not many of them
Algorithm problem
This piece of trouble, force buckle on thousands of lines, wide range, difficult, need to bet, we do not know what the interviewer will test, can only rely on the topic, and face to improve the probability of making, of course, the most important is persistent brush, and each topic brush more than five times, there is no shortcut at all. This slag algorithm also pull kua is not good, not to teach a fish to swim, in this list of questions I was asked, for the follow-up small partner reference
- 1. LRU Cache (Meituan)
- 2. Valid parentheses (meituan)
- 3. The nearest common ancestor of binary trees (Meituan)
- 4. Repeated substrings (Meituan)
- The KTH largest element in the array
- Merge two ordered arrays (bytes)
- 7. Circular list (bytes)
- 8. Sum of two numbers (bytes)
- 9. Implement version number comparison (bytes)
- 10. ChainAsync – Chain calls to asynchronous functions (bytes)
- 11. Spiral matrix (bytes)
- 12. Full Array (JD)
- 13. Climb the stairs (JD)
- 14. Implement a stack and its pop, push, etc. (JD)
- 15. Palindrome number (Jingdong)
- 16, the largest string without repeating characters (millet)
- 17, Switch between Tree and array (58)
- 17. The random implementation returns an array of integers with length num in the range [min, Max].
- 17. Intersection of two arrays (didi)
That’s all I can remember, and the rest is what I said about basic programming and what I didn’t remember.
Open question
In my experience with interviews, basic questions and algorithmic questions determine whether he wants you or not, but open questions determine your altitude (i.e. how much he rates you and offers you).
For example, if you write a component library, the interviewer will rate you differently when communicating with one person, ten people, or a hundred people, and the person who wrote the component library may not be good at fundamentals and programming. However, if you can answer some of the implementation details, how the performance optimization is done, how the business problem is solved, how much efficiency is improved, then you can probably get a high salary, and that’s the benefit of being able to answer the open question well.
In fact, many people have more or less engaged in challenging projects, but every time to express, always hesitant, leading to the interview although passed, but failed to get a high salary and high grade. What he doesn’t know is that advanced presentation is also a very important skill, which will make the interviewer think better of you, but only if you have real skills
At this point, we all understand that we want that high salary, so it is necessary to express the senior. In fact, it is also very simple, the main idea is how not to say how to people, to Ali flavor (empowerment, closed loop…) All use (now know why ali’s salary is not low), next, you need to find some difficulties in the project, and then deliberately practice (oneself say several times against the wall), to reach the point which can make perfect.
For example, if you’re doing Web IM, which is basically a chat system that uses WS to deliver message content, it doesn’t have much complexity in itself, but in order for your project to have some meat, you need to go to the high end (note: you really need to know the basics of these things).
- 1, virtual scrolling (in fact, the current chat box only shows a few pieces of content at a time, other dynamic loading)
- 2. Merge ACK, merge render, confirm message (abbreviate proper names instead)
- 3, heartbeat detection (actually prevent disconnection)
- 4, seqId and msgId are used to sort messages with high throughput.
Here are some of the questions Ben was asked:
- 1. What are you studying recently?
- 2. What is the most challenging thing you have ever done?
- 3. What challenges did you encounter during the project?
- 4. What performance optimizations did you make for the project?
- 5. How do you solve a specific Spring Festival activity problem?
- 6. What would you do if your project needed to empower other projects?
- 7. Have you ever done something rewarding in your work?
- 8. Talk about my experience in architecture design
- 9. What are your strengths?
Above is asked during an interview questions, there are two or three prepared before the interview, the rest of the answer is a mess, or to be talented, projects have certain thinking in what they do, but how high-end how to don’t change this truth, hope after the comrades had certain thinking, to beautify their expression, In order to get a high salary, this dregs is also a short board, so that only two offers (several are hanged on three sides), it is not to teach fish to suck eggs, write down the problem we can prepare ourselves, just follow two logic:
- 1. High-end road
- Real talent and real learning
The last
Due to the disadvantage of record of formal schooling, qualification of mediocrity, this time to give up current year-end job-hopping from the point of view of career development is the very, also paid the price, as reckless, though didn’t get the right offer at the time, but less volume profile within a few minutes, not know is not a good choice, from the current working environment, can come to the conclusion: is a blessing not a curse.
But then again, career is very long, how to calculate the specific gains and losses and understand? Work regardless of right and wrong, only the heart want to do on the line!
The hiring
58 third line Internet unit (commonly known as pension factory), coordinate Beijing, complete infrastructure, working atmosphere in place, leadership in place, gentle posture (compared with other factories, but still have a little volume) recruitment group (core business), salary big factory treatment, 15 salary, M1MAC, interested please contact: yangyongsen1994