It took a month to sort out the summary of 2021 gold three silver four Java interview questions, and the interview summary of Ant Financial, Pinduoduo and ByteDance (for dry goods)

The article is slightly longer, but it will be helpful to you after reading it. This article is mainly divided into four parts for everyone to share, please read it patiently!

  • Preparation process
  • Ant Financial Interview Sharing
  • Pinduoduo interview sharing
  • Byte Beat Interview Sharing
  • to sum up

Preparation process

8 core points, easy to deal with the interview

Before submitting your resume

1. In-depth optimization of resumes. HR reads thousands of resumes every day, and looks at a resume in an average of 3-10 seconds. How to make your resume stand out? Reasonable typesetting can greatly increase the success rate. In addition to typesetting, use keywords to guide Hr to see your strengths and strengths, such as "responsible", "trading", "data", etc...

2. Self-introduction, simple, it is a small composition of 200-300 words. When the company hr calls you, how can you quickly introduce yourself and attract hr in two minutes? Ask me privately

Resume in delivery

3. Sort out the job content of the delivery position. Do you really know what you are doing in the post? 80% of job seekers I coach have no idea about the job. It is recommended that you go to the workplace apps such as Maimai, LinkedIn, Chitu, etc., and send private messages to the company’s practitioners to ask about the current problems or project directions, so that you can "inadvertently" reveal your thoughts during the interview. And strengths, let the person in charge shine.

4. Understand the general information of the industry, do you have a general understanding of the function you are investing in? How much do you know about multi-functional departments such as Internet products, information flow advertising, algorithm data, and short video content? What are your opinions?

5. How many branches does the company structure and department level have in the country? Responsible for product development? Customer service? Audit? content? commercialize? KA/LA/SMB, do you know where you are going? What are the development prospects and the importance of the department?

During the interview

6. Basic language skills and precautions, what can't be said? "I don't understand but I am willing to learn", which words will add points? "I think the best solution is...because..." What is said to be equal to not said? "I think Byte is a big Internet company, and I want to come in and learn to improve myself"

7. Identify the person in charge of the four rounds of interviews. The first round is an Hr telephone interview, the second round of video or offline interviews, the third round of the group leader and Hr interview, and the fourth round of department or city head interviews.

8. How to deal with stress interviews? How should you answer a question you don’t understand? What are the universal saliva words? How to pass the fourth round of interviews efficiently?

Closer to home, the preparation process actually started very early (of course, this is not to say that I always think about changing jobs when I work, because I understand that now is not the end, I need to continue to improve), and it can be traced back to the time when Ant left. I have interviewed many companies, not big companies. I have interviewed about 5 companies and all got offers.

In my spare time, I often go to study the technologies I am interested in and the technologies used in my work, trying to understand the principles, and I will practice them myself. In addition, I have bought more than N books, and I will read them when I have time to supplement the basics. I have basically reviewed the source code of operating systems, data structures and algorithms, MySQL, and JDK. Books and some good information). I know that the foundation is like the shortcoming of the "barrel effect", which determines how much water can be filled.

In addition, before officially deciding to look at the opportunity, I made an outline for myself, mainly including the core points to be mastered by Java. If you don't understand, please check the information to understand. I position myself as a Java engineer, so the Java system must be well known. Many things are easy to show up when interviews are not accumulated all the year round. Learn to be worthy of yourself and don't deceive others.

All that is left is to find platforms and internal pushes. Except for Ants, Byte and Pinduoduo are all looking for internal pushes. Thanks to the Ant interviewer for admiring me. Maybe I will go to Ants in the future.

Platforms : Maimai, GitHub, v2, LinkedIn, Chitu

Having said so much, get back to business.

Ant Financial

Insert picture description here

One side of Ant Financial's Java post:

1 HashMap&ConcurrentHashMap
2. Talk about the consistent hash algorithm again?
3. Optimistic lock & pessimistic lock?
4. Reentrant lock &Synchronize?
5. Four characteristics of transaction?
6. Two-stage commit mechanism for transactions?
7. Clustered index & non-clustered index?
8. Use your own practical experience to talk about the usage scenarios of the index (to give an example when you say one)?
9. Current read & snapshot read?
10. What is the class loading process?
11. Parental delegation mechanism and why?
12. Talk about the GC algorithm?
13. The difference between Http&Https
14. Https encryption method
15. The core parameters and basic principles of the
thread pool 16. The tuning strategy of the thread pool
17. What career plan do you have

Two aspects of Ant Financial's Java post (starting from the project):

1 Tell me about the projects I have participated in, what is the technical difficulty?
2. The underlying sorting method of Collections.sort?
3. Sort stability?
4. The sorting strategy for specific scenarios?
5. Http request process, DNS resolution process
6. Three-way handshake and four waved hands
7. Briefly describe the use of thread pool and concurrency tools?
8. Principles of database indexing
9. How to analyze and solve frequent old generation recovery
10. Spring IOC, AOP?
11. Tell me about some applications of SpringBoot/SpringCloud?
12. How to implement the blocking queue without using java provided by itself? Condition and wait cannot be used.
13. Talk about the congestion window, why use the slow start algorithm.
14. The principle of load balancing?
15. Redis data consistency problem (distributed multi-node environment & single machine environment)?
16. Talk about docker container?
17. How to achieve peak shaving and current limiting under high concurrency?
18. What is your career plan (every interviewer has to ask this question, also on three sides)

Three rounds of technical aspects (150 minutes)

1. The underlying principle of ConcurrentHashMap?
Write an LRU by hand (using LinkedHashMap) 3. What is the underlying data structure of HashMap?
4. Why does HashMap in JDK1.8 use red-black trees instead of ordinary AVL trees?
5. Why does the linked list become a tree at 8?
6. Why is the linked list returned from the tree at 6?
7. How to configure the 7 parameters of the thread pool?
8. Talk about volatile
9. How is the visibility of volatile and prohibited instruction reordering achieved?
10. What is CAS? What is the bottom layer of PriorityQueue, what is the initial capacity, and how to expand?
11. If the original size is less than 64, the capacity will be expanded to 2 times + 2, otherwise, the capacity will be expanded to 1.5 times.
12. Why should the capacity of the HashMap be set to a power of 2?
13. Do you know how to skip the watch? What scenarios will be used?
14. Does CopyOnWriteArrayList know that iterators support fail-fast?
15. What is the underlying data structure of innodb?
16. Why use B+ tree instead of B tree?
17. Why use B+ tree instead of red-black tree?
18.coding: How to find the k-th largest number in an unordered array, write a binary tree hierarchy to traverse
19. If you don’t know the size of the data stream, take 100 of them, and how can you get the most random
20.n items for each item? A certain value, divided between two people, how to divide the value of the two people with the smallest difference

Four-wheel technical side (120 minutes)

1. Permission management in the project
2. How to store the login status
3. The difference between session and cookie, how to manage the session
4. HashMap underlying structure
5. The usage of
synchronized keyword 6. The lock difference between synchronized modification class method and ordinary method, get Can I still obtain the object lock after the class lock?
7. The role of the parent delegation model of the class loader, can you load a certain class repeatedly?
8. The cache of the class loader, what is the key?
9. Introduce Redis
10. How to store data Distributed in different Redis
11. Have you learned about the remainder algorithm?
12. Spring's apo implementation
13. Bytecode structure
14. The browser input URL process, combined with springmvc

Five rounds of technical (120 minutes)

1. How to deal with a large number of hash conflicts in HashMap
2. Red-black tree advantages over BST
3. Why MySQL uses B+ tree
4. Does multiple indexes have multiple copies of data
5. Database isolation level and problems to be solved
6. Database The default isolation level, will there be phantom reading, how to solve it
7. The whole process from inputting the URL to the display, combined with springmvc
8. Load balancing algorithm
9. Huffman coding, how to solve the decoding problem
10. The internship will work Does it matter
11. Introduce a project in English
12. How to view the system load
13. Describe a process
to solve the problem 14. How to copy files from the server to the local, what command

