This is the great god, who actively rejected the Bytedance offer, and easily won offers from Huawei, Ant, PDD, Baidu, Paypal

In the middle of the year, due to job changes, I successively participated in the social recruitment interviews of Huawei, Ant, Bytedance, PDD, Baidu, and Paypal. Except for the longer process of Bytedance, I took the initiative to end the interview, and all other interviews went smoothly. It's an Offer.

Recently, I have a little more time. I will write a personal experience, hoping to help you find a job.

Interview experience

Below, in chronological order, I will share my interview experience with different companies.

Huawei

Resume delivery method: Huawei HR contacted by BOSS.

  1. Online written test: Before the formal interview, there will be an online written test with three algorithmic questions. The difficulty level is from the simpler to the deeper, and the two questions are basically no problem.
  2. 1 round of interview: video interview. There will be two interviewers in this round of interview. Each interviewer will interview for about 45 minutes. The content of the interview is mainly based on Java. Finally, an algorithmic question will be written, but it is not complicated.
  3. 2 rounds of interviews: This round is mainly a phone interview with several leaders. They may ask about some project-related content, but more are framework-related and will not involve very low-level technical details.
  4. HR Interview: Communicate about rank and salary. Huawei's salary is composed of basic salary and performance salary, and then it may be 2 months at the end of the year. I tried to argue with salary, but it didn't seem to be useful.

Summary: Huawei interviewers and HR are both nice. The overall difficulty of the interview is fairly modest. Both focus on basics and simple algorithms. In addition, the interview process is also very fast. Basically, it will be over within two weeks. However, Huawei's social recruitment is basically OD, that is, it is linked to the foreign company Deco, not a full-time employee, so in the future, promotion and salary increase may have an impact. You need to consider this for yourself.

Ant Financial

Resume delivery method: friends directly push inward, and the interview will be contacted within a week after the push.

  1. 1 round of interview: online telephone interview, from Hangzhou, mainly to introduce the project. He will conduct some discussions based on the technical points in the project. What was more impressed was that we were discussing the solution of distributed consistency at the time, but I felt he was not satisfied with my answer, haha. Finally, I will post a link to do the question. The question mainly examines the use of Java multithreading. My question at the time was to find the fastest payment method in a certain scenario.
  2. 2 rounds of interview: The phone interview from Shanghai. This round is a supervisor interview, which is also a project-oriented round, and then expands to many basic questions, such as distributed locks, distributed consistency, things, Java threads, etc. There were no questions in this round, and the chat was over for about an hour.
  3. 3 rounds of interview: This time, the supervisor of the 2 rounds of interviewers came to interview and asked me to go directly to Shanghai Ant Z Space for an interview. In this round, I mainly talked about the project or something more macro, without specific technical details.
  4. HR Interview: Because I interviewed for P6, I went directly to the HR interview after 3 rounds. HR focused on the investigation of Ali flavor, such as optimism, pragmatism, etc.

Summary: The interview difficulty is moderate. The process is basically one week and one month as a whole. Of course, it does not include follow-up back adjustments and physical examinations. Therefore, if you want to interview Ali, you can start the interview in advance, and then review the summary while the interview.

PDD

Resume delivery method: BOSS hired directly to find pdd HR.

  1. 1 round of interview: video interview. Talk about the project in the first half an hour and do the questions in the second half.
  2. 2 rounds of interview: video interview. Talk about the project in the first half an hour and do the questions in the second half.
  3. 3 rounds of interview: video interview. Do the questions in the first half an hour and talk about the project in the second half an hour.
  4. HR interview: Determine salary. Because PDD is very intense, you can ask for salary boldly, otherwise it will be too late to regret after entering.

Summary: The interview process of PDD is very simple and rude. It is to do the questions and talk about the project, half and half. The difficulty of the question is basically the Medium difficulty on Leetcode. After the interview, I did not encounter any very strange questions. When preparing for the interview, You can swipe the 200 questions that Leetcode frequently takes. Although I did not go to PDD in the end, the interviewer and HR of PDD left a good impression on me. The interview process is very comfortable, just like communicating with friends; the process of PDD is very fast, and the results are available in about two weeks, because Different companies have different processes. HR has been waiting for me for several weeks so that I can get other offers before replying to her. I am really grateful for this.

Baidu

Resume delivery method: BOSS hires directly to find HR.

  1. 1 round of interview: video interview. Share the project, and then ask some technical details, mainly for Java basics, caching, and distributed.
  2. 2 rounds of interview: video interview. This round is similar to the last round, but I will ask more technical details, and let me write a producer-consumer model online, as well as an algorithm problem.
  3. 3 rounds of interview: video interview. It’s easier for the supervisor to interview, just talk about work and talk about planning.
  4. HR interview: Determine salary. Baidu's salary composition is Base plus stocks. If there is an offer from another company, you can boldly argue. HR may have various reasons to say that you cannot add it, but you must insist on the argument. After I experience it, there is still a lot of room for the argument.

Summary: The interview focuses on pure technology, so you must figure out the technical details; as for the algorithm, Baidu doesn't look into it deeply. The interview process was very fast, and it was over in about a week.

Paypal

Resume delivery method: internal push.

  1. 1 round of interview: video interview, 2 people take turns to interview, the duration is 2 hours. Various Java details, from packaging classes, multithreading to distributed, caching, and so on. Each round requires a question, Medium difficulty.
  2. 2 rounds of interview: video interview. Three people take turns for an interview, which lasts for 3 hours. This depends on the style of the interview manager. Some are biased towards pure algorithms, and some are biased towards basics. However, it takes a long time and needs to be prepared in advance.
  3. After two rounds of interviews, if it goes well, HR will apply for an Offer and get the Offer soon.

Summary: The efficiency is high, and the interviewer is also very professional. The salary composition is composed of Base plus stocks. The stock price has risen a lot this year, so the students who joined last year made a lot of money, haha.

Byte beating

Resume delivery method: headhunting

  1. 1 round of interview: basic technical interview. Don't talk about the project, just ask the basics directly, including the operating system, computer network, Java basics, database, cache, distributed, etc., and the questions are very wide. Finally, write an algorithm question.
  2. 2 rounds of interviews: project and system design interviews. Focus on system design, such as designing Moments, 12306 system, etc. You also need to write algorithmic questions later.
  3. 3 rounds of interview: Maybe the second round did not perform well, the interviewer was rescheduled and the second round was interviewed. This round also examined the basics and system design and passed smoothly.
  4. 4 rounds of interviews: cross-interviews. The interview experience in this round is rather bad. The interviewer called midway and dealt with an online issue, haha.

Since there were already several offers at the time, and the interview process was relatively long, basically once a week, I didn't want to delay it too long. When HR made the last round of technical appointments later, I also directly refused.

Summary: The byte interview is the most difficult of all interviews, because the basic survey is very wide, and the algorithmic questions are not the kind of frequently tested questions. Sometimes they encounter Hard difficulty, but it is also a matter of luck. If you are going to interview Byte, the algorithm must be prepared in advance and try to scan as much as possible, in case you have not seen the topic by then, it will be difficult for you to write it out within 15 minutes.

Summary of experience

A number of interviews summarized a wide range of surveys, including basic knowledge, projects and algorithms.

  • For basic knowledge, it takes a lot of time to prepare every detail and know why, so that when you ask during an interview, you can be honest. For example, Java's AQS principle, multi-threading, JVM memory, etc., frameworks, such as Spring, MySQL, Redis, Kafka, ES, ZK, etc., must be very familiar.
  • For projects, Ali pays more attention to projects, so we must not only be familiar with what the project has done, but also extract the highlights or differences in the project. Why choose this technology, how to design the architecture, how to expand in the future, and problems How to position it, etc.; these must be thought out before the interview.
  • Algorithm, this is not to say, it is to brush more questions. I have interviewed so many companies. Except for Ali, other companies will ask to do algorithm questions in each round, so before the interview, you must be familiar with various common algorithms, such as DFS, BFS, trees, greedy algorithms, common DP, etc. , If you have time, go to brush up the questions to find the feeling.

Interview questions sharing

In this part, I will share some basic questions that I encountered during the interview preparation process and during the interview. You can review the questions.

1. Java basics

1.1 Hashmap and concurrentHashMap (emphasis)
1.2 Set-related issues
1.3 Understanding of Java generics
1.4 What is the query process of ConcurrentSkipListMap, and the time complexity of query and insertion?
1.5 Java byte stream character stream
1.8 Packaging type and Basic type comparison question
1.9 Why rewrite equals and hashcode
1.10 The difference between stringBuilder and stringBuffer
1.11 Principles of Java serialization
1.11 Some new features of
Java 8, 9, 10, 11 1.12 The restricted range of four modifiers in java.
1.13 Methods in the Object class.
1.14 Shallow copy and deep copy
1.15 The difference between interface and abstract class, note that JDK8 interface can be implemented.
1.16 Two ways of dynamic proxy and their differences.
1.16 The difference between pass-by-value and pass-by-reference, what is Java like, and is there any pass-by-value reference?
1.17 If an ArrayList is deleted during the loop, will there be a problem, why?
1.18 The difference between Exception and Error
1.19 The new keyword and the newinstance() method
1.20 Map, List, Set, respectively, talk about thread-safe classes and thread-unsafe classes you know
1.21 Java prevents SQL injection
1.22 Reflection principles and usage scenarios
1.23 static Vs Final? How to prevent a class from being inherited
1.24 memory leak? Out of memory?
1.25 Rewrite Vs overload
1.26 Lambda expression to achieve
the difference between 1.27 ClassNotFoundException and NoClassDefFoundError

2. Concurrency and multithreading

2.1 The principle of volatile keyword
2.2 Understanding of locks in java
2.3 Pessimistic locks and optimistic locks
2.4 Understanding of CAS, how to implement CAS in
java without unsafe 2.5 How to create
threads in java What is the difference between thread run and start? What happens if the same thread is started twice?
2.6 The principle of Java thread pool? What are the thread pools? What are the thread pool parameters?
2.7 ThreadLocal and its application scenarios
2.8 Understanding of thread safety
2.9 Does get need to be locked and why?
2.10 The underlying principle of Lock. synchronized, Lock, ReentrantLock, ReadWriteLock.
2.11 How does AtomicInteger realize atomic modification?
2.11 How to ensure thread safety in a distributed environment.
2.12 Four necessary conditions for deadlock?
2.13 How to interrupt threads
2.14 What are the status of threads?
2.15 wait, notify, notifyAll, await, signal, sleep, yield
2.16 Understanding of Callable and Future.
2.17 The usage, advantages and disadvantages of the synchronized keyword.
2.18 The use and implementation principle of reentrant locks, the process of copy-on-write, read-write locks, and segmented locks
2.19 How does the ABC three threads ensure sequential execution?
2.20 Dual-thread alternate print parity (Ali)

3. JVM

3.1 Common GC algorithm, CMS collector, G1
3.2 jvm memory model && Java memory model
3.3 How to judge the object can be recycled? Which of the GC reachability analysis is considered GC ROOT?
3.4 The proportion of eden survivor area, why is this proportion, the working process of eden survivor.
3.4 Can fullgc reclaim the method area
3.5 What objects will enter the old age? Why does the new generation use replication algorithms?
3.6 Will the objects judged as "garbage" by the GC always be recycled
3.7 What is the problem with forcing young gc?
3.8 The process of class loading Why does Java design a parental delegation model?
3.9 When will minor gc be triggered and when will full gc be triggered?
3.10 The difference between G1 and ZGC
3.12 Do you know strong references, weak references and soft references? What does GC do to them?
3.13 The working process of JVM method stack, what is the difference between method stack and local method stack.
3.14 How do references in the JVM stack relate to objects in the heap.
3.15 Escape analysis technology.
3.16 Whether Java can GC direct memory.
3.17 Commonly used JVM tuning parameters.
3.6 Are there specific performance tuning steps? When the fullgc is full, the response speed of the interface will be extremely slow. How to troubleshoot and solve it.
3.18 Analysis of dump files.
3.19 Does Java actively trigger GC
3.20 If two java projects are opened on the same machine, how many java virtual machines are there?
3.21 javac compilation period workflow

4. Spring

4.1 spring IOC process
4.2 how to solve the circular dependency
4.3 spring AOP, how to realize the dynamic proxy
4.4 spring BeanDefinition function
4.5 spring @Autowired (@Resource, similar) implementation principle
4.6 bean life cycle
4.7 Bean default scope of action? Other scope of action?
4.8 How is Spring's singleton implemented?
4.11 How does SpringMVC login information of different users ensure thread safety?
4.12 What design patterns does Spring use?
4.13 The way Spring injects beans.
4.14 What is IOC and what is dependency injection.
4.15 What are the characteristics of Spring (IOC and AOP)
4.16 Different scopes, what are the implementations of aop implementation,
4.17 Spring transactions and implementation modes
4.19 Understand Spring, SpringMVC, and springBoot
4.20 @transactional annotations will fail under what circumstances, why.
4.21 How does the Controller of SpringMVC correspond one-to-one between parameters and data from the front end.
4.23 How does Spring maintain the beans it owns.
4.24 Implementation of custom annotations.
4.25 How to design IOC framework yourself
4.26 How does Quartz complete timing tasks?
4.18 The life cycle of a servlet, how to determine whether it is a get request or a post request, and how to implement session sharing in the background. The life cycle of Java web filters? The difference between filters and interceptors.
4.19 The difference between BeanFactory and FactoryBean
4.20 Problems and solutions that may be caused by configuring beans with the same id or name in Spring
4.21 Methods to prevent repeated submission of Web forms

5. Message Middleware

5.1 What are the components of kafka, the kafka controller election process, and the kafka leader re-election process
5.2 What problem is kafka originally designed to solve?
5.3 Why does kafka use zookeeper to store metadata instead of db to store
5.4 Kafka has only one production and only one consumption? Do
5.5 Kafka's consumption model? How does Kafka do orderly consumption? Kafka heavy consumption solution? How to solve the lost message?
5.6 The role of Kafka's Replicas?

6. Algorithm

6.1 B+ tree
6.2 The difference between hash and B+ tree? What scenarios are they applied to? Which is better?
6.3 Do you know about red-black trees, time complexity? Five features
6.4 Time complexity of
heap sort 6.5 Quick sort, heap sort, insertion sort
6.6 Consistent Hash algorithm, Consistent Hash algorithm application

 

More Ali advanced Java required exam questions and answers

 

Information acquisition method

Follow + Like! Just add

Guess you like

Origin blog.csdn.net/Java0258/article/details/111410286