Congratulations to the fifth offer I received in 2021 Gold Three Silver Four: Bytedance Java R&D Post

Foreword:

Interviews and job-hopping happen every day, and for programmers, "Golden Three Silver Four" is the peak period of interviews and job-hopping. Job-hopping is even more common. For everyone, job-hopping has different meanings. In the same way, it may be that a person yearns for a larger platform and a better place, and he can change his status quo by changing the environment. And I am one of them. I have invested in more than a dozen Internet companies. I have received five offers. In fact, job-hopping is a double-edged sword. It can be good or bad, depending on the reason for your job-hopping. If you are about to quit, are you fully prepared? The editor is about to share these face-to-face sharing and my growth notes.

Preparation before the interview:

During the interview, 99.99% of the companies will ask you to do a self-introduction and a recent project, so draft your self-introduction and project in advance, especially if you are not very talkative.

Self introduction:

I think it’s succinct. Generally, interviewers will read your resume while you are introducing yourself, and they don’t listen to your self-introduction.

The following is a draft I wrote myself:

Hello, interviewer, it is a great honor to participate in this interview with your company. Let me briefly introduce my personal situation. My name is xx. I graduated from xxx college in xx with xxx major. Currently working in xxx company, mainly engaged in xxx development. Follow the recruitment information of your company's position through the xxx recruitment platform. This position is more in line with my future career development, and your company's business is very attractive to me, and I very much hope to enter your company for development.

I have a strong interest in technology, a wide range of professional knowledge, relatively comprehensive technology, strong sense of responsibility, clear thinking, good communication skills, familiar with the JAVA system, and have a good understanding of various development processes and mainstream architecture patterns, design patterns and UML Strong demand analysis, architecture design, project management capabilities, and rich practical experience; Out of my yearning for engineer culture, I tried various methods to establish a healthy team atmosphere during the management of the R&D team, and effectively improve it Improve the efficiency of research and development; technology supports the product, so I am also familiar with the product design process now, hoping to combine the company's development strategy and marketing strategy, and follow the team to create a good product.

The above can be simplified appropriately, how much you can say depends on your memory.

Project Introduction:

This is really to be prepared in advance, otherwise you think while talking during the interview, and you are stunned, your first impression of the interviewer is not good, at least it shows that your presentation skills are not strong.

You don’t need to be too nervous when introducing the project. It takes how long the interviewer will get your resume and look at it, so it must be the most familiar with your own project. The thing to pay attention to is not to just talk about some business-related matters. The interviewer does not need to know these. He only cares about whether your technical ability is enough. You can know what technology you use through your description, and then ask questions based on the relevant technology.

Post my draft:

The xx system I made in xx company, the customer is mainly xx, the function of the project is mainly to provide services such as umbrella, express delivery, meal ordering, book borrowing, etc. The main structure used in the background is Spring Cloud, and the microservice module is divided into xxx, I am mainly responsible for the development of xxx modules. Orm uses mybatis, database uses mysql, cache uses redis, and the front desk uses vue technology. A total of xx colleagues participated in the development, and the entire project lasted xx time.

The interviewer will ask questions about points of interest to him.

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

Face-to-face sharing:

(The number of interviews is a bit high, focusing on a few classic interviews.)

Meituan face-to-face sharing:

Meituan side:

  1. Introduce yourself and briefly talk about your project;
  2. Have you encountered a memory leak? How did you solve it?
  3. What are the basic types of java? Is String a basic type of java? Why should String be final?
  4. What is the underlying implementation of the reflection mechanism? What about dynamic? Dynamic realization principle?
  5. Do you understand hashmap? Talk about some things related to hashmap? Is hashmap thread safe? Why is it thread safe?
  6. Do you understand concureenthashmap? How does he achieve thread safety?
  7. Did you just say 1.8 is based on cas? How to solve the ABA problem of cas?
  8. Talk about the threading model of JVM? What are these areas used for?
  9. Tell me about the working mechanism of the java class loader? In which area is the class loading performed?
  10. Talk about the threading model of java?
  11. Violate understand? What is its principle? Is violate thread safe?
  12. What are the solutions to ensure thread safety? Talk about the read-write lock, the read of the read-write lock
  13. What types of database indexes are there? Why use B+ tree for indexing? What is the difference between a composite index and several individual indexes? Do you understand the query optimization of large tables in the database? Do you understand the MVCC mechanism? What's wrong with the MVCC mechanism? How to solve this problem? Have you done mysql slow statement tuning? Tell me how you do it?
  14. Does redis understand? Do you talk about how to use redis to implement distributed locks?
  15. The scope of Bean in spring, is the controller of springMVC thread safe? How to ensure thread safety?
  16. Has the message queue been used? Tell me how do you use it?
  17. Do you understand computer networks? Let's talk about TCP three-way handshake and four waved hands
  18. What is the reason for the time_wait state? , What's the harm? How can it be avoided?
  19. Find the smallest value in a rotated sorted array

Meituan two sides:

1. Hand tearing algorithm

  • 10 multi-threads guarantee that i increases from 0 to 10 (almost overturned, the main thread is busy waiting for the completion of the other 10 threads )
  • Reverse linked list
  • Step up (n=80)

2. Operating system

  • Commonly used linux commands to talk about
  • What is the relationship between signals and semaphores in the operating system
  • What is the difference between epoll and Selector?

3. Computer network

  • Talk about congestion control

4. Data structure

  • Let’s talk about the red-black tree. Where does your usual technique use it?
  • How does the hash table handle conflicts?

5. Project related

  • Did you encounter any problems when you put the project on the server and run it? How to check the running status of the project?
  • How do you understand the relationship between spring and springboot?
  • Spring IOC and AOP talk about your understanding
  • Why use message queues?
  • Do you have any design plans for repeated consumption of messages?

Three sides of Meituan:

  • How did you learn Java?
  • Do you understand design patterns? Let's talk about a single example, how to implement double-check for a lazy man and a hungry man. Strategy mode, appearance mode, adapter mode, decorator mode, talk about them separately
  • When will the joint index not trigger the index?
  • Do you understand AOP, what are its benefits, how to use it, and how to achieve it?
  • How to realize the transfer business from Alipay to the bank?
  • Redis implements distributed locks
  • Three machine clusters are accessed according to different weights. How to do it?

Meituan four sides (hr):

  • Introduce yourself first
  • Talk about the four IO models
  • How do you usually study?
  • Why do you say that you have to practice after learning?
  • Talk about the biggest advantages and disadvantages
  • Give an example of your shortcomings
  • Imagine what your life will be like decades from now?
  • The most painful period you feel
  • The thing that affects you the most
  • Are there any conflicts in the process of arranging the event?
  • Do you have anyone you admire?
  • What do you want to ask?

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

Meituan face sorted by answers

Byte surface:

Byte beating side:

  • I talked about the internship project for almost 30 minutes
  • Asked about the MySQL index
  • redis string type
  • Why use RabbitMQ?
  • What are the components of RabbitMQ? How to ensure accuracy and consistency?
  • hashcode和equals?
  • Dynamic proxy
  • Fast queue
  • Unordered array calculates how many numbers each position is greater than the previous (merge sort)

Two sides of byte beating:

  • Talk about the project?
  • What is the underlying principle or data structure of mongodb, what is the difference between transaction processing, insertion and mysq, and why is it slow?
  • Such as loading process (Java), what did each step do
  • What is the difference between the instance variables and methods of the subclass and the parent class
  • The difference between overloading and overriding, the return value type is different, can it be overloaded, why, and how is it implemented at the bottom?
  • Java multi-threading, state diagram, drawing, what are the blocking states, running order, some methods of multi-threading
  • java generics
  • What is the principle of the package under ThreadLocal, Concurrent,
  • AtomicInteger, what is the principle, how to achieve high efficiency, and what are the optimization measures
  • Pessimistic lock and optimistic lock
  • The principle of @Transaction, there are, for example, two methods in a class, one is the B method, the other is the C method, there is no annotation on B., on C
  • There are transactions when B** is called outside, why, can it be inferred according to the underlying principle (give a hint to ask if you can infer it)
  • Query the names and numbers of all the students who failed the grades. According to this sentence, how to create an index, why,
  • What is the bottom layer of mysq, why is it efficient, can the primary key be too large, why, if it is too large, will the underlying data structure change, and why
  • linux query the number of tcp connection processing CLOSE_ WAIT status
  • I don’t understand RabbitMQ, kafka, RocketMQ, ActiveMQ, and other messaging middleware
  • Why is redis efficient, thread, data structure, network model, aio, nio, bio, why is it designed like this? How to deal with high concurrency

Byte beating on three sides:

  • Data warehouse, the difference and use of snowflake model and star model, the process of data warehouse (layered), how to design
  • The difference between data warehouse and data lake
  • Design of distributed system, distributed system CAP, model of distributed system
  • Is there any online business management in the linux environment and how to manage it
  • Is there any limit to the collection of redis, and what is the limit?
  • What is the difference between insert and update of 1w redis
  • What is the underlying principle of mysql join? What are the types (not left and right connections)
  • linux command to query the most repeated numbers in a file
  • linux command to query the number of lines in a file

Byte Beat HR:

  • Self-introduction, evaluation of company interview, internship time
  • Why switch to a major?
  • What do you think you have? What are the disadvantages? What are your hobbies?
  • What kind of role do you use to play in the team?
  • What are the more difficult things you have encountered? What do you think you are lucky?
  • For future plans? Have you used other products of the company? Do you have any thoughts on getting a positive?
  • What else do you want to ask?

More face-to-face sharing

I won’t elaborate on the details below, but the general directions are all the same.

JD Logistics

  1. Describe the characteristics of java, what do inheritance encapsulation polymorphism mean?
  2. The difference between synchronized and lock
  3. How to realize the thread safety of ConcurrentHashMap
  4. Several ways to create threads, the meaning of several parameters to create a thread pool, thread saturation strategy
  5. The difference between sleep and wait
  6. Is spring singleton or multiple instances, and what will happen to multi-threaded concurrency?
  7. How does SpringBoot solve cross-domain, and how to configure it
  8. How to catch global exceptions
  9. Spring Security's front and back ends are separated, how do I log in: intercept the login url, then get the user name and password, and hand the user name and password to the manager, the manager will hand it over to the specific provider for processing, and the provider will call the UserDetailsService method to complete the verification . I made a mistake here. Did he get the username and password through getattribute when he said that? I said yes.
  10. How to design a safe external interface
  11. Why is single-threaded redis so fast
  12. Redis persistence method
  13. What is a clustered index, what is a non-clustered index
  14. MySQL transaction isolation level
  15. Do you think you can take on the task of independent development

Open finance

For Internet finance, the company is headquartered in Beijing. When I interviewed, I was in Xinwang Banking Company in Chengdu. It seems that this model should be developed on site, but the company itself is not an outsourcing.

  1. The difference between springboot and spring
  2. Springboot features, how to realize automatic assembly
  3. Which components are used in spring and specific scenarios
  4. Spring is singleton or multiple instances by default, what are the problems with global variables?
  5. Spring transaction propagation behavior, isolation level
  6. Aop implementation method, the difference between jdk dynamic proxy and cglib dynamic proxy
  7. There are several ways to use jdk lambda expressions, take the maximum and minimum values, and convert the list to a map. What should I do if there are duplicates in the list?
  8. What are the parameters of the thread pool, and the meaning of each parameter
  9. What are the advantages of ioc containers
  10. Jvm stack, the difference, thread sharing or thread private
  11. Springcloud components, uses, and several algorithms for load balancing
  12. How to do distributed transactions
  13. mybatis one-to-many, many-to-many how to do
  14. The difference between jpa and mybatis
  15. What does the vmstat command do
  16. Redis view memory usage command
  17. How to optimize mysql importing large amounts of data
  18. mysql has a data deadlock, how to troubleshoot the problem, mysql table deadlock, how to troubleshoot
  19. What is nginx reverse proxy, forward proxy?

The answer to this interview was very good. hr also called several times and said that the interviewer was very interested in me. The operation was as fierce as a tiger, and the salary was 0.9. And I was still working at the time and asked me to be on duty within a week, but I did not go.

Based on the answers above, share it with other parts and organize them into PDF files. Friends who need complete documentation can directly click the portal in the background to receive it! !

What did I do before I took the offer? (My growth notes)

1. Prepare your resume

As I said before, a resume is a facade, but also a stepping stone. Whether you can get an interview with Dachang depends on your resume. Apart from your academic qualifications, Dachang values ​​whether there are bright spots in your resume. Therefore, we pay attention to the content of the resume. You must be prepared to practice your expression on your outstanding points, including technical and personality highlights, and avoid temporary organization of language.

2. Improve skills

In fact, I have a friend of Ali who told me a long time ago that many people think that big factories value academic qualifications, but the actual situation is not entirely. Ali only talks about heroes by ability. Therefore, in daily life, it is necessary and an inevitable trend in the future to improve one's abilities through continuous learning, and strive to narrow the distance between oneself and the target value.

Regarding improving the breadth and depth of my technology stack, my approach is:

01. Read actual documentation

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

02. Read some source code

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

03. Read some technical notes

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

4. Brush more interview questions

For people who are not very good at base, brushing interview questions is actually the most "first aid" method. Therefore, before interviewing Ali, I brushed a lot of interview questions. The purpose is not to be asked during the interview. Go to the original question, but have a corresponding understanding of the interview with the big factory. It is clear what Alibaba will ask in the interview and which technology stacks are involved.

01.Java core interview knowledge points

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

02. Algorithm part (LeetCode+ fun of algorithm)

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

03.BAT big factory interview real questions + special training

This is the fifth offer I received in the Golden 9th Silver 10th: Bytedance Java R&D post

 

to sum up:

The above are my study notes and methods. I have successfully obtained multiple offers in the Golden Three and Silver Four. I believe that if you love to learn, you just need to calm down and learn, and more offers from major manufacturers will wave to you.

There is no end to learning. Learning is an attitude. Whether you are a little cabbage or a technical expert, you can’t afford to fall back to learning everyday. Once you fall behind, you will easily be eliminated.

The above is my experience sharing, and data sorting, all have been packaged, all are free to share, waiting for you who love to learn, friends who need these materials can directly click the portal in the background to receive it! !

100% free to receive, I hope to be able to help everyone.

Guess you like

Origin blog.csdn.net/Java6888/article/details/114833393