Personal background

I graduated from a second-rate university and majored in non-computer. I began to learn JAVA in the second semester of my junior year. At present, I have just worked for two years in professional back-end, BASE Shenzhen.

The interview process

  • One side and two sides on the phone
  • Three sides four sides video surface
  • Supervisor Telephone Face
  • Hr phone surface

The whole process takes two weeks, much more efficient than Ali’s. The interview was for the position of netease Hangzhou Research Institute. After passing three interviews, HR contacted me and said that I would go to Hangzhou headquarter to ask the supervisor to have an on-site interview. However, I was in Shenzhen and told HR that it was not convenient for me to see if I could arrange a video interview, and then added another round of technical video interview. By the way, the HR of netease is super nice, adding WeChat is a great private chat

As a reading benefit, I have also sorted out my review materials (JAVA study notes + interview questions), whatever is needed[Click here]To receive.

Key points: interview questions

Interview topics include Java fundamentals, open source frameworks, databases, Redis, networking, Nginx, Linux, scenario simulation & others

Java based

Integer X =20 Integer Y =200 2. How does the Volite keyword work? Does it guarantee atomicity? How is AtomicInteger implemented at the bottom? Has the ThreadLocal keyword ever been useful? What if you don’t override the initialValue method and just get? 4. What is the difference between HashMap and ConcurrentHashMap? When does a HashMap have a circular linked list? What locks are used when ConcurrentHashMap is written? How to ensure thread safety of RenteenLock? 5. Can reflection get private methods of the parent class? How do I prevent reflection from destroying singletons? 6. Describe the JVM memory model. What is the role of each zone? How does heap memory work? Why do we need two surviving extents? How about just one? What garbage collection algorithm is used in the old generation? 7. Describe how multithreading works. How do I start a thread? What’s the difference between the start and run methods? How to create a thread pool and what are the parameters passed in? How is the thread pool implemented to maintain the core thread count? How do I implement a custom rejection policy? 8.Socket programming NIO (this piece I am not familiar with said that did not understand, the interviewer did not ask)

Open source framework

1. What open source frameworks have you worked with? Which one is most familiar? (I said Spring here, so the questions are all about Spring) 2. Describe Spring’s IoC and AOP. Which injection method do you usually use? What’s the difference between BeanFactory and ApplicationContext? Which one do you use in your project? Talk about the Spring bean life cycle. What is the principle of AOP implementation? Two Dynamic Proxy Implementing Principles? Why does the JDK Dynamic Proxy implement an interface? 3. How is Spring Task implemented? 4. How do you use Spring transactions? What does Spring do with @Transcational annotations? How do I know if the transaction was successful? Transaction isolation level? What is the default level for MySQL? Transaction propagation properties? What is Spring by default? When do nested transaction subtransactions commit? 5. What is the relationship between Spring and Spring MVC? Have you ever used JDBCTemplate? 6. What is the overall request processing flow in Spring MVC? Which view do I use to return JSON?

The database

1. How is MySQL indexing implemented? What are the characteristics of B + trees? Where is the real data? 2. Under what circumstances are indexes built? Explain the leftmost matching principle? SELECT * FROM ‘A’ WHERE ‘A’ AND ‘C’ WHERE ‘A’ AND ‘C’ WHERE ‘A’ AND ‘C’ WHERE ‘A’ AND ‘C’ and b=? and c=? Can I use this composite index? Why is that? 4. Have you read the Explain Execution Plan? What are the values of the type field? What do they stand for? 5. What is your SQL tuning experience?

Redis

1. What kinds of data structures are available in Redis? How do you know which structure is used if you give you a key? 2. How to check all the keys? How does Redis switch libraries? How do you get the data? 3. Describe the Redis elimination strategy? If no data can be culled alive without a culled policy configured can a read request be executed properly? 4. Is Redis a single node in your project? How to synchronize multiple nodes? 5. What data is stored in Redis in the project? Why Redis? What’s the difference with the Jetty local cache?

network

1. What is added to the HTTP 1.1 version? What kinds of requests are there? 2. Describe the HTTP three handshake and four wave process? Why do you need four waves? Why does TIME_WAIT need two maximum packet lifetime to reach close? 3. What process does the browser go through between making a request and receiving a response? Speak as much as you know, the more detailed the better.

Nginx

1. What modules does Nginx have? Which one are you familiar with? 2. How do you configure proxy_cache? Where is the cache stored? How exactly is the cache hit? I wrote “Nginx” on my resume, but I flunked a few of the questions and the interviewer stopped asking them

Linux

1. How to view threads in a process? 2. How to replace a character in all files in a folder in batch? 3. If you have ever used JPS, jmap, jstack, and jstat command, tell me what the parameters are. What I said here is based on my experience in using jmap jstack to locate online questions. After answering the questions, I felt that the interviewer was quite satisfied, so practice is very important

Scenario simulation & others

1. Design a system with 10 billion pieces of data per day that needs to be displayed and searched in real time in the background. The general idea I answered at that time was NGINX load balancing, message queue storage, multi-threaded reading, bulk insert, database library and table. The interviewer then generated a lot of questions based on my answers, such as what if the message queue is full? What is the effect of a failed line in bulk inserts? How to solve it? How should divide library divide table divide? How to solve the data migration problem? 2. The code is used to implement the cat 1. The log | grep | a sort | uniq -c | sort – the function of rn. 3. If a server suddenly becomes slow, how to locate the problem?

feeling

1. Don’t sell yourself short.

  • Many people think that their school is not good major is not suitable, can not enter the big company, even the courage to go to the interview, in fact, the bigger the company is more important to individual ability rather than historical record.

Be sure to prepare well before the interview, otherwise it will be a waste of time for both parties.

  • Many people disdain to cram at the eleventh hour. If you think that is the eleventh hour, that is the eleventh hour. Here I say preparation mainly have two points: first, the contents of the resume must be very familiar to you, the interviewer will derive a lot of questions according to his interest in the place, may ask the point to think ahead. Second, you must have one or two fields that you are familiar with, which can be specific to a technical point or a framework, but you must thoroughly study them.

3. Be good at thinking, summarizing and reflecting. These abilities can be trained.

Write in the last

Here are just a few of the interview questions asked at netease (and many other companies ask similar questions). The interview questions and answers are available [here]. The following information can also be obtained by clicking the link!

Java core knowledge points



1000 interview questions for Internet engineer



The real interview questions of Dachang



Video learning materials