It took 6 months to finish the five-faced Ali java post, but in the end he almost fell to the HR face?

I don’t know how many people have gone through in order to go to the Alibaba Technical Department to see what they have experienced. To meet Ali, I spent 6 months in preparation and interviews.

The three faces before the interview were really a bit rushed. I finished three interviews within a week, and then began to wait endlessly. After waiting for about three weeks, I finally completed the four faces and the HR face. The whole process is still relatively tortuous, and the technical interview is still quite an investigation of technical depth. Now I have got the offer.

The interview questions are as follows: one side (mainly depending on the basics):

First introduce yourself, talk about your basic mastery, and project experience

What data structure is usually used?

The advantages and disadvantages of linked lists and arrays?

What are the ways to resolve hash conflicts?

Tell me about your understanding of HashMap and the difference from Weakhashmap?

You just talked about the implementation of JDK1.7. Do you know what changes have been made in JDK1.8?

Do you use RPC communication or REST in microservices?

What is the relationship between RPC and HTTP?

What are the long and short HTTP connections?

TCP's three-way handshake and four waved hands, and why is there a three-way handshake instead of two?

What status does TCP have, and the meaning of the corresponding status?

The realization of the bottom layer of the lock in the concurrent package (understanding of AQS)?

The understanding of optimistic lock and pessimistic lock and how to realize it, what are the ways to realize it?

What is the difference between SynchronizedMap and ConcurrentHashMap?

How to implement a producer and consumer model using blocking queues?

Briefly describe the Java garbage collection mechanism?

How to judge whether an object is alive?

What is the tomcat class loading mechanism?

The class loader parent delegation model mechanism?

Let you evaluate yourself?

Two sides (mainly asked about the underlying layer and algorithm):

Talk about the project and talk about the project experience

How much do you know about the underlying data structure of redis?

Do you know the advantages and disadvantages of dynamic string sds (one of the underlying data structures of redis)?

What are the advantages and disadvantages of the single-threaded feature of redis?

Which data structures of Redis have been used, and in what scenarios?

How to solve the cache breakdown problem?

What are Hytrix's isolation mechanisms? What are the common configurations of Hytrix?

What tuning has been done? JVM tuning, database tuning will do!

I gave a scene, how do you adjust it?

Three sides (database):

Still introduce yourself

What is the high-availability architecture of the database?

How to ensure database master-slave consistency?

Do you know the index algorithm of mysql?

Why does mongodb use B-tree for index, but MySQL uses B+tree?

Did you encounter any problems while using mysql?

Which transaction isolation level is used for production and why?

Talk about your understanding of microservice architecture?

Which RPC frameworks have you used and talk about their advantages and disadvantages?

Have you used docker and how much do you know about containers?

Four sides (partial architecture):

Introduce yourself and talk about project experience

How are the microservices in the project divided and how is the granularity determined?

What problems did you encounter in the practice of microservice architecture?

How to solve the problem of data consistency between microservices?

Why not use other MQ, and finally choose RokcetMQ?

Why didn't RocketMQ choose ZooKeeper, but implemented a NameServer cluster by itself?

During the election process, can Zookeeper still provide external services?

How much do you know about Paxos algorithm?

If you were asked to design a red envelope architecture for the Spring Festival Gala, how would you design it?

What do you want to ask me?

Five sides (HR side):

Talking about life and ideals, HR is very ncie, mainly to communicate why you choose to come to Ali, future career planning and salary, etc. The communication is very pleasant. (I almost fell down because of saying the wrong thing...)

Interview summary:

The technical foundation must be solid: algorithms, data structures, operating systems, etc. The Ant Financial interviews attach great importance to the technical foundation, and students with a solid foundation will help them stand out in the first two rounds.

Technical width: Mainly focus on the selection and comparison of high concurrency, multithreading, distributed architecture, large and common middleware (caching, etc.).

In-depth technical principles: The key point is to prepare the JVM in advance and multi-threaded high concurrency.

Summary of participating projects: You need to be clear about the key details, optimization, features, and principles of your project.

Even if you don’t know the principles of many third-party libraries & middleware, you have to have your own ideas to be able to explain how to replace them, such as alternatives to single sign-on.

Finally, don't fall into the HR interview. Avoiding the most important issues is the focus, especially the advantages and disadvantages. If you ask what your plan is, please remember to tell HR that you want to be an excellent technical expert!

To share some of my personal learning resources, friends in need can get them for free at the end of the article:

Java interview core knowledge points and principles

1-2 years of Java development: JVM articles

This article mainly describes the principles of JVM, involving JVM operating mechanism, JVM memory model, common garbage collection algorithms and JVM class loading mechanism.

1-2 years Java engineer must meet: Java basic articles

This article explains the basics of Java, involving collections, exception classification and processing, reflection, annotation, internal classes, generics, and serialization.

Senior Engineer in Java Development 2-3 years: Java Concurrent Programming

This article explains the knowledge of concurrent programming in Java, involving the working principle and application of Java multithreading, the working principle and application of Java thread pool, and content such as locks and process scheduling algorithms.

Data structure must be asked in the Java interview: data structure

This article explains data structure knowledge, involving stacks, queues, linked lists, hash tables, binary trees, red-black trees, graphs, and bitmaps.

3-4 years Java architects must ask: common algorithms

This article explains the common algorithms in Java, involving binary search, bubble sort, insertion sort, quick sort, Hill sort, merge sort, bucket sort, radix sort and other algorithms.

Five-year Java architect interview must ask the bottom of the network: network and load balancing articles

This article explains the principles of network and load balancing, involving TCP/IP, HTTP, common load balancing algorithms, and LVS principles.

Advanced Java Architect: Database and Distributed Transaction

This article explains the principles of databases and distributed transactions, involving database storage engines, database concurrent operations and locks, and database distributed transactions.

Essential for senior Java architects: Principles and applications of distributed caching

This article explains the principles and applications of distributed caching, including introduction to distributed caching, Ehcache principles and applications, Redis principles and applications, and core issues of distributed cache design.

Design patterns

This article explains design patterns, involving 23 common classic design patterns.

This note is a summary of the essential knowledge points for Java programmer interviews. It explains in detail the essential knowledge points for interviews such as JVM principles, multithreading, data structures and algorithms, distributed caching, and design patterns. streamline.

This note can be used as a collection of interview surprises for everyone, and it will definitely have a miraculous effect!

100% free access method: like this article + follow me, scan the code to get it!

Dachang interview questions

Shenzhen-Tencent-Java Advanced

Hangzhou-Ant Financial-Java Advanced

Hangzhou-Ant Financial-Senior Engineer

Shanghai-Pinduoduo-Java Advanced

Shenzhen-Fengchao Technology-Java Advanced

100% free access method: like this article + follow me, scan the code to get it!

 

 

Guess you like

Origin blog.csdn.net/weixin_45825082/article/details/109385164