Six rounds of technical aspects (90 minutes)

1. Tell me about the JVM garbage collection algorithm you know
2. Which technologies are used in the
project 3. How to design the flow of the project, if it is you how to design
4. The index structure used by MySQL, search efficiency
5. MySQL query optimization
6. MySQL slow query is turned on, statement analysis
7. HashMap search efficiency
8. JVM memory model
9. Design mode, strategy mode use scenarios
10. How to ensure singleton thread safety
11. Spring bean default range
12. For Netty Understand
13. Future development plan

Seven sides (HR):

1. Non-technical questions
2. Why use you and what is your comparative advantage with other competitors
3. What do you want to ask me
4. Do you have any questions if the company needs you to work overtime
5. Secondly, talk about life and ideals, HR Very ncie, I mainly talked about why I chose to come to Ali and my future plans. The exchange was very pleasant.

For the overall interview experience, the interviewers are very professional and require familiarity with the basic knowledge. You must prepare before the interview before you go to the interview. LeetCode topics should also be brushed.
Remember to brush up the questions and prepare before the interview. Do not write it up if you are unfamiliar with the items on your resume. Prepare 2-3 technical solutions for the items you have written.

The answers to the above content are shared with everyone for free, friends who need the full version, click [ here~ ] to enter the group and ask the administrator to get it.


Insert picture description here

Before the interview

After facing the ants, I had already heard about the unicorn of Pinduoduo, so I decided to go there too. First of all, I found a Pinduoduo HR in Maimai, added a WeChat chat, and sent my resume to start my Pinduoduo interview journey. I would like to thank Miss Pinduoduo HR for helping me from the interview to the offer confirmation. She is really nice.

don't remember the specific question of a test , but I participated in the first batch. The difficulty is a bit higher than the second batch, but the main points of investigation are similar. The topics include 3 SQL questions, 1 probability question and 1 business analysis.

