background

I have been using Java for over a year now. I have been working on hardware before, so Java is not very good. At the time of delivery, the internship just resigned, and did not prepare for the written interview, a lot of things have forgotten. Knowing that the failure of the internal push does not affect the autumn recruit to dare to cast, is just thinking about brush experience, never dare to expect anything. Half a month before the delivery, I just spent about 10 days reading “Java Concurrent Programming Actual Combat” and took notes carefully, which was a bit of experience and helped me a lot in the interview.

The six interviews are as follows:

4 technical interviews +1 HR interview +1 briefing session (barely an interview)

One side

  1. To introduce myself

  2. Talking about the project, I mainly talked about the internship project, along with the database, cache related issues.

    • ACID
    • Transaction isolation level
    • MVCC
    • Database table
    • The index
    • Cache consistency
  3. When introducing myself, I said that I have a good command of multithreading. Spring, JDK, and related classes under the Java Concurrent package. By the way, I asked some common concurrent questions:

    • What does volatile do
    • What’s the difference between sychronized and Lock
    • What are the thread-safety issues?
    • Cause of deadlock
    • Performance issues associated with locking. How to solve it?
    • Is HashMap thread safe? Hashtable? ConcurrentHashMap?
  4. On the JVM

    • Java memory model
    • Garbage collector
    • Parental delegation model.
  5. Do you have any questions you want to ask?

Second interview

  1. To introduce myself

  2. Have you ever participated in ACM, other competitions, and won any prizes? During the postgraduate period, what projects did you do? Did you issue papers? What are the results?

    My answer is that I never participated in ACM. I participated in mathematical contest in Modeling during my undergraduate study, but my ranking was not good and I did not win any prizes. (The interviewer began to look a little disappointed) However, I said that a military industry project had been put into use in the first year of research. The project data is confidential, but the content is not. I can tell you that the interviewer is more interested.

  3. What do you think are your strengths and weaknesses? What qualities do you think the people around you have that you don’t have that are better than you?

  4. How many years have you been doing Java? Could you tell me about any project you did during your internship?

    I have done a lot of projects, but I wanted to talk about something complicated this time, which was the first time FOR me to talk about this project. The description was a little confused and the direction was off. As a result, the interviewer did not understand what I said, and I did not understand what he asked, which made the atmosphere very awkward.

  5. Perhaps to ease the awkwardness, the interviewer asked a simple question about the difference between bubble sort and quicksort.

  6. Do you have any questions you want to ask?

There must have been other questions, which were all right, but I forgot what they were.

Summary: I used to think that I was a software development post, the interviewer is not interested in hardware projects, just a sentence, rarely mentioned. However, after the second interview, I realized that the interviewer pays more attention to the candidate’s learning ability, attitude, experience and thinking. Even if you don’t have much project experience and achievements related to software development, it is good to show your comprehensive strength in other aspects to the interviewer. Therefore, when I introduce myself to the interviewer, I will not only talk about the internship project, but also talk about the hardware project that I did in the first year of graduate study, and emphasize that it has been put into production environment.

Felt this face collapsed, thought it was over, did not prepare again. Then four or five days later, the inner push said, “You even cross the face, good.” Basically, if you don’t receive a rejection letter or the schedule doesn’t say “rejected,” it means there’s still a chance

On three sides

August 12th, that should be the intersection

From the beginning of the three, I feel almost clear routine, how to introduce myself, how to guide the interviewer to ask the question I want him to ask and so on, have their own ideas. When an interviewer asks a question, I know exactly what he wants to test. Sometimes, when I am not sure what the interviewer means, I will ask him in return, do you want to test the knowledge of XXX? I have some understanding that I can share with you.

  1. Let’s do it the way we always do it.

  2. As I emphasized the hardware project I had done, it was no surprise that the interviewer asked me more detailed questions. As I had done all the work myself, I understood it clearly. But the important thing here is, you know the project, you’ve studied the field, how do you make your project understandable, it’s not easy. I usually compare the hardware project with something the interviewer might be familiar with, so it’s easy to explain. But ali’s programmer says he knows nothing about hardware. No way.

    Depending on the project asks the difference between TCP and UDP.

  3. During the internship, did you do any project, which is more technical? Can you tell me about it?

    Talked about the project, said that the message subscription publishing, mentioned K8S, Docker and so on.

  4. Does Redis know? What are the characteristics? Is distributed understood? (Not much, but ideas)

  5. Have you read any source code?

  6. Review some Java basics

    • HashMap, ConcurrentHashMap, volatile, sychronized
    • Java memory model, garbage collector, class loading mechanism, parent delegate model
    • Spring related IoC, AOP
    • Database related: ACID, transaction isolation level, MVCC, etc
  7. Last question: how do you get 4 liters of water from a 3 liter bucket and a 5 liter bucket?

