The interview is divided into three parts
- Technical interview: ask technical questions.
- Interview of person in charge: examine comprehensive ability. For example: project control ability, project depth, project architecture, business, etc.
- HR interview: focus on personality, communication, potential, etc.
Each round of interview is about an hour.
Knowledge points of each round of interview
one side:
This paper mainly studies the basic knowledge.
- Page layout
- CSS box model, DOM event
- HTTP protocol, prototype chain
- Object oriented, communication
- Front end security, algorithm
Two sides:
- Rendering mechanism
- JS operation mechanism
- Page performance
- Error monitoring
Three sides:
No longer focus on technology.
- Business capability
- Teamwork ability
Final surface:
- Professional competitiveness
- Career planning
Successful interview needs: skills, interview skills, etc.
The level of school recruitment and social recruitment
School recruitment:
- Knowledge: 40%
- Ability: 59%
- Experience: 1%
Social recruitment:
- Knowledge: 30%. For example, the degree of understanding of the agreement and business.
- Capacity: 50%. For example, the abstract ability of architecture, business, project control ability.
- Experience: 20%. The embodiment of the project.
The above is for reference only.
Interview preparation
Interview preparation includes the following four parts:
- Analysis of job description (JD)
- Business analysis
- Technology stack preparation
- introduce oneself to
Each company has a mature technology stack. For example, in building tools, baidu uses fis3 and meituan uses gulp.
Which company do you want to meet? You need to see the technology stack required by the other party first.
The above four parts are described in detail.
1、 Analysis of (JD)
introduce
Concept:
- Job description: focus on job responsibilities.
- Job requirements: the requirement is the ability to work. It’s usually very detailed.
PS: the front-end knowledge is huge. It is impossible to prepare all the contents, but it should be close to the “job requirements”.
The purpose of job description analysis (JD) is to:
- Quickly identify whether the position is what you like and want.
- Whether the current skills can meet the requirements of the position. Short term preparation is competent.
For example: job description of jd.com web front end
As follows:
Job description:
(1) During the interview, we will also considerPC terminal and mobile terminal
There are two parts.
(2)App H5 development
It has two meanings
- Hybrid technology stack.
- Pure H5 development. It has nothing to do with native development, such as activities and topics.
(3)Debug data interface
Learn how to simulate data.
(4)Establishment of front end component library
: demanding but very important. This is reflected in:
- The basic skills should be solid, and the understanding of native JS and CSS should be in place.
- Do you have any previous project experience in front-end component library
- Have you read through other UI component libraries.
(5)Optimization and reconstruction
It’s more difficult than the fourth one.
PS: the first three are basic knowledge, and the fourth and fifth are advanced knowledge.
Requirements:
(1)More than 3 years working experience
Don’t be too serious about years of work.Proficient in H5 features
This shows that the company attaches great importance to mobile terminals. Understanding H5Latest specifications
Your company wants me to pursue new technology, such asES6
And so on.
(2) Ask us toobject-oriented
Part of it is well understood. Component programming is also inseparable from object-oriented.
(3) It embodies several points
Familiar with web standards
: be familiar with the latest standards.Separation of performance and data
: MVC framework.Semantization
Don’t neglect this word. You don’t use div for everything.practical experience
: what problems have you encountered in the process of framework development? If you have no practical experience, you should also prepare a few questions in advance.
(4) Here are some points
Front end architecture analysis and Design
: it shows that this position is not facing the junior position. Because most of the people who work for one or two years areDo business development, missingSystem architecture capability。
We need to prepare a project architecture (such as the company’s existing projects) to reorganize, including: directory structure design, reusability design, modular design, automatic testing, and what is the online flow.
Easy to read, easy to maintain code
Interview process will let you write code, to reflect. Requirements: the function of each function should be single and abstract. In line with these two principles, it basically meets the requirements of “easy to read and easy to maintain”.High quality and efficient code
Not ready for a short time.
(5)User usability, user experience, user research
: it’s not about technology, it’s about the candidate’s understanding of the product experience. It’s not just about function.
(6)Strong interest
And so on, is a requirement of the company’s corporate culture. Go to GitHub more to see what new technologies are used in other people’s projects, and read blogs more. Unable to prepare in a short time.
(7) UnderstandingSass
andLess
This is the basic skill.
(8)be familiar withWeb building tools
: beginners recommend learning GLUP, not grunt. Of course, you knowThe difference between GLUP and grunt。
PS: understanding, familiarity and mastery are different.
(9) It can be ignored for the time being. If there is no requirement in the job descriptionNode.js
And you only know a little bitNode.js
It’s not recommended that you put it in the interviewNode.js
It’s reflected. Otherwise, it’s digging a hole for yourself.
2、 Business analysis
CSS3 animation is the key preparation content.
JQuery needs to prepare event delegation, selector, etc.
ES6 syntax: import, export, etc.
Through a simple analysis of the source code, we initially know the following points of the website:
- jQuery
- Vue framework
- ES6
- Webpack packaging tool
3、 Front end technology stack preparation
In the figure above, the left side is the front-end technology core, and the right side is the front-end engineering.
left: (front end technology core)
- JQuery: pay attention to the source code. When you look at the source code, you need to look at the following: core architecture, event delegation, plug-in mechanism, and compatibility.
- Three frameworks: MVVM framework, one or two can be prepared, or one can be prepared carefully. The interview will be very detailed. For example, interviewers often ask about the source code of Vue and react. Suggestions to find online source analysis of the article.
- Node.js : the running environment of the server. If you don’t have relevant project experience, try not to mention it.
- JavaScript Foundation: sometimes the framework is very virtual; mastering the JavaScript foundation is the key to wandering the world and galloping thousands of miles.
right: (front end Engineering)
- NPM, yarn: package management tools. NPM common commands, NPM scripts how to use.
- Webpack: module packaging.
- Gulp, grunt: build tools.
- Sass, less: CSS preprocessor.
- Babel: ES6 to Es5
4、 Self introduction
Interview questions, to a large extent, depend on your resume and self introduction.
resume
The four most important information in a resume:
- Basic information: name, age, mobile phone, email address, native place.
- Education: from large to small. Master’s degree, bachelor’s degree.
- Work experience: time, company, position, responsibility, technology stackachievement. Performance is something most people ignore.
- Open source projects, GitHub, notes.
Self evaluation can not be written.
The performance of the project should include:Technical benefitsandPerformance gains。
Self statement
1、Grasp the communication direction of the interview.
If the project is mentioned in the presentation, the interviewer may ask:
- What projects are they responsible for and what are they doing
- What is the combination point with the front end? What’s your role? What are the responsibilities in the project?
- What’s your score in the project?
If you say you’re a projectperson in charge
, will be asked:
- How is the project allocated? How many people are involved?
- What is your role as the person in charge? Project management or technology management?
- How to solve the technical difficulties?
Asking questions
If you come across something that won’t happen when you go deep into the problem, don’t say “I don’t know.”. Suggested answer:
- I have no experience in this field, can IGive me directions?
- Do you have any suggestions or references? I want to understand this thing.
Finally, give some advice to the fresh graduates
Looking for a job after graduation is not all about technology
When I just graduated, I would think that looking for a job only depends on technology. After all, we are technical posts.
But now I feel that after chatting with other small partners, I find that the proportion of technology sometimes is not as high as I think.
Because in fact, within 1-2 years after graduation, we are not particularly able to widen the gap, and the difference in everyone’s level is not particularly big.
At this time, some other qualities may be more important, such as your communication skills, your personality, and whether you are down-to-earth.
At the same time, luck and fate are also very important in job hunting. For example, whether the position at that time is in urgent need or not, if it is a new department or someone just leaves the company and needs to fill the position, the requirements may be slightly reduced (absolutely not too much).
So it’s best to find team members to push in, so that we can have a better understanding of the situation of the team.
But I think that after three years, the gap of technical level will be bigger and bigger, and it will be more and more difficult to shorten the gap.
Just graduated, try to go to a big company
In fact, when you go to a university and choose a famous school or a general school, some people say that they don’t want to be the screw of a big company, they can ask if they can enter a big company first, and don’t start to get sour before they enter.
Having the ability to go and choosing not to go and not to go are two concepts.
From the experience of yourself and the people around you, what you can learn from a large company is better than that of a small company in all aspects (the small company here does not represent some small and excellent companies).
In terms of personal experience, not everyone in a big company is a screw, doing repetitive work, because you have a lot of departments to connect with, and you need to work with a variety of front-end, back-end, product, design, QA Contact, everyone’s habits are not the same, will encounter cross sectoral cooperation, different departments of the technology stack may be different, so, you contact things are diverse;
On the contrary, the front-end, back-end, design and QA contacted by small companies are basically fixed, and there is basically no need for cross department cooperation. Moreover, the technology stack is relatively fixed, and you will not change if you use a set of technology stacks, so your vision of technology improvement may be a little narrower.
And the business complexity and the number of users of large companies are also what small companies cannot provide.
To be honest, it’s very rewarding to have work experience in a well-known Internet company in your resume. Basically, you can have an interview qualification, because it reduces the cost to some extent, because since you can go to a well-known Internet company, you must have an advantage.
Don’t just know API, understand its principle
Our boss often said to us, “don’t just know something about API”. Now a phenomenon on the front end is that many people feel that they have mastered some knowledge when they use some API.
We should pay attention to some basic knowledge and some principles, which are the necessary skills for long-term development.
For example, when asked on the electric surface: “what is promise in one sentence”, many people answered the usage of promise.
Looking for a job is a two-way selection process, and a good team is very important
Looking for a job is really a two-way choice process. It’s not only the company’s choice of you, but also your choice of the company. If you have the ability, you’d better find a good team and do the business you like, at least not too disgusted.
In fact, you can basically judge the level of the team from the interviewer. My personal opinion is that if you are still in the growth stage, if you can answer all the questions you ask during the interview, you should carefully consider the job, and the growth space may be smaller.
Reduce the frequency of job hopping
On the frequency of job hopping, both technical leaders and HR are considered.
Because a few years ago, I felt that the most convenient way to raise my salary was job hopping. The salary increase would be relatively high, and waiting for a raise in a company was relatively slow.
However, if you change jobs too frequently, it’s actually disadvantageous. I think that once a year, the frequency is a little high.
Jingdong also has a clear requirement for this. One vote veto system and the May 2nd principle (within five years at most two companies)
About education background
Now the threshold of many companies are undergraduate related professional graduation, and the requirements will be higher and higher in the future.
Every company has different requirements.
Be sure to brush more questions before the interview
We must brush the questions, brush the questions, brush the questions, and say important things three times. Pay more attention to the learning of the underlying principles and concepts, learn more about the underlying knowledge, more principle knowledge, are to improve your ability to solve problems.
Being a programmer and a front-end engineer is really a career where learning will pay off. You don’t see your height or education. As long as your skills reach the required level, you can get the corresponding return.
Learning has never been achieved overnight, and it is always persevering. As the saying goes, it is never too old to learn. Only those who really know how to learn will not be eliminated by the current of this era.