In April 2017, I switched from Android development to Java background development, which has been a year and a half since then. I’ve been looking for a wave of jobs. Got a lot of offers. Finally decided to pay alipay advanced Java development Offer. So I want to sum up my experience for your reference and hope to help you. I would also like to thank all the companies for their support in my job search and all the people who helped me.

I mainly summarize from the following three aspects:

  1. preparation
  2. improvisation
  3. Daily work accumulation

In order not to be too long in length, which is convenient for reading and also saves me too much time to write a long article, I divided it into independent articles. This article introduces the content of preliminary preparation.

1. Prepare

As a saying goes, opportunities are for those who are prepared. So don’t be blindly confident and go into an interview unprepared. The contents of the preparation are as follows:

  1. Prepare resume (Baidu has many, can not look at mine)
  2. Prepare basic knowledge points (Baidu has a lot, can not look at mine)
  3. Prepare your own projects (type on the blackboard! My own feeling!

1.1 Preparing your resume

I won’t say how to write a resume, after all, I’m not a professional. But please take it out and show your friends what it looks like from someone else’s point of view. If they can see your characteristics. They will usually give you their feelings and suggestions for revision. Make it comfortable for others to see. As for what is comfortable, that can be a lot of things. Typography, sentences, even fonts. My friend pointed out a lot of suggestions for revision. I discuss and revise with them.

1.2 Prepare basic knowledge

I’m not going to list the problems, there are too many online. Prepare those questions yourself. However, I found that during the interview, most of my time was spent talking about the project and the problems solved in the project, which lasted only about 40 minutes. Some basic knowledge was also asked more or less. So also want to advance the basic knowledge point that can find on the net prepares. Focus on the general direction of preparing basic knowledge points:

  • Java Basics
  • Spring Basics: Spring Boot basics
  • Basic database knowledge: MySQL, SQL statements
  • Middleware basics: Redis, MQ, etc., see what the project uses.
  • Basic theoretical knowledge: computer network, operating system, design pattern, etc
  • Algorithms: You can go to Leetcode and swipe (to be honest, I do all of them, just do a few random ones to get myself into the state of doing algorithms)

If there is demand, you can leave a message. If there are many people in need, I can list the questions I prepared in another article. I will not list them here, which will take up space and affect the reading.

1.3 Prepare your own projects

Knock on the blackboard!!

In the interview stage, [talk about your project], [what did you do in the project], [what was the most difficult problem you encountered in the project and how did you solve it] must be the three most frequently asked questions, which are also the most important questions for the interviewer to evaluate a person. I want to better answer these three questions. Need daily work accumulation and preparation before interview. I’ll talk about work accumulation later, but now I’m going to focus on how to prepare. Because everyone works on different projects. So there’s no right answer to any of these three questions. First of all, I think I can think of the answers to these three questions, try to be concise, and then talk to my friend, see if he can understand. You can ask the same question to a colleague who is doing the same job and see how he or she responds. Most people actually write business code on their projects, so focus your preparation. Talking about everything but not saying what the interviewer wants to hear makes this a bad session. Some people talk about projects and the interviewer loses interest. That’s why, so let me talk about the highlights of each question:

  • [Talk about your project] : Focus on the business process and describe in clear and concise terms what the project does. You can then briefly describe the architecture and technology stack used for the project. In fact, this sort out, there must be something to say, remember the business do not introduce too complex, a lot of complex things all over, the interviewer is interested in words he will ask himself, each system has a lot of details, not over, here too much will appear very wordy.
  • [What you did in the project] : Focus on the role and importance of what you did in the business process. Then explain the complexity of this piece, reflect a certain technical difficulty. I know most of you write business code. Most of the time there are fewer scenarios where projects require big data and large concurrency. At this time, you can focus on the system design, such as “how to solve the complex business logic?” .
  • What was the most difficult problem you encountered in the project, and how did you solve it? Try not to talk about business processes or low-level questions. The interviewer will want to know how difficult technical problems you solved. What about solving problems with high concurrency without big data? My experience can focus on solving distributed problems. Because no matter how many users you have, as long as the project is a distributed system, there are going to be distributed problems. For example, “How does idempotent work?” .

conclusion

There are so many resumes and basics online that you can search for them. On my side, the most important point is number three. Because I find that it takes a long time to talk about projects, and here are some basic things to ask after the talk, which don’t affect the overall situation. So put your own project, well organized language. What to say and what not to say. Some people say that an interview is a braggart. In my opinion, if you can blow seamless, that is indeed strength. Be honest with me, because it’s a dead end. At this time many people have questions, to tell the truth, the interviewer asked the project felt no difficulty, the basic GG. Or when discussing a project, you ask a question that you are not prepared for, and you are embarrassed. In the next article, I will introduce my experience of improvisation.