SQL has examined the following knowledge points:
1. Conversion between timestamp and datetime
2. Date_sub/date_add date before and after several days calculation
3. Left join/join/where and other reasonable screening
4. Window function rank/dense_rank etc. (when I haven’t encountered it in this exam, but I have encountered it in previous years' exercises)
5. The proficiency of nesting relationships

Two sides

  1. Introduce myself
  2. Do you have any other offers? (Take the offer of ants)
  3. What is the organizational structure of the department? (Isn’t this round technical, but let’s be honest)
  4. What are the modules in the system, what technologies are used in each module, and how does the data flow? (The interviewer is a bit bald, and the level is very high at first glance) I gave me a piece of paper, and I briefly drew the flow between systems on it.
  5. How is the link tracking information transmitted? (The attachment of RpcContext talks about the structure of Span: parentSpanId + curSpanId)
  6. How does SpanId guarantee uniqueness? (UUID, talked about internal customization changes)
  7. In what dimension is RpcContext passed? (Thread)
  8. How is Dubbo's remote call implemented? (I talked about reading configuration, assembling url, creating Invoker, service export, service registration, and consumers through dynamic proxy, filter, obtaining Invoker list, load balancing and other processes (walala talked about more than 10 minutes), can I drink water? )
  9. How is Spring's singleton implemented? (Singleton Registration Form)
  10. Why implement a service governance framework separately? (Said that the internal microservices have just been launched soon, mainly for some monitoring and performance optimization of the services)
  11. Who is leading? Is it still in use internally?
  12. Have you ever thought about how to make it universal?
  13. Is there anything you want to ask?

Three sides

HR mainly asked some questions about career development, whether there are other offers, and the intention to join the job. By the way, the company's benefits and benefits are more conventional. But what I have to say is that if you have other offers or experience with big factories, you will get some bonus points.


Pinduoduo's interview process is much simpler, after all, it is a company that has been established for more than three years. The difficulty of the interview is moderate, as long as the foundation is solid, it shouldn't be a problem. But I have to say that the work intensity is very high. Before the start of the interview, HR confirmed with me in advance whether I can accept such an intensity of work. The old iron who wants to come must be prepared.

Byte beating

2019 Ant Financial, Toutiao, Pinduoduo Interview Summary (Dry Goods Offered)

3 rounds of technical surface + 1 round of HR surface

The first round focuses on Java basics, and the second and third rounds focus on the mastery of corresponding technologies and business understanding of past projects. The reason why he was impressed was that he had been chatting for more than one and a half hours in each round, which really benefited him a lot.

Bytedance interview process

Today I will write down the byte job search process summarized in more than a year! Whether you are an old job-seeking driver or Xiaobai Mengxin, I hope you have a better understanding and confidence.

Byte's overall process: resume screening => resume evaluation => passed the evaluation => in the written test (not required) => in the interview => the interview has been completed => ready to be employed => joined

Each process is handled manually by hr, and any process will be ended when it hangs.

One side
1. Self-introduction, project experience, optimization items on the project and reasons
2. How to describe the color to the blind?
️5. What social products do you use? Pick one to talk about your feelings.
️6. How to understand the position of product manager?
️7. What byte-based products do you use? Pick one to talk about your feelings.
8. What should be improved in Douyin?
️9. For the popularity of apρ such as Kuaishou, please start from the product function and talk about how to improve the daily activity of a short video app.
10. Design a video app for children aged 2-10, and write out design ideas and promotion methods.
11. If your product plan is not understood by R&D and cannot be developed as scheduled, what will you do?
12. Time is almost up, let's get here first. What do you want to ask me?

2. The role and principle of
volatile 3. The lock in
JUC 4. Some problems in the atomic package
5. The expansion of
HashMap 6. What is the Semaphore semaphore used for?
7. Java memory model
8. How is Java memory space allocated?
9. Can the new generation and the old generation be switched?
10. How to judge it is rubbish? What can GCRoot do?
11.G1 collector
12.IO and NIO
14.How is Class.forName() executed?
15. What is a daemon thread? How did the daemon thread exit?
16. The difference between
Stack and ArrayList 18. The difference between hashcode and equals


Byte interviews are indeed very professional. Every time the interviewer will send you a video link in advance, and then start the interview on time, and the inspection points are relatively complete.

Interviewers have a characteristic, they will grasp a point worthy of in-depth or you did not make it clear and go deep until you make this point clear, otherwise the interviewer will feel that you don't really understand it. The second interviewer gave me some suggestions. When researching technology, we must study the background and figure out what specific problems are solved in which scenarios. In fact, many technologies are interlinked internally. I am very sincere, and I am very grateful to the interviewer.

to sum up

In the end, I got the offer of Pinduoduo and Ant, which was quite lucky.

What I want to say here is to do two things before the interview: resume and self-introduction, resume some projects you have done, and then pick a few highlights. Self-introduction is basically available in every round of interview, so it’s best to practice in advance and figure out what to say and how to say it separately. In addition, the technology mentioned in the resume must have been researched in depth by myself. If there is no in-depth research, it is best to find some information to warm up and not fight unprepared battles.

Books read these years:

"Effective Java", "Modern Operating System", "TCP/IP Detailed Explanation: Volume One", "Code Cleanliness", "Refactoring", "Java Program Performance Optimization", "Spring Combat", "Zookeeper", " "High-performance MySQL", "The Core Technology of Million-level Website Architecture", "Scalable Service Architecture", "Java Programming Thoughts"

To be honest, many of these books only read a part. I usually read the books with questions, otherwise I just look at them. Falling asleep, it's a hypnotic medicine.

The above content is free to share with everyone, friends who need the full version, click [ here to get the full version~ ] Enter the group and ask the administrator to get it

There are more structure resources, as well as interview topics.



Bloggers who need more resources and one-click triple support for interview topics, get information for free!

Insert picture description here