The above questions basically all answered out, most chat of more meticulous, the interviewer is quite satisfied with, directly say to me: good, can, the back and so on notice!

All around

On the same day, I received four phone calls at 9 p.m. It feels like a director’s face.

The interview was obviously different from the previous one. The questions were informal and focused on ideas. We talked about the hardware project of the laboratory and a simple task during the internship at netease, and then some problems of the internship project.

Followed by some simple questions:

  1. HashMap, ConcurrentHashMap, volatile, sychronized
  2. How to troubleshoot deadlock?
  3. How to view heap memory information?
  4. OOM how to check the problem?

I also asked some other questions, I can’t remember, not very difficult, but I think the answers are more specific, more clear.

HR side

On August 17

The HR interview is more routine, but Ali’s HR interview also asks me to talk to her about the project, which is also amazing.

  1. What do you think are your strengths? What are the disadvantages? Let me give you some examples. How do you overcome your weaknesses?
  2. What was the most fulfilling thing that happened to you? What was the problem you encountered and how did you solve it?
  3. Have you talked to other interviewers about some of the projects you’ve worked on? Can you tell me about it? You have to consider that I am not a technical person, how to let me understand. What were the problems in the project and how did you solve them? What is your biggest achievement?
  4. What did you gain from your internship? What’s your contribution?
  5. Are you currently being interviewed by any other companies? If you had to choose between these companies and Ali, which would you choose? (Send points, bad answers may be killed)
  6. Where do you expect to work?
  7. Do you have any questions?

After the interview, HR said that the defense of the internship will be finished before August 25th, and all the interviews will be reviewed. The results will be given in one or two weeks and the letter of intent will be sent. If I call you again next time, I will discuss the salary.

Six sides

On August 24th, during lunch break, I suddenly received a phone call from Ali. I heard that ali’s voice sounded like that of the interviewer in the second interview, and he collapsed, so I was also very nervous. Tell the interviewer that I will wait for five minutes to arrange my clothes and find a quiet place for the interview. I adjusted my mood.

The interviewer called five minutes later

  1. How many interviews have you had? I answer you this is the sixth side. The interviewer said that strictly speaking, THIS is not an interview, I just want to know about the situation, time is tight, let’s talk briefly.
  2. 1 minute self-introduction.
  3. What did you learn from the project and how did you solve any problems?
  4. Did you take part in any competitions? Have you ever published a paper? Have you had any results?
  5. Have you been involved in any student activities? What positions have you held?
  6. Have you read any source code? Have you followed any open source projects?
  7. Is distributed understood?
  8. How about concurrent programming? What about thread pools?
  9. Did you learn anything during the internship?
  10. What did you contribute to the company during your internship?
  11. Do you have any questions?

Here, I asked the interviewer, in order to be competent for Ali’s work, what aspects are I lack and should be made up for?

The interviewer, after thinking about it, said that the basic knowledge and attitude are quite good, and he is very active in doing things. He also has his own thinking. For example, you mentioned that to solve problems, he should summarize the reasons of deeper problems, which is very good! You can learn more about Java and distribution later… You can add me nail nail, said the back to facilitate contact.

After consulting my friend, if I can get in, the sixth interviewer should be my direct supervisor. The sixth interviewer said that you have no problem, then there is no problem, you can rest assured.

conclusion

  1. As you can see, in fact, the questions the interviewer asked me were routine and not particularly difficult. And there are some questions that interviewers ask almost every time. Common questions, no matter which company which interviewer, temporarily do not want to ask you what, blurt out is the most frequently asked questions, must be in-depth to prepare, do not answer too fur. You can’t just brush through interview questions online and try to deal with these common questions. You have to look at the source code, to dig details, the answer is more detailed than others, so as to highlight your serious and efforts.

    For example, the difference between TCP and UDP, I think if only answer:

    TCP is connection-oriented and reliable, whereas UDP is unreliable. Such an answer is wholly inadequate.

    The answer should be comprehensive and detailed. My answer also includes:

    • The internal data structures of TCP and UDP are compared.
    • TCP is based on data stream transmission and UDP is based on packet transmission.
    • The TCP connection requires a three-way handshake. This section describes the specific process of the three-way handshake.
    • TCP congestion control was mentioned, and related issues.
    • .

    The interviewer saw my answer is very detailed, not finished answering, very satisfied with the switching question.

  2. As mentioned earlier, if you invest in the Internet, do software development, your project experience is less, can use hardware projects to make up. Highlight problem solving ideas, what you learned, and extended thinking that will show the interviewer your comprehensive skills. Maybe you don’t have enough project experience and foundation, but you need to have good qualities to show the interviewer.

  3. Language and communication are important, important, important! If this aspect is not strong, the interview must be rehearsed, prepared. Direct the interviewer to ask about things you’re familiar with.

The last

After the interview, will experience a long wait, really tired people, feel this luck or very good!