Welcome to follow our wechat official account: Shishan100

My new course ** “C2C e-commerce System Micro-service Architecture 120-day Practical Training Camp” is online in the public account ruxihu Technology Nest **, interested students, you can click the link below for details:

120-Day Training Camp of C2C E-commerce System Micro-Service Architecture

This article is the interview experience submitted by the reader “Programmer Conan”. Thank you for sharing your interview experience to the general students for reference.

Directory:

1. Finally going to college

The lonely traveler

3. Progress in reflection

4, the software competition

5. Open source works explode

The turning point of life

01. Finally go to college

I did not cross the mountains and the sea, nor did I cross the mountains and the sea of people, I am me, a 2020 ordinary undergraduate student.

As a reader, you follow me to gain knowledge and experience. What I can share is only some of my knowledge and experience.

In 2016, WHEN I was a freshman, I was confused about the future while learning the entry-level C language. Interview with the Student Union, failed. Interview with new media department, failed.

I thought THAT I had lost the starting line of the university after repeated failures. Unexpectedly, I was interviewed for an IT programming studio and succeeded.

I would like to thank the seniors who introduced me to the studio, let me know what C language can do, what Java can do, and pushed me into the Java world door. Two months in the winter vacation, I learned basic Java grammar by myself.

02. The Lonely Traveler

In 2017, I gave up my favorite basketball and games, and began to learn JSP, servlet and HTML. I built a self-study room to query web pages and sold it to a school official account team.

In the second semester of my freshman year, I applied for the school software design competition and designed and developed a micro educational administration system.

The principle is to simulate the login of the school educational administration system, climb the results of the schedule and other information, and then display the web page. Got a referral award, which means not in the top ten.

The function of the school software competition is to select the team to participate in the Shandong province college students software design competition, although it is recommended award, but as long as the work is completed, or can reimburse 300 registration fees.

So I dialed my mother’s cell phone number and asked for 300 yuan for my mother.

I found a problem when I signed up for the official website. Each team should have at least three members. But my team — it’s just me. Yeah, it was just me at the field defense.

I finally took part in the competition, AND I was glad that I had two months ‘winter vacation to prepare for it. In these two months, I started to do chapter by chapter Demo with an Android primer to master book.

Finally, I made a campus App, which mainly includes the functions of forum Posting, thumbs up and comments, as well as the functions of checking grades, class schedules and campus news.

I won the software competition work completion award, not first, second, third prize. So, my first software competition results, failure.

In the second half of 2017, the first semester of my sophomore year. I sent my campus App to the School ape Code Studio and became a member of the studio. Two mega-projects were planned, but they never came to fruition.

03. Progress in reflection

Then 2018 comes. I’m still the same guy who can’t see out the window and just wants to code. After that, I took on a school project.

At this point, my stack of skills has expanded to the Spring ecosystem, Spring Boot, and Spring MVC.

Just, based on Spring Boot imitation monk did a recruitment system, remuneration after tax 2000.

As the stack of skills grew, I began to think about deeper meaning. Whether my foundation is solid or not, every time I think of this, I panic.

I didn’t seem to have the foundation. I didn’t study JDK source code, and I didn’t run algorithm contests. I started actively looking for basics in Java, looking for things I heard so often that I didn’t.

I asked my seniors and listened to them talk about the sutra. Then a series of words, unknown to me, poured in, making me feel like a crumbling edifice.

Multithreading, what is multithreading? What is thread safety? I have no idea. The JVM? What is this? What is GC? BIO, NIO, AIO, sorry, I can’t.

I think I’m starting to change. Heart as if there is always a force in grabbing me, urging me, let me do, to action. I thought, I can’t watch video anymore, MOOCs are not for me anymore. I’m going to read a book.

In my impression, the first book I took the initiative to read was “Java Program Performance Optimization” by Ge Yiming. I was so grateful for the book that I wanted to cry and reward the author. This book completely opened my eyes to the uncharted territory of Java.

It let me know the basic principle of String in Java foundation, the basic principle and optimization of List and Map, it let me know the design mode, it let me know GC, JVM, let me know the most important multithreaded knowledge in the Java world, let me experience the Java performance tuning.

The contents of this book, I understand the basic knowledge, JVM, multithreading, etc., but for me to guide the direction.

Following this reverse, I bought “Deep Understanding Java Virtual Machine”, “Java Multi-threaded Programming core Technology” and “Java Concurrent Programming art”.

I read voraciously. I typed all the examples in the book, but I was afraid that I would soon forget them, so I began to take notes.

I copied everything from the book and posted it on my blog. After learning multithreading related knowledge, I came back to see Ge Yiming’s book, I understand.

04, the software competition

2018 summer vacation, very lively.

My team was very helpful this time, and so was my advisor. We have a meeting to discuss doing a competition! Yes, or shandong province college students software design competition. This time, I want to give it my all.

We spent over a month trying to figure out what we were going to do. My tutor really wanted to make a doctor robot and showed us some pictures of it.

Our topic is big data analysis and mining. I didn’t have a clue at first. I took many, many detours.

How can I put it? I went to learn Hadoop, and when I got there, I realized the project was too small to use. Then I went to Elasticsearch.

The original game was a web chat window, integrated with The Voice synthesis interface of Spitch, and the query interface of Elasticsearch at the back end. Very simple (Low).

Knowing that most of the other teams did data crawling, analysis and visualization with ECharts, my tutor suggested me to make knowledge maps and provided examples.

Therefore, I went to Baidu for research, spent a week learning Neo4j, and made a Demo combined with Spring Boot.

Only graph database support is not enough, but also need front-end display, so I learned D3.js.

However, my front-end skills are not very good. The amount of data is too large, and the nodes of the knowledge graph are all crowded together, which makes the work very unpleasant.

During that period, I was lost again. What the hell am I supposed to do? Would I fail again this time?

My tutor told me to try several websites to climb the data source. I came across the jB39 website’s self-diagnosis system and was shocked. This was what I wanted to do!

My tutor wants to do knowledge graph, but I want to insist on making intelligent medical diagnosis system. When THINKING about the algorithm logic of the system, I was surprised to find that it was the knowledge graph that supported the diagnostic algorithm.

When I wrote algorithm ideas on the small blackboard in the office and showed them to my teammates and mentors, I was very happy, because I finally knew what I wanted to do.

At the beginning of the second semester of my sophomore year, I was informed that my work had won the second prize and the final of the first prize would soon be held in Shandong University, so I must attend the final defense on time.

I was very well prepared for the defense, and before the final defense, I had defended once in another provincial competition, which was a wave of experience.

As expected, my work won the first prize of shandong University student software competition.

05. Open source works explode

While doing “intelligent medical diagnosis system” to participate in the provincial software competition, I deeply felt how huge the time consumption is when climbing a large amount of data.

The longest time, my computer did not shut down for two days, has been crawling in the background. Finally, FRUSTRATED, I wrote a multithreaded crawler framework in Java and posted it to Github.

I used to do projects alone, and increasingly found myself ineffectual in page-related design and development. Now that you have a team, you really want to separate the front and back ends.

At that time, I had been using the template engine, based on the idea of service separation, I made a static Web server similar to Tomcat and published it to my Github.

After learning “Deep Understanding of Java Virtual Machine”, I feel that I should not finish learning, I want to learn knowledge into a work out.

After learning Java performance monitoring tools at that time, I felt that monitoring in software form was also troublesome. It would be very convenient to have a visual Web version combined with ECharts chart display.

It took me a few days to complete the standalone version of JavaMonitor project, but later more and more Star, I took some suggestions and made javaMonitorPlus to support distributed monitoring.

It was also during the summer vacation that I received an email from an Ali technical expert. The short answer is whether you want to go to Ali.

Receiving the email at that time meant a lot to me. It made me feel that the distance between BAT and myself was not so far away for the first time. It seemed that EVEN an ordinary undergraduate could realize my dream of working in BAT.

06, the turning point of life

The first turning point in my life came in December 2018.

At that time, I felt as if the technology had reached a bottleneck. I did well in stand-alone architecture, but I still didn’t know much about distributed architecture for enterprises.

At that time, I happened to know that there was a job fair at the award ceremony of the provincial competition, so I carefully prepared a resume and printed 5 copies in color, and planned to deliver.

But when I arrived at the scene, all I saw were small companies recruiting software sales personnel, I was overwhelmed. I always had a kind of pride in my heart, I could go to a big company, I had this ability.

In the end, I didn’t send in any resumes.

Looking at a resume that’s several pages long, I really don’t want it to go to waste. Remembering several recruitment websites I had registered with during my freshman year, I posted my resume on them. Actually, there’s only one, the intern.

I didn’t think there was a job for me because I was too young. I was a sophomore. I was a little surprised when I opened the internship and found an opening for the class of 2020. However, only that, I do not think I have the ability to enter sina, Baidu, jingdong these big companies.

I remember I was in the mindset of not wasting the pages OF my resume and only applying to big companies, not small ones. Then, washed to sleep, the root did not rest assured.

One morning shortly after, while STILL sleeping, I received my first call from the North Research Institute of China Telecom, asking if I was in Beijing. Make an appointment for a phone interview when you are free.

Then, I am very happy. Not long after that, JINGdong called and asked me to come to Beijing for an on-site interview. I pushed it to the end of my final exam. Before long, Sina also sent the mail of the spot interview.

One night, I received a call from Baidu for an interview while I was shopping for food in a shopping mall. I was so happy that I scheduled a phone interview one hour later.

So I didn’t buy anything and went back to school directly. I read for a while and reviewed, because I hadn’t touched the code for half a month at that time. I stopped to review the final exam after just a few chapters of “Finger Offer”. Rejoice oneself bought this “Java programmer interview written test treasure Canon”.

Baidu side, as agreed to. I remember the most I said at that time was two words: forget, don’t understand. After the interview, I think I’m dead. But my habit led me to read all the basics the interviewer asked me about.

In this way, I received a phone call from netease the next day, and the answer was very good. It was just a query of SQL left link that I forgot, because I forgot to review SQL.

Unexpected surprise, received the baidu two interview invitation, THIS time I have seen a lot of knowledge in advance, reviewed the Java virtual machine, multi-threaded knowledge, the two face this basic knowledge.

But unexpectedly, the interviewer asked me the basic principle of Redis and how to set the expiration time. I said no, and the interviewer guided me and said, “It’s not ok, LET me remind you.”

And so I answered the question. I asked you how to design a seckill system. I said you can use a queue. If the queue is full, it will be false.

What about distributed systems? MQ middleware, of course. To tell you the truth, after the interview, I am baidu worship. Soon, netease came to the second interview, the answer is also very good!

Netease three sides come very fast, I feel netease interview very comfortable. Soon, NETEASE HR added me to wechat, and I officially got my first offer in my life!

Baidu three sides do not come tardy, I thought I hung up, wish well, go to netease also good! Hangzhou, comfortable.

But I think there is hope, to Baidu made a phone call, Baidu said, such as a period of time. Soon, Baidu sanmian arrived, sanmian is mainly to talk about the project, the talk is not bad, after all, their own things are appreciated by people also very happy.

Not long after that, BAIDU HR called me directly, saying that the offer had been sent and asking me to confirm it that day.

In the evening, I asked a lot of teachers and seniors, including my family, all hope I go to Baidu, but in the end, I still choose Hangzhou netease, because there is a dream of Ali.

END