This article should take about 6 minutes to read.

Author: Huang Xiaoxi

Article source [Programmer’s Lake]

Found an interesting phenomenon, some of the more popular online articles and blogs are often “summary of certain company interview questions”, “analysis of certain company interview questions”, it seems that programmers always have enthusiasm on the opposite test questions, as if to see a few more interview questions, their ability can quickly improve.

As a RESEARCH and development engineer, I have seen the interview questions of many companies and participated in the interview of many companies, and found that the interview questions of large companies are more representative. Although many interviewers of large companies do not bother to set questions by themselves, they still know better how to examine the candidates efficiently with their experience.

And small companies often multifarious interview questions, some more close to the company’s own business, and hope the interviewer combining business solutions are given, some simply directly from books to find topic, some concepts of rote learning, of course, some start-ups pretend bility is very high, will make some tough interview questions, angles, often let the interviewer off guard.

Since the interview questions of large companies have a common, so we may as well try to discuss, the interview questions of large factories in the end to investigate the ability of the interviewer in what aspects.

1. Basic knowledge

There is no doubt that the basic knowledge is the most popular thing for a large company interviewer to examine. If the interviewer does not have a solid foundation, then the practical ability and business ability based on basic knowledge are castles in the air.

For example, if you are a Java engineer, you need to be familiar with Java core technologies: reflection, multithreading, exception handling, collection classes, IO streams.

As a programmer, you’ll also need to understand computer networks, operating systems, data structures and algorithms, and even (rarely examined) how computers are made up.

These are the basics. In addition, as a Java Web engineer, you need to be familiar with Web frameworks such as SpringMVC and SpringBoot, and be able to tell how they work, their features, their advantages and disadvantages, etc.

As a back-end engineer, you need to understand how MySQL works, common commands, common data structures and usage of Redis, basic concepts of Java network programming, able to explain NIO and BIO, able to understand JVM, understand GC and so on.

A simple way for an interviewer to test the basics is to ask questions that are relevant to the interview, and based on your answers, you will basically know how much you know about these topics.

2. Depth of knowledge

You can probably get the most out of these questions by memorizing a few interview questions and reading a few interviews. After all, many of the interviewer’s questions are also found on the Internet, so you may feel that this is enough.

Actually otherwise, the interviewer as well as a hobby, a consortium is for each knowledge point, like deep XiaWen, asked no questions can be asked, or asked you won’t be so far, only one, the purpose of this question is to test your understanding of the knowledge point depth, if you cannot provide enough profound answer, the result is often failure.

For example, we all know about THE JVM’s GC. In general, the common GC algorithms and garbage collectors also know a few, but when it comes to the specific collection process, many people still don’t understand it well enough.

We can answer this by saying: First, objects are allocated To the young generation first, and in the next GC, the living objects enter the old age. In fact, the young generation is divided into Eden and Survivor region, which is divided into From region and To region. Objects in the From region and To region will be exchanged at every YGC. The age of an object that survives the Survivor zone is +1 until the age threshold for entering the old age is reached, at which point the object in the Survivor zone enters the old age.

Even if the answer is already so long, it can be expanded and supplemented. The interview is an opportunity for the interviewer to test you and to show you what you can do, so be sure to leave nothing to the interviewer and show everything you know. The results will often be satisfactory.

Compared with basic knowledge, it takes time and energy to improve the depth of your knowledge, which is not a matter of a day, you need to continue to accumulate, readers can also refer to my previous articles in this respect.

3. Problem solving

Problem solving is a broad topic, but it’s really one of dachang’s favorite things to look at.

For example, the interviewer took out an algorithm you have not seen, often it is easy to make you fear, if you give up thinking and directly answer no, you will lose.

Questions can be difficult, but what the interviewer wants to see is your thought process and your ability to solve problems. If you can explain your ideas and give some solutions, even if you really can’t write the questions, it will probably give the interviewer a more positive impression.

Of course, if you don’t know a lot of questions, that may be your problem solving skills.

In addition to algorithm questions, intelligence questions are also a common type of interview questions. These questions may involve probability theory or game theory. The questions themselves are not difficult, but you should give your ideas and thinking process to solve the problem.

If you have project or internship experience, the interviewer will often ask you what you were responsible for in the project, what difficulties you encountered and how you solved them. This is also to test your problem-solving ability.

If you can explain clearly what you did and how you managed to solve some of the problems on a project, it will impress your interviewer. If you actually worked on those projects and overcame those problems, lying on a resume is a shot in the foot.

Conclusion:

Having said so much, in fact, big factory interviewers just want to understand the flexibility of the interviewer, interview questions, algorithm questions, pressure interview, etc., are just a means. Because big factories need talents with sustainable development ability, they can provide more possibilities for the long-term development of the company and the department. I don’t need a fire chief, I don’t need a punk.

Wechat official account

Individual public number: programmer Huang Xiaoxi

Huang Xiaoxi, master of 985, is a Java engineer of Alibaba. She has rich experience and unique insights in self-learning programming, technical job hunting, Java learning and other aspects, hoping to help more programmers who want to engage in the Internet industry. The author focuses on the JAVA backend technology stack, and is keen to share the practical knowledge of programmers, learning experiences, job hunting tips, and self-taught programming and JAVA technology stack. Huang Xiaoxi is a slash youth, insist on learning and writing, believe in the power of lifelong learning, hope to make friends with more programmers, progress and growth together!

Original e-book: Follow the wechat public number [programmer Huang Xiaoxi] and reply [Original e-book] to receive my original e-book “Novice Programmer Training Manual: From a technical novice to an Alibaba Java Engineer, this e-book summarizes my 2-year learning path of Java, including learning methods, technical summary, job hunting experience and interview skills, and has helped many programmers get the offer they want!

Technical public number: programmer river lake

Heroes don’t ask where they came from, programming doesn’t see where they came from. Here is a gathering place for self-taught programming enthusiasts, as well as a repository of IT learning resources for programmers. Click here to become a better programmer!

Programmer 3T technology learning resources: some programmers learning technology resources gift package, after paying attention to the public account [programmer jianghu], the background reply keyword “information” can be free without routine access, including Java, python, C++, big data, machine learning, front-end, mobile terminal and other directions of technical information.

“Java”, “Python”, “C++”, “big data”, “algorithm”, “AI”, “Android”, “front-end”, “iOS”, “BAT”, “school recruitment”, “written test”, “interview”, “computer foundation”, “LeetCode” Such keywords can obtain the corresponding free programmer learning materials.