I have been preparing for the interview since April, and I have passed the TX HR interview and Ali’s internal promotion resume interview (the first one is that Ali’s resume interview will not say anything if he is nervous). Finally Ali autonomous delivery six rounds of surface finally ashore! (The target is AT, but B doesn’t consider it. I always feel that B factory can’t even do its core search well, so I put the future on the illusive AI.)

I. Self-summary:

1) First and foremost. Hold yourself to a higher standard. Don’t set yourself up as a simple job seeker. You have to think that you can and everyone else can and what are your core competencies. So the owner of the proposal to JAVA senior engineers to request their own. If you can’t, learn. People’s instinctive reaction to the unknown is fear and retreat. But when you try to understand it and use it, it’s not that hard. 2) Think with curiosity. Don’t stay on the surface. Think a little bit more about why you’re using this technology. Don’t tell me what languages and frameworks you know. The language and framework themselves are just tools. What is important is the design patterns and principles behind the framework. Apart from the design patterns to reduce the coupling of modules, I think the core of the framework is mathematics. Because different mathematical thinking may result in the quality of the code is not at the same level. (To put it bluntly, it is a matter of time and space complexity).

Java is divided into three main parts:

1) JAVA foundation (JAVA object-oriented idea) skilled call and use of various JAR packages. 2) Java framework using SSM,SpringBoot.. And so on. 3) Advantages and disadvantages of common JDK source code such as Hashtable HashMap. JVM Java virtual machine Java high concurrent thread safety policy Spring various framework source code implementation.

Two, source code analysis ideas:

1) Because the source code contains too many abstract classes, many of them are layers of encapsulation (look at the general process first and then pay attention to the concrete implementation of the abstract method). When learning a framework, the advice is to understand its basic functionality, run a Demo yourself, and then analyze its underlying features. 2) Take Spring for example, its main functions are IOC and AOP. First of all, you need to know what the functions of IOC and AOP are. The second is how the IOC loads and manages the destruction beans. How the Bean was loaded, where it was stored, how it was recycled, and so on. Why use AOP, what is the principle of implementation, what are the advantages and disadvantages of Java dynamic proxy versus CGLIB.

III. Distributed thinking:

If you have a problem, solve it. No problem is the greatest problem. (In order to prevent a single point of downtime, it is generally distributed. To relieve the pressure on the database we will refer to the caching technique.

Usually the system is a single point mode. So when there is an outage how do you fix it. The most common is a distributed approach. A few more applications. One hangs and automatically switches over to the other. But there are a lot of issues with distribution that are worth thinking about.

Distributed generally follows CAP (Consistency, Availability, Partition Fault Tolerance) principles, Base principles.

1) Session sharing; 2) Distributed transaction management; 3) Distributed locking. 4) How to solve the cache avalanche problem.

IV. The design of the system mainly revolves around two points:

1) Safety and 2) Performance gradually extends around these two points

Common safety:

1) XSS Attack 2) CSRF(Form Double Submit) 3) SQL Injection 4) Anti-hotlinking

Performance:

1) NGINX Load Balancing 2) Message Middleware 3) Cache Redis 4) Distributed Architecture

conclusion

Write this, write of a little much, also be to give this period of time interview to do a summary, check the leak fill the vacancy, wish oneself good luck, also hope is applying for a job or plan to job-hopping programmer see this article can have a little help or harvest, I am satisfied. Think more and ask more why. I hope you can receive a satisfactory offer as soon as possible! The harder you work, the luckier you will be!

I have some review materials for the interview, if necessaryClick here to



Gold three silver four has passed, in terms of the current domestic interview mode, in the interview before the positive preparation for the interview, review the entire Java knowledge system will become very important, can be very responsible to say, review preparation is sufficient, will directly affect your success rate of entry. However, many people struggle with not having the right materials to review their entire Java body of knowledge, or they may not know where to start. I have come across a compilation that is highly technical both in terms of the overall Java body of knowledge and in terms of the interview.

Giant bo



Interview tips



JAVA learning notes + JAVA interview review materials, as neededClick here to