Shanghai 985, Ke Class, junior.

I am engaged in back-end development and daily internship in a middle-taiwan department of a business, mainly using GO and Python.

Because it was one of my senior HR students who helped me push the resume, she arranged the whole interview and could know the result immediately after the interview, so the whole process went very fast, I finished three rounds of technical interviews in two days.

One side (1.24 18:00)

Interviewer: This interview will last 30-45 minutes (actually about 45 minutes)

1. Self-introduction (School, major, Name, Position, Professional knowledge, project introduction)

2. TCP/UDP differences

3. TCP congestion control

4. Processes and Threads (Part Eight)

5. Common sorting algorithms and time complexity (atypical eight-part essay, I have taken algorithm courses in the semester just ended, narrated by memory)

6. A. Merge three ordered arrays

B. Longest non-repeating substring — second to double pointer + hash

But when WRITING, due to the first interview too nervous, the left pointer update way write wrong, around for a long time did not correct, thought GG

7. What is the department responsible for?

A: UG department, do you know UG? Under the education department, responsible for user pull (… What the hell? U net? Isn’t that a washing machine?

B. From your 40-plus minutes of observation, what points can I improve in the future?

A: Think clearly when writing code questions. You’re thinking clearly, but your writing is a little messy

After the interview, I consulted HR (the intern of our school). She told me that I had passed the interview and arranged a follow-up interview. Thank you for your kindness to the interviewer

Analysis of the sources of tension: the desire for success, the fear of failure

Second Interview (1.25 14:00)

Interviewer: This interview will last 30-45 minutes (actually about 55 minutes)

1. Self-introduction (same as 1, more reasonable structure, more fluent expression)

2. How is Redis used in the project? What function does it do? What data structures are used? (Answer map… The interviewer said no.

3. What data structures does Redis have and have the underlying implementation known about them? (I have read the blog, no systematic study, time has forgotten.)

4.MySQL ACID

5. Four isolation levels? What could go wrong? (Old Eight-part Essay)

6. What is the difference between read Committed and repeatability underlying implementations? (Poor answer)

MySQL > select * from ‘MySQL’; Secondary index? (Classical Eight-part Essay)

9. Unable to come up with a question, the interviewer volunteered to explain the difference between B+ trees and B trees. (In the middle, there was a disagreement about whether the non-leaf node stored data, and an agreement was reached after some communication)

10. Algorithm: Copy complex linked lists

The second interview was clearly much warmer and kinder than the first, and there was feedback on each question.

Three notices in five minutes, 9:00 p.m., go!

At about three sides (1.25)

As soon as the three interviewers met, they seemed to be strong. Looking at the background wall, it looked like they were in an exclusive office, and when they opened their mouth, they were full of affinity, which really impressed me very much. I should be the leader of a large department.

1. Confirmed my basic information: School? Junior year? How long can I practice?

2. I asked what the project was (the first aurora database used MongoDB and added Redis for graph caching, but the second mall project was ignored by three interviewers)

3. What is the difference between MongoDB and MySQL? Why are reads and writes fast in MongoDB? (Non-relational database, loose table structure, but also presents programming challenges. The specific fast reading and writing must be exquisite in the design architecture, which has not been studied in depth and systematically.)

4. Differences between Redis and MongoDB and MySQL (in-memory database, avoiding disk IO, fast read and write)

5. Do a programming “big” problem.

Round 1: Given an out-of-order array with possibly duplicate elements, find all pairs of digits that sum to 0.

In fact, this problem looks very simple at first glance, is not the sum of two numbers? Save hash table, O (n) solution. But here’s more to consider than the brush problem, finding all of them instead of just one.

So use HashSet to store, hoping to use the set to automatically remove the weight. But the default way to compare arrays is to compare memory addresses, and two arrays are judged to be different even if they have the same elements.

Round 2: How to solve this problem?

You can override hashCode and equals if it’s an object, but this is an array… I can’t rewrite it. Well, let me create a new class, numPair, that stores these two numbers. The interviewer says yes, you write.

MMP: I hadn’t overridden equals and hashCode before, so I just had to feel my way through it, and finally solved the problem

Round 3: If the array has only one 0, it is not allowed to construct [0,0], and instead of finding the sum to be 0, the sum is fixed.

A bunch of tweaks, changing the program logic.

Round 4: Upgrade the sum of two numbers to the sum of three

If it’s a sum of three numbers, I’m going to sort it first, because the sorting complexity is order nlogn, and then I put the pointer in one place, and then I convert it to the sum of two numbers.

I said, is that it? Don’t write it. It’s too big a hole. The interviewer kindly said: or write down…

Another scribble.

Later, when the time was almost up, the interviewer said that he would start with a paragraph, which was really not easy to write. I know that the most important thing is not to write the correct procedure, but to show that I can make up my mind when the interviewer is giving me a hard time. Even though MY writing is getting more and more frantic and my face is turning red, I still believe the interviewer won’t brush me off.)

6. Two final questions: Does ArrayList set a ceiling? What if it exceeds? HashMap underlying data structure? Expansion? (Ha ha, exactly what I want, I am good at eight-part essay)

7. When can I start the internship? (After the New Year, if it’s urgent, I can come as soon as possible)

The interviewer said good: years ago even, but also a few days. I hope you can practice for a few more months, because it may take a month to read the documents at the beginning. If you do not do much for three months, you will leave, and you will not improve much

A. What department is it? Education growth one moment, product development and engineering architecture the next?

A: Oh, it’s a little confusing. We are responsible for the technology middle stage, and then education growth is the small sector below.

B. From your one-hour observation, what can I improve on?

A: At your stage, that’s not bad. Practice more and do more projects in the future.

It is true that I had been studying for nearly a year and had no chance to do any great projects. This mall project is also what I found and learned from the Internet. Therefore, I really hope to get this internship, contact with real industrial projects, and improve myself in the project

Interviewer: Ok, good. I will ask HR to communicate with you later

As soon as my HR senior came to tell me that there would be an HR meeting tomorrow night, we could chat casually and discuss the details of entry.

In general, my first interview experience was very pleasant, and the difficulty was much less than expected — all three algorithmic questions refer to the original offer questions.

I have to say, I got a stroke of luck.

Joy, Over