First, introduce yourself.
Generally speaking, the first step in an interview with a big factory is to introduce yourself, and the interviewer will ask you to introduce yourself briefly.
Students who have no experience in interviews with big factories may be stopped and stutter about what is written on their resumes. This is of course wrong, because the interviewer will definitely look at your resume before calling you or interviewing you, so it is totally meaningless to just repeat the contents of your resume.
This question is not an exam and there is no standard answer, so I can only tell you a better answer with my personal understanding.
This self-introduction can actually be understood as the keynote of the whole interview. You need to show some of your characteristics, especially those that are inconvenient to write or difficult to describe in your resume. For example, you can write a lot of project experience and academic background on your resume, but generally speaking, you won't brag about your learning ability or perseverance. But you can introduce yourself, and then combine these characteristics to simply mention some items or experiences in your resume, just like writing an argumentative paper, which has arguments and arguments.
For example, if I go for an interview, I will say that I am a strong learner and know a little about engineering and algorithms. When I just graduated, I mistakenly did a year of back-end development. Later, I switched to the algorithm through self-study. After that, how to introduce the project and results and show your ability. It is much better to have a certain narrative, rather than a dry and straightforward narrative.
I suggest that you can write a simple draft on a piece of paper before the interview, and be careful not to be too long, preferably about one minute.
Second, whiteboard programming
The general self-introduction link is followed by the whiteboard programming link, which will let you do an algorithm problem on the whiteboard or notepad.
Generally speaking, there will be no particularly difficult programming questions during the interview. Unless it is a big North American company like FLAG, it is generally not too difficult for domestic companies to ask questions. Let me list the topics I personally encountered in whiteboard programming, one is naked merge sorting, the other is the longest non-descending subsequence, and the other is LRU. Generally speaking, the most difficult is the longest non-descending subsequence, which is almost equivalent to LeetCode Hard+.
In addition to whiteboard programming, there are some algorithmic problems, that is, you don't need to write code, you just need to give ideas. There are some difficult problems, such as the variation of the Tower of Hanoi and the explanation of KMP principle, as well as some simple problems of probability calculation and dynamic programming.
It is not easy for non-acmer, but these questions are made more difficult by the interviewer because I have acm experience. Ordinary interviews should be easier. So in general, the level that LeetCode Medium can make stably is almost enough.
Of course, this link is just a problem, not the most important. Code style is as important as specification. For example, use English and hump names instead of pinyin or variable names such as aa and bb. In addition, whiteboard programming will inevitably have some bugs or format errors because there is no IDE prompt, but it should be avoided as much as possible. These also need to be prepared in advance, otherwise all kinds of bugs written on a whiteboard will obviously deduct a lot of points.
Third, the basic investigation
The third is basic investigation, which generally examines some basic contents about machine learning or deep learning. This different interviewer's style, questions and requirements are different, which is a big part of different people.
Generally speaking, it mainly introduces the principle of the model, such as decision tree, random forest or SVM. Let you introduce the principle of the model in detail. Or some problems in the details of machine learning, such as what is AUC curve and what are its abscissa and ordinate respectively. What does AUC less than 0.5 mean? Another example is what caused the gradient explosion and how to avoid or solve the problem of gradient explosion.
There are two measures in this section. The first move is to make full preparations in advance, and review the basic contents of machine learning and deep learning before the interview, so as to check the missing and fill the gaps. The other is to collect face books and see what problems others encounter during the interview. Generally speaking, big factories have some interview question banks. Different interviewers may ask questions from different angles, but the logic of a thorough investigation may be similar.
Fourth, soft power test.
This piece is a test of soft power. Generally speaking, regardless of the size of the factory, there is this process, but some enterprises are explicit inspection and some are implicit inspection.
According to my understanding, in this link, we mainly examine several aspects. One is your management cost. To put it bluntly, he is disobedient, a person who is easy to obey management, or a "thorn in the side" with strong personality and easy to pick things up. Generally speaking, you just need to be modest and not too proud during the interview, which will not arouse the interviewer's suspicion.
The second point is your communication ability. Are you an easy person to communicate with? This is reflected in your ability to understand and express. Can you understand what the interviewer is saying, pointing out your thoughts or answering some questions? Then, can you express your ideas clearly and let the other party understand? This is very important, because no one wants to recruit someone who is difficult to communicate with, and it is very tiring to deal with people who are difficult to communicate with.
The third point is your ability to withstand pressure. When the interviewer asks you the details layer by layer, can you resist the pressure and keep your mind steady? Sometimes the interviewer deliberately asks questions at different levels, not only to examine your understanding of the problem, but also to see your ability to withstand stress. Some people have obvious resistance and impatience in the face of the collapse of questioning mentality, which will obviously deduct points.
The last point is potential, which is a bit metaphysical. It is difficult to have an intuitive evaluation standard, which is often the subjective judgment of the interviewer. Generally speaking, it is to examine your work experience and your current strength. If you can show that you are much ahead of others in the same period, it shows that you have great potential and strong learning ability. If your performance is not as good as that of the same period, it seems that your potential is relatively low. Either you don't work hard, or you have low qualifications and you can't learn if you work hard.