background
I background slag, late into the line, stable in a company for three years, from a front-end white paper to now graffiti, has become a prototype. At the end of 2020, I left because I was deeply aware of how lame I was and wanted to focus on spending some time improving myself. After a bit of adjustment, I reloaded. Due to the limited time before the festival, only cast a few, of course, are looking for someone to push. It was Ali who finally got a better offer. Here I would like to share my interview experience with you.
Ali four rounds of technology + one round of HR
One side (60 min)
-
Self-introduction mainly focuses on the following points: personal information, recent company responsibilities and businesses involved, main technology stack, technology I am good at, project introduction (STAR: project background, task, your work content, project highlights, what you have achieved and learned as a result), what you have been doing recently, conclusion.
-
React vs. VUE: React vs. VUE: React vs. VUE React Fiber (vuE2, VUe3, React 16); React Fiber (VUE2, VUe3, React fiber); react Fiber (VUE2, VUE3, React Fiber); Vue the difference between Proxy and Object.defineProperty; Batch update of both, routing differences, common optimization methods, how to carry out data communication, talk about some fresh content: what features of the newly released VUE3, the final summary, talk about the current ecology of both……
-
The performance optimization of the project mainly focuses on several points: the performance optimization of the project technology stack, for example, react can be used to explain some methods to avoid repeated rendering, for example, electron can be closer to the original; Optimized for browser (you need to understand the principles of browser, such as cache/storage, proxy, SSR, etc., optimized for the work content of rendering engine, such as parsing CSS parsing will affect DOM rendering, synthesis optimization to reduce backflow redraw, Web worker, Event Loop, etc.); Optimizations provided by packaging tools, specifically Webpack; Optimize for specific pages, such as what should be done on the home page, the latest indicators on the home page; Finally, I will talk about the application scenarios, the methods used in my project, and the performance selection for medium projects and large projects. PS: If I talk about performance optimization seriously, I will not get off for two or three hours, because there is no end to performance optimization, and I only think about these in the interview…
-
Do you know our products? I googled the team’s business project in advance and read some articles about similar products before. Based on my own project experience, I said a few words of understanding.
-
What do you want to ask? I asked about the performance, learned about the work content of some team projects, the background of the project recruitment, and what to do to prepare for the follow-up interview. One side did not encounter handwritten questions, are very basic questions, the overall relatively easy.
Second interview (60 min)
At 9:30 in the evening, the interviewer should have just finished the interview and come up to ask the business directly. The whole business…… Details of the permissions page:
- How to design permissions for each module and button;
- How to design different roles and regions?
- Add a header and control the order in which it is displayed so that it is consistent across browsers. Name all the options, think of any free play…
- Is the size of localStorage the same in all browsers and mobile browsers?
Other:
- This paragraph is for my resume, skip over…
- Continue to talk about Ali’s products, after simple use, please put forward several areas that can be optimized?
- Without revealing anything, let you predict the next direction of the product, if you are, which direction you would like to go, and why you should do it, tell me what you are good at…
- Formally discuss the product, what everyone is doing, how the team works, announce the direction of the next iteration, target audience, goals…
- The usual small talk. Bye.
Episode: There were two sudden suspensions in the middle. I felt like a roller coaster, sliding from a high altitude to a low valley, and my heart was full of a lovely and beautiful CCTV reporter.
Three sides (60 min)
This side is the written test, haha, I reviewed a lot of handwritten questions, the result is completely diverged from the three questions, there is no intersection, EMMM…… Fortunately, it is not difficult… Question 1:
/** * 1. Calculate the intersection of multiple intervals * the interval is represented by an array of numbers of length 2, e.g. [2, 5] represents the interval 2 to 5 (including 2 and 5); * The interval does not limit the direction, for example, [5, 2] is equivalent to [2, 5]; Intersection([5, 2], [4, 9], [3, 6]);} getIntersection([5, 2], [3, 6]); // [4, 5] * getIntersection([1, 7], [8, 9]); // null */Copy the code
Topic 2:
/** * 2. If you want to count the total number of element nodes, the maximum nesting depth of element nodes, and the maximum number of child elements in the current page when the user closes the page, you need to calculate the total number of element nodes, the maximum nesting depth of element nodes, and the maximum number of child elements. Use JS in conjunction with native DOM apis (regardless of older browsers and compatibility with modern browsers, you can use the latest features of any browser; Forget shadow DOM). For example, after running in the following page: * / < HTML > < head > < / head > < body > < div > < span > f < / span > < span > o < / span > < span > o < / span > < / div > < / body > < / HTML > / / output: { totalElementsCount: 7, maxDOMTreeDepth: 4, maxChildrenCount: 3 }Copy the code
Question 3:
/* const fn1 = (const fn1 = (... args)=>console.log('I want sleep1', ... args) const fn2 = (... args)=>console.log('I want sleep2', ... args) const event = new Events(); event.on('sleep', fn1, 1, 2, 3); event.on('sleep', fn2, 1, 2, 3); event.fire('sleep', 4, 5, 6); // I want sleep1 1 2 3 4 5 6 // I want sleep2 1 2 3 4 5 6 event.off('sleep', fn1); event.once('sleep', ()=>console.log('I want sleep)); event.fire('sleep'); * /Copy the code
Four operations (35 min)
Weekend, people sleepwalking, just off the aircraft carrier, Lingling received a phone call, people or paste……
- Cross-end principle? Taro, Uni-app, and the architecture of Flutter, React Native, and applets are mentioned in detail.
- In what scenarios can dynamic forms be used? I gave seven or eight examples.
- Mobile adaptation related issues, application scenarios.
- The business discussion of our company, whether we know about competitive products and so on, will be skipped here.
Hr five sides (60 min)
- Do you know the competing products of your project? The way
- What are the advantages and advantages of your project compared with competing products?
- What do you do after work? It’s all about your past experience. It’s too detailed for comfort.
- If you have a disagreement with your colleague, how will you resolve it
- Now for our business, there is an urgent need to add a new module location. How will you design it? How to display the data…
- Yes, HR also asks technology-related questions.
The overall feeling
On the whole, there was no feeling of tension, and it was normal. From the beginning of high psychological expectations, it slowly fell back… Because of my limited level, I didn’t get a high salary in the end.
Personal Experience sharing
This should be a reserved program for all aspects of the book, I also leave notes here. It is mainly divided into two aspects, one is the study of front-end technology, the other is the points that need to pay attention to in the interview.
Preparation stage
-
Look at the source code, sort out all the horizontal comparison between Vue and React framework, including rendering principle, virtual DOM, DIff, Patch, Fiber, batch update, handwriting response, framework used mode, design ideas, performance optimization, related ecological technologies, etc.
-
Webpack principle, hot update principle, dynamic loading principle, common plugins, loader, common optimization, how to package, how to divide chunk, how to write a plugins, life cycle, microkernel source code and other content, as well as the use of rollup, gulp, application scenarios. (I remember one of the examiners said to me, “You are very clear about the whole research and development process, but they are not in-depth. For example, how to judge the basis of a Webpack package and subcontract? Emmmm, I can. You don’t ask me!
-
Cross-end framework research, engineering comb, the pit of the technology stack used, some practice of the mobile terminal, additional preparation of the project recopy during the interview, competitive product survey, the data of the other party’s products, test series, and a lot of such as micro front-end, medium, serverless, visualization, Wasm, etc., are not examples.
-
In addition, I also read a lot of interviews and technical articles.
I have made a summary of the interview questions I have read, and there are 280 pages of PDF, which I share with you for free. It is a kind of gratitude and feedback for friends in need【 Click on me 】Get it for free.
Click here in blue page 280 “front-end school recruitment interview real questions analysis” to see the details.
Master the above content, we should be a little breadth of knowledge can calmly deal with the front of the technical side, of course, this is not just a few months can be achieved, to the accumulation of time, those who are senior cattle in a year is in the university or even earlier began to accumulate, this pass can not escape.
At this point, “technical side” this tiger should be able to play half dead, direct stem is impossible, the above knowledge for school recruitment may be enough, but the social recruitment may not be used, ha ha.
Then is the focus of the recruitment: business, how to say, is to think more and sum up, in-depth thinking, for each problem must have in-depth thinking, otherwise it is difficult to enter a big company, depth to have a high in order to get good results in the interview.
It is difficult to pick out the highlights of your project, the highlights that are recognized by others, and you can only hope for more. This is also my weakness, and I was also picky at that time. This is the biggest obstacle in my job search.
The interview process
A lot of books tell you to think before you answer a question, in order to organize the language, but sometimes, when you know better, you will skip key information in a nervous situation, leaving people confused. To achieve: “think clearly, say clearly, know what to say, how to say”, or a little difficult, related to the usual bit by bit accumulation, this aspect I have provided a little direction. All that’s left is to do your job well during the interview. There’s no good way to do it. Here’s my advice:
- Think before you answer the question. It’s not guaranteed to work, but it should be done.
- Multiple times, refer to different companies, as long as you are not tired.
- When you are interviewing for a company, try to guess the general scope of the business that will be asked by the interviewer based on the previous interview, or ask the interviewer to prepare in advance. General questions will be asked: 1 the project on your resume, 2 the well-known products of the other department, 3 the title on jd recruitment.
- Make sure you don’t end up with the same questions.
- Increase the breadth of knowledge, can lead to other questions, examiners are also willing to listen to.
- Pick a good time for an interview, like me, 10 in the morning, my brain is so bright, I speak with poise and magnetism… After 7 o ‘clock in the evening, will inexplicable tension, voice decibels raise a few points slightly hoarse, this really varies from person to person. Sometimes being calm is not always a good thing. Being nervous will give you the chance to come up with a witty remark or idea, which can also be messed up.
- Find a few ways to quickly refocus your energy, which you can use in the early days of basic study.
- If you’re good enough, hint and direct the interviewer to ask about what you’re good at, and don’t be led by the nose.
Finally, pray and burn incense for good luck. The difference between man and man lies in the difference between cognition and thinking. If you do not have a qualitative change in thinking, it is better to ask for good luck. Without a good luck, the above suggestions may not work, after all, social recruitment interview content itself is unstable, some focus on technology, some focus on algorithms, some focus on business, some focus on education, some focus on eye edge…
How to keep learning?
This is a patch, so I’ll just give you some advice:
- If you play games, give them up or quit for a while until you find a good job.
- Find your pain points.
- Study in segments and make a plan that fits the cycle. Don’t push yourself or the pressure will break you.
- Get some chicken soup, or find something you don’t have but crave.
- In business, read more books and summarize and accumulate some ways of thinking.
Finally the soul asks:
- Is it your dream to enter a big factory? It’s a small price to pay, you know.
- Are you a wonder in a million? If not, it’s normal to fail a few times. We’re all human. Maybe we just don’t match.
The last
This is the end of the article, my level is limited, I do not know how many children can save this book, I believe that many people like me will have a dream into the factory. Spring recruitment is coming, I hope everyone can get their own satisfactory offer in the spring recruitment. And finally, if you can see all of you here, give it a thumbs up.