I don't know how many people want to visit Ali's technology department , What have you experienced , My purpose is to meet Ali , The preparation time and the interview cost 6 months .
It's really a bit of a rush before the interview , Three interviews in a week , And then I began to wait endlessly , I've been waiting for about three weeks , Finally, the four sides and HR Noodles . The whole process is quite tortuous , The technical interview is quite a survey of technical depth . Now I've got offer.
The interview questions are as follows ： one side ( It's mainly about the basics )：
Introduce yourself first , Talk about your basic knowledge , And project experience
What data structures do you usually use ？
Advantages and disadvantages of linked list and array ？
solve hash What are the conflicting methods ？
Tell me you're right HashMap The understanding of the , And the Weakhashmap The difference between ？
What you just said is JDK1.7 Implementation of version , know JDK1.8 What changes have been made ？
You use it in microservices RPC Communication or REST？
RPC and HTTP What is the relationship of ？
Talk about what is HTTP Long and short connections of ？
TCP Three and four waves of , And why three handshakes , Not twice ？
TCP What are the States , Meaning of corresponding state ?
And the implementation layer of lock in the contract （ Yes AQS The understanding of the ）？
Understanding and Realization of optimistic lock and pessimistic lock , What are the ways to do it ？
SynchronizedMap and ConcurrentHashMap What's the difference? ？
How to implement a producer and consumer model using blocking queues ？
Briefly Java Garbage collection mechanism ？
How to judge whether an object is alive ？
What is? tomcat Class loading mechanism ？
The mechanism of parent delegation model of classloader ？
Let you evaluate yourself ？
Two sides ( Mainly asked the underlying and algorithm ):
It's about the project 、 Tell me about the project experience
redis What do you know about the underlying data structure of ？
Know dynamic strings sds What are the advantages and disadvantages of (redis One of the underlying data structures )？
redis What are the advantages and disadvantages of the single thread feature of ？
Used to Redis Which data structures , What scenarios are used respectively ?
How to solve the problem of cache breakdown ？
Hytrix What are the isolation mechanisms of ？Hytrix What are the common configurations ？
What tuning has been done ？JVM tuning 、 Database tuning is OK ！
Gave a scene , Ask you how to adjust ？
On three sides ( database )：
Still introduce yourself
What is the high availability architecture of the database ？
How to ensure the consistency of database master and slave ？
know mysql The index algorithm of ？
Why? mongodb The index of is used B Trees , and mysql use B+ Trees ？
use mysql In the process , Do you have any problems ？
What kind of transaction isolation level is used in production , Why? ？
Talk about your understanding of microservice architecture ？
Which have been used? RPC frame , Talk about their advantages and disadvantages ？
Used to docker Do you , How much do you know about containers ？
Four sides ( On the side of Architecture )：
Introduce yourself , Talk about project experience
How to divide microservices in the project , How to determine the granularity ？
In practice microservice architecture , What's the problem ？
In terms of data consistency between microservices , How to solve it ？
Why not use others MQ, Finally, I chose RokcetMQ？
Why? RocketMQ no choice ZooKeeper, It's the realization of a NameServer colony ？
Zookeeper In the course of the election , Can we still provide external services ？
Yes Paxos How much does the algorithm know ？
If you want to design a red envelope architecture for Spring Festival Gala , How would you design ？
What do you want to ask me ？
Five sides (HR Noodles )：
Talk about life and ideals ,HR very ncie, Why did you choose to come to Ali , Future plans, career planning and salary, etc , It's been a lot of fun .（ I almost fell over because I said something wrong ......）
Interview summary ：
The technical foundation must be solid ： Algorithm 、 data structure 、 Operating system, etc , Ant financial interview attaches great importance to the basis of Technology , Students with a solid foundation are in favor of highlighting the encirclement in the first two rounds .
Technical width ： Mainly concentrated on high concurrency 、 Multithreading 、 Distributed architecture , Large and common middleware ( Cache, etc ) Selection and comparison of .
Technical principles go deep ： The point is to be prepared in advance JVM、 Multithreading and high concurrency .
Summary of the projects involved ： You need to be clear about the key details of your project 、 Optimize 、 characteristic 、 principle .
A lot of third-party libraries used & The principle of middleware , Even if you don't know , Also have your own ideas about how to replace the implementation , For example, an alternative to single sign on .
Last , Don't fall on HR Interview session , It's the key to avoid the heavy , Especially the advantages and disadvantages , If asked what your plan is , Please remember to tell HR You want to be an excellent technologist ！
Share some of my personal learning resources , Friends in need of free access at the end of the article ：
Java Interview core knowledge points principle article arrangement
Java Development 1—2 Year foundation ：JVM piece
This article mainly talks about JVM principle , involve JVM Operating mechanism 、JVM Memory model 、 Common garbage collection algorithms and JVM Class loading mechanism and so on .
1—2 year Java An engineer will ：Java The basic chapter
This introduction Java Basic knowledge of , Involving sets 、 Exception classification and handling 、 Reflection 、 annotation 、 Inner class 、 Generics and serialization .
Java Development 2—3 Senior engineer ：Java Concurrent programming
This article is about explaining Java Concurrent programming knowledge , involve Java Working principle and application of multithreading 、Java Working principle and application of thread pool , And locks 、 Process scheduling algorithm and so on .
Java The data structure that must be asked in the interview ： Data structure
This article explains the knowledge of data structure , It's about stacks 、 queue 、 Linked list 、 Hash table 、 Binary tree 、 Red and black trees 、 Pictures and bitmaps, etc .
3—4 year Java Architects must ask ： Common algorithms
This introduction Java Common algorithms in , It's about binary search 、 Bubble sort 、 Insertion sort 、 Quick sort 、 Shell Sort 、 Merge sort 、 Bucket sort 、 Algorithms such as Radix sorting .
5 year Java The architect interview must ask the network bottom layer ： Network and load balancing
This article explains the principle of network and load balancing , involve TCP/IP、 HTTP、 Common load balancing algorithms and LVS Principle, etc .
Java Architect advanced ： Database and distributed transaction
This article explains the principles of database and distributed transaction , Database storage engine involved 、 Database concurrent operations and locks 、 Database distributed transaction and so on .
Java A senior architect must have ： Principle and application of distributed cache
This article explains the principle and application of distributed cache , About distributed cache 、Ehcache Principle and Application 、Redis Principle and Application 、 The core issues of distributed cache design .
This article explains design patterns , Involving common 23 A classic design pattern .
This note is true of Java Summary of necessary knowledge points for programmer interview , Explained in detail JVM principle 、 Multithreading 、 Data structures and algorithms 、 Distributed cache 、 Design pattern and other interview necessary knowledge , Don't be sloppy when explaining , Strive to simplify .
This note can be used as a treasure of interview surprise , It's going to work wonders ！
100％ Free access ： Like this article + Pay attention to me , Sweep the code for ！
The real questions of interview in large factories are arranged
Shenzhen - tencent -Java senior
Hangzhou - The ant gold dress -Java senior
Hangzhou - The ant gold dress - Senior Engineer
Shanghai - A lot of spelling -Java senior
Shenzhen - Fengchao technology -Java senior
100％ Free access ： Like this article + Pay attention to me , Sweep the code for ！