After two months of spring recruitment, the dust finally settled recently, drawing a successful end for the first internship in my life. Now I decided to sum up my spring recruitment preparation and experience, and fight again for autumn recruitment. The directory is as follows:

  • For record
  • How to prepare
  • Knowledge test
  • Conclusion reflection

1. Spring recruiting record

Basic Information: A 985 university, non-computer major junior student, ranking 4/74 in three years, GPA 3.62/4, job intention is Android development.

After net “CV screening and the written examination, a total of seven companies received the interview invitation, tencent pre-selection, baidu, Meituan comments, jingdong, huawei, a perfect world and tencent dalian, in addition to jingdong because of location is not appropriate to give up the interview, the other is very lucky arrived in end face, all customs clearance successfully completed all the interviews, Finally, I received offer from Meituan, Huawei, Perfect and Tencent Dalian. After consideration, I decided to go to Beijing Meituan for internship.

Meituan is indeed a very good factory in my mind, with strong technical atmosphere and perfect training system. In particular, Java technology is second only to Ali. I can say that I am looking forward to the following internship!


2. How to prepare

First of all, a general introduction to the whole recruitment process of technology:

  • There is no group interview for technology, which usually requires 1 to 3 rounds of technical interview +1 round of HR interview. The technical interview examines whether technical ability and learning ability are competent based on basic and practical projects. The final interview is generally hr interview, which examines whether resume authenticity, candidate’s personality, communication ability and other related qualities as well as personal willingness and development match the position.
  • From online resume screening to written examination to every round of interview, it is possible to be eliminated. Completing all interviews does not necessarily mean that the candidate is stable. Hr will sort the candidates comprehensively and select the best ones at last. It is recommended to ask for the interviewer’s opinion of you at the end of the interview to get a general idea of your chances of passing the interview.
  • The procedures of each company are different, and the HR notice shall prevail. For example, I received five rounds of interview in Tencent in advance, and was informed that TWO rounds of interview were temporarily added on site. In addition, there are too many technical aspects, it is likely to be picked up by different departments to take turns in the interview, that is, some companies allow multiple interviews before the spring recruitment deadline, as long as there is an interested department will lock the resume to initiate an interview, otherwise put back into the resume pool.
  • There are telephone interviews, remote interviews and in-person interviews, and there is always the possibility of tearing code by hand, especially in the video interview interface and compiler.

Then share your personal learning experience:

In the second year of my sophomore year, I decided to develop Android as my career direction. First, I simply learned Java by myself, and then I watched videos on MOOCs. Besides, I became familiar with the development environment by writing small demos. After several series of tutorials, I started to read books on Android, such as “The First Line of Code” for several times. After all, as a beginner’s book, I ensured that all knowledge points and examples should be thoroughly thoroughly practiced. After that, I prepared two projects, among which MY personal APP was to integrate what I had learned through the process of independent creation. After that, I spent a month to finish “Exploration of Android Development Art”, because it would be a little difficult for me to advance to the next level, so I forced myself to read more, look more and do more by writing a summary. In the later period, I also began to grasp other basic knowledge, such as “Big Talk Data Structure”, “Big Talk Design Pattern”, as well as computer network, algorithm, Java, etc., details will be discussed in the next part.

(1) Resume

  • The importance of the resume is not to say more, although there are many ways to get internal promotion opportunities to avoid resume screening straight through the written test, but in the end it must be ** resume + written test score + (and possibly personality assessment) ** to determine whether the interviewer is willing to give an interview, and even if the resume is good enough can directly avoid the written test.
  • A technical resume should be clean and one page long. It should include personal information, education, internships, projects, student work, awards, some or all of them.
  • One of the functions of resume is to make a preliminary screening for HR, which indicates that it is necessary to emphasize relevant skills, such as Java proficiency, even if HR does not know the technology, they know that your skilled technology is really matched with the position; The other is to help the interviewer explore the questions, so it is best to write clearly the key technical points in the internship and project, so that the interviewer can further inquire.
  • Strongly suggest that if you have a personal blog must write! In front of Tencent, the director had seen my website and left a good impression on him. In the interview, he didn’t have too many technical problems and gave me the evaluation that I had a solid foundation and was eager to learn, which showed that my good learning habit was a plus.

(2) Network application

  • To March and April a large number of companies open network channel, explosive growth of information, a little attention may have passed the deadline network application time, in fact, there are many channels can help get a hand of job information and even push opportunities, all kinds of job search public number and wechat group (the Internet, circle, Offersir, Thought into, disciple..) , job hunting website (internship monk, street net, pull hook net..) , information platform (Zhihu, Niuke, Lizhi..) , and ask senior students to recommend them, etc.
  • It is suggested to use Excel to summarize the delivery situation, such as the deadline for online application, time for written examination, time for interview, etc., the post of delivery, work place, interview place, etc., and so on when the delivery of 20 or 30 enterprises will find the important role of this form.
  • Network application as early as possible, network application is also a hard work, do not wait for the last pile of many companies network application, will find a pile of systems and forms to fill out. In addition, do not always think that you are fully ready to go to the network, feel good review to go to the network, after all, more experience comes from personal practice.
  • About what’s going on with “inpushing.” The reply from goose factory is very apposite:

  • In fact, the biggest role of internal push is to let internal push help you answer questions, inquire internal status and the interviewer’s evaluation in the following job hunting process, better understand the position and interview situation. There is no shortcut than the normal network application, there is no need to feel uncomfortable because there is no internal push, and many enterprises just avoid resume screening, rather than spend a lot of time looking for internal push, it is better to prepare for the written test and interview.

(3) Written test

  • Technical written test is a very important piece is a large number of programming questions (especially the universe full screen as ACM algorithm questions), familiar with the programming environment and handwritten code is very important, here recommend several enterprise real test questions bank: niuke.com, Sicode network… However, ashamed to say, they did not practice a few sets of questions, are through direct participation in the formal written test to experience the written environment, so the late pass rate of the written test was high.
  • In addition, many companies will not give a single paper for a certain direction, and may develop a unified paper for the class, so it is inevitable to encounter non-professional problems, but there is no need to systematically study, so the question bank will come into play.

(4) Interview

  • About the basic knowledge of the interview in detail, there is also a large project, the degree of preparation varies from person to person. In addition, some content needs to be prepared, such as the most basic self-introduction, project introduction, etc., around the resume to explore the questions that may be asked, as well as the HR will ask a variety of questions, such as career planning, personality and strengths and weaknesses, etc. In short, technical skills are important, but other skills can not be ignored.
  • Pay attention to technical field interview avoid wearing formal clothes!
  • It is recommended to bring your own pencil eraser, which can be easily modified when writing procedures.
  • In fact, interviews are a good way to fill in the blanks. It’s best to take time after each interview to summarize, learn a little bit at a time and make a big step forward.

(5) Wait

  • After the interview is over, the period of waiting for the results may be long. The whole front may be pulled very long, must wait with sufficient patience, mentality is very important! Don’t lose heart if you lose, get ready as soon as possible, opportunities are always for those who have been preparing! It is recommended to pay close attention to the interview dynamics of the same period of junior partners in real time, and obtain the fresh-baked face classics, metaphysical offer what is also possible!


3

Standing on the shoulders of predecessors, the knowledge framework summarized by Ruheng is used for reference here. If you have enough time to prepare, study each module as systematically as possible. Do not blindly memorize the questions, because the interview will not be one or two sentences to skip, most of the time will be in-depth questions, and the systematic knowledge will be deeper and more solid. Therefore, I did not summarize the interview questions here. It is certainly not bad to learn more and learn more widely.

(1) Java– Recommended books: “Crazy Java Handouts”, “In-depth Understanding of Java Virtual Machine”

  • Java Basics (Java Collections, Reflection, IO…)
  • Java concurrency (multithreading concurrency, synchronization…)
  • Java Virtual machine (memory model, GC, class loading…)
  • Java new dynamic

(2) Android– Recommended books: The First Line of Code, The Art and Exploration of Android Development

  • Android Basics (14 articles in my Getting Started series, Portal)
  • Android Advancements (11 articles in my Advancements series, Portal)
  • Open source frameworks (OkHttp, Retrofit, EventBus…)
  • Google News

(3) Data Structure — Recommended book: Big Talk Data Structure

  • Linear tables, stacks and queues, trees, graphs
  • Hash lookup and sorting
  • Massive data processing

(4) Algorithm

  • Sword Finger Offer
  • LeetCode

(5) Design Patterns — Recommended book: Da Hua Design Patterns

  • Create mode (6 types)
  • Structural mode (7 types)
  • Behavioral patterns (11 types)

It’s best to associate design patterns with Android, such as View event distribution being an embodiment of the chain of responsibility pattern.

(6) Computer network

  • TCP/IP related
  • HTTP and HTTPS are related

In particular, the network part stressed that it had not been too relieved before. Later, Tencent had a crazy chat about network technology for more than an hour in the fifth meeting, which was very broken down. It may be that their network related experience is really little, hoping to attract attention.

(7) Operating system

  • Processes and threads
  • Memory management

(8) Database

  • The SQL statement

It may work with Android’s built-in SQLite database, such as how to do batch processing and how to do transactions in SQLite.


4. Summarize and reflect

(1) Spring recruitment has come to an end. I have summarized my current weaknesses in basic knowledge and made a learning plan for the next stage. For example, I am not familiar with network projects and relevant frameworks, and I hope to further learn and master them in the upcoming internship. The algorithm is not enough, then every day to brush several “Sword Finger Offer” and LeetCode; Due to lack of Java foundation, “In-depth Understanding of Java Virtual Machine” is included in my reading plan.

(2) In dozens of interviews, one of the interviewers gave me the most impressive advice, which I would like to give to every developing-minded friend: “Learn to think and solve problems from the perspective of an engineer”.

(3) before the development has been very want to go to a city, and particularly like a factory, more confident and also the results finally hesitating to interview invitation, also in the waiting for delivery in order to learn there are several other companies, lucky I chose to try to not hang in a tree, or may only autumn recruit war again, but still miss a lot of companies, a little regret. In addition, in the preparation process also found you factory charm, it can be said that the corner of love. So please don’t give up every opportunity, these may be your choice of capital!


Finally, I hope everyone can wait for their favorite offer!