Java Experience: Didi Offer road – 5 rounds of interview test

One side (electric face 45min)

Is Hashmap thread safe? Why is Hashtable thread-safe?

How is ConcurrentHashmap thread safe? Let me elaborate.

Hashmap hash details? Why do you do that?

ArrayList and LinkedList?

What is the ArrayList expansion mechanism? Let me elaborate.

How does SpringMvc work?

What’s the difference between Session cookies?

Have you used Rpc? How about Thrift?

How do you usually use comments on projects?

What is the memory partition of the G1 collector?

Why don’t you tell me how the mark-clear algorithm works?

Do you know what JVM parameters are? Talk about it?

Do you know anything about JVM tuning? What command was used? How to tune?

That’s all I can think of… The gluten in the full text was part of the interview process, because I have a poor memory and forgot the rest… 2333

Second face (video face 65min)

Does JUC understand? How about CopyOnWriteArrayList?

Do you know thread pools? You are given a thread pool, how to implement it?

When do threads get stuck? (I don’t remember the exact question)

What locks do you know? Can you tell me the difference between Synchronized and Lock?

Know anything about Spring IOC? Why don’t you tell me what you know?

What about Spring Aop?

What RPC frameworks do you know? So how does Thrift work? Anything else?

How does Mysql master-slave replication work? What exactly does each thread do?

What’s the difference between Redis and Memcache? How do you usually choose? Why is that?

What if Redis data does not hit? How to synchronize data with Mysql?

Which version of Java do you usually use? What’s new in jdk1.8?

What happens when the JVM gc?

How do you tune the JVM in your projects?

Do you have any career plans?

Let’s talk about the project

Three sides (on-site side 60min)

The projects in chat

Are there any better optimizations on the project?

How would you handle Dns hijacking?

What is the specific process of Https?

How does the specific process of entering a URL access look like?

What is the loading sequence of static resources such as HTML, CSS and JS? Based on what?

Session Sharing between multiple systems and multiple servers

Cookie distribution problem

How would you implement an Oauth2 like authorization? Draw it on the whiteboard. (Drawing a flowchart on a whiteboard during a job interview for the first time in my life…)

How to view the jar packages that your project depends on in Maven

Tell me about a data structure and algorithm that you are most familiar with.

So let’s talk about the quicksort process. Let me draw it on the whiteboard. Are there any optimizations?

What books have you read recently? Say a knowledge that impresses most recently?

What do you know about distributed?

Four sides (on-site HR surface 60min)

Talk about life

Talk about life experiences

Talk about an impressive life experience

Final surface (field TL surface 60min)

Let’s talk about the project

Why did you do that? (For points in the project)

How do you write the Model layer in the MVC framework? Talk about it?

Is there any planning before the project is developed? Why don’t I draw it on the whiteboard?

Can you tell me one thing you do well and one thing you don’t do well in technology or life?

conclusion

After getting the offer, summarize the interview answers into a document form, and now share with you! (and a set of big factory interview questions)

If you want to get an offer from a big factory, click “like”, scan and add VX to get it