It took 3 months to prepare for ByteDance and won 65W Offer in 3 rounds of interviews in the Spring Recruitment

Recently, I received a contribution from a Python engineer friend who just joined Byte. The following content is from his personal experience. A certain pair of non-master's spring recruits got Byte 65W offer , thank him for sharing his heart ( hard goods notes are attached at the end of the article )

insert image description here

personal profile

One dish J, both undergraduates and masters are computers (two ordinary books), 2021 fresh masters, back-end direction. Personally, I also like to read books. I have read technical books and the like. Finally, some classic books will be recommended below.

Let’s talk about the results of the spring recruitment first: I have won offers from four major manufacturers: Byte, Huawei, Station B, and Didi ’s offers.

I rejected Kuaishou, Meituan, and Xiaomi's two-face interview invitations because the base was not my intention, so I refused.

In the end, I chose the byte that was most in line with my values, and rated it 2-2.

Interview experience (total time 1 hour)

The company's main project is to do automated testing systems. I hurriedly ate breakfast in the morning and took 20 subway stations to the first floor of C1, Financial Center Building. There is access control to enter. I took my ID card and entered the reservation code on the machine on the first floor, and I will give a piece of paper with a QR code on it. QR code to get in. When I came to the eighth floor, there was still access control. I was really speechless. I called the byte quality department, and she opened the door for me. The working environment is quite good. The most important thing is not to talk nonsense, and you can also give yourself a summary of today's interview.

insert image description here

1. First make a self-introduction
2. Ask a question for each project you have done, and ask for a detailed explanation
3. Python's memory management mechanism and garbage cleaning mechanism
4. How to insert or modify a field in MySQL database
5. Python2 and Python3 The difference
6. What encoding is used in Python3, the function of
Python3 transcoding 7. How does Nginx deploy the server with an IP
8. List all methods in lists and dictionaries
9. How to use js to write multithreading
10. How does Django implement a page
11. What are the ways of socket programming and how to implement it? 12.
Here is a pen, please list 10 uses of this pen

Here I will make a self-summary by myself. The overall questions asked are not too difficult to look back on now, so I will not answer them one by one. However, most of the questions asked are relatively general, which leads to a problem that you must have your own logic in answering the questions. Don’t be too nervous because of the interview or the questions asked are very broad, so you don’t know where to start.

After reading this sutra shared by netizens, I was deeply touched. First of all, he realized that he had many shortcomings in his work, such as insufficient theoretical knowledge, lack of solid experience in projects, and lack of practical experience in projects. There is a saying that "work with excellent colleagues, and you will become excellent." Tencent felt that he was suffocating, but life is like this, if you don't work hard, you will always be surpassed by others. To be a person at the bottom of the pyramid; secondly, we must learn good characters, such as humility and rationality; and we must learn to choose, choose an industry, choose a company, choose a team, whether it is work or life, we will always face various choices, the choice is not right Wrong, but you can choose, you can choose the direction that suits you, the direction you like, and you can go further.

before the interview

Market environment

Let's talk about the big environment first. China's Internet environment has become stable and mature, but there are still many programmers at the junior high school level, and there are very few senior programmers. Therefore, if you want to stand out among many candidates, strength is king.

personal positioning

I think that every recruiter should make a reasonable assessment of his position in the market, so as to know exactly what type of company he is looking for, whether it is a large company or a large platform, a small and medium-sized enterprise, or a startup. What about the company? The basis of the evaluation depends on your own strength, the direction of your career path, and your understanding of the market.

However, it doesn’t matter if you don’t know. When delivering the company, you can vote for all types of companies, and all large, medium and small companies will meet. In short, don’t put eggs in one basket, and create more opportunities for yourself. The interview is a good way to get in touch with the outside world and understand your own ability level, which can help you have a clearer understanding of the market environment. After the interview, there is usually a rhetorical question. You can also seize the opportunity to ask more about what the other company is doing, the technology stack it uses, and so on.

For myself, I take the interview as a good opportunity to test myself, and at the same time give me the opportunity to exchange technology with other companies. Therefore, usually in the process of work, you can also go out for interviews every three to five to see the geometry of your ability level, so as to avoid being out of touch with the market for too long, and the situation of boiling frogs in warm water.

CV

The next step is to make a resume. There are many tutorials on the Internet on how to make a resume. I think the key to a technical resume is to clearly explain the projects that you have done, as well as your personal technology stack. These are the points that are frequently asked in interviews. In addition, because I am obsessed with markdown, I tried the markdown style resume for the first time, and the effect is not bad, quite clear.

channel

For the selection of recruitment channels, it is best if there are internal referrals from small partners. In addition, it is recommended to register a few more apps and look for interview opportunities through a multi-pronged approach, such as pull hook, boss direct recruitment, hunting and so on. The recruitment page of the official website of some companies you want to go to is also a good source of information.

interview preparation

As a technical interview, how to review and prepare for the interview, I think it can be considered from the following points.

Data Structures and Algorithms

Why put this part in the first place, because this is a very important part in technical interviews, but it is the most easily overlooked part in normal work. It is said that "interview to build an aircraft carrier, work to screw the screw", if it is not an algorithm post, the programmer's use of algorithms in daily work is very limited, but this is a focus of the interview.

I have met about a dozen companies, and basically every company will take some algorithm questions, or ask you to talk about your ideas, or write the program directly. If you don't prepare it in advance, you will be very uncomfortable, especially the whiteboard algorithm.

So, my advice for preparation is to spend time practicing the algorithm questions at least a week before the interview to keep your hands on it.

First of all, the leetcode website is strongly promoted. The Chinese station is https://leetcode-cn.com/ . leetcode is a very well-known website for writing questions, which gathers classic algorithm questions from major companies, and you can submit codes online, customize test cases, view other people's questions, and so on. If you feel that the solutions on the Chinese site are not what you want, you can also take a look at the foreign language site https://leetcode.com/ , the order of their questions is the same, but the Chinese site is stronger in terms of localization.

If you are pressed for time, I suggest you focus on reviewing the knowledge points of the following data structures and algorithms:

  1. Various sorting algorithms, bubble sorting, heap sorting, quick sorting, etc., time complexity and space complexity analysis, can be handwritten.

  2. Common data structures. Linked list, binary tree, heap, stack, etc.

  3. Classic algorithm problem. (to be sorted)

Basic knowledge

In any technical interview, basic knowledge must be the top priority. For python programmer interviews, I think the following three items are more important, and the frequency of inspections is also very high.

  1. language foundation

Mutable objects, immutable objects, decorators, iterators and generators, threads and processes, magic methods, dynamic interpretability, metaclasses, and more.

  1. web basics

http requests, status codes, network security, order in which requests are processed by django, cookies and sessions

  1. database

MySQL transactions, indexes, locks, and performance tuning, redis in the nosql database are more investigated.

Project experience

Generally speaking, basic knowledge is very important for graduates. For social recruitment, project experience is a very important part of the content.

I suggest that you can prepare your own projects from the following angles:

  1. Project Introduction

The STAR model is recommended.

S—situation, what is the background of the project T—task, what is your task A—action, how you do it, R—result, what is the result

  1. Difficulties and highlights in the project

I believe that everyone who has actually done their own projects will definitely think about their own projects. To summarize the most difficult and most exciting places in this project, you can also use the STAR model above.

  1. project framework

Some interviewers will ask you to draw out the project's frame or design drawing on a blank sheet of paper. This can also be prepared in advance, so that it is organized and clear. If you draw it on the spot, it is easy to mess up.

Summarize

The interview was a difficult battle. I found that in the tense game atmosphere, I never experienced the so-called extraordinary performance. After preparing for 100 points, it is very good to be able to perform 60 points. Therefore, it is recommended that every interviewee prepare in advance some things that must be asked (personal introduction, project experience, etc.)

Career Development

As a code worker, for the vast majority of programmers, the road to becoming a real earning programmer is still very long, and they cannot slack off for a moment.

We can't speculate from the perspective of HR or the perspective of technical leaders which state of the interview will be more favored by the interviewer. But through the vast amount of interview experience we have accumulated, you can somewhat infer some of the necessary conditions for becoming a competitive programmer.

Big bosses gather, rich information

At the beginning, I met a very, very senior senior at Byte. He arrived at Byte three years earlier than me, but his level was not very high for various reasons. I asked him at the time, if you are so dissatisfied with the status quo, why don't you want to leave and find better opportunities?

He pondered for a moment and told me, he said that although I am not happy here, the people I have come into contact with are all very good. If I have a problem, I can also discuss it with you. If I go out, if I encounter problems again, there may not even be a person to discuss.

When I heard it at the time, I just thought it made sense. When I look back on it now, I feel very profound. Three views, patterns, and capabilities. Those who can enter a large company are generally not too bad in these three aspects. If nothing else, as far as personal ability is concerned, I have traveled abroad for a few months, and I have the honor to meet many colleagues from various overseas famous schools, and learn and communicate artificial intelligence with them. This really gives me a deeper level of AI. know.

In addition to excellent colleagues, large companies often have a wealth of internal documents and materials. At that time, I saw a lot of excellent articles inside Byte, and there were also many excellent technical salons and sharing. Now that I think about it for two years, I haven't been there a few times, and I haven't read many articles and materials. It's a pity to think about it now. If nothing else, in the field of recommendation, papers of good quality in recent years often come from large companies, especially large domestic companies, mainly Tencent, Huawei and Toutiao. In addition to the public papers, there are many technical-related materials and documents inside the company, which are really valuable and very precious.

All the information shown in this article is shared for free, just scan the WeChat QR code of CSDN official certification below [ 保证100%免费]

insert image description here

Python Knowledge Book

Linux Knowledge Book

Crawler Query Manual

Moreover, these materials are not scanned versions, and the text inside can be copied directly, which is very convenient for us to learn:

Data Analysis Knowledge Handbook:

Machine Learning Knowledge Handbook:

Financial Quantitative Knowledge Handbook:

Post promotion, learning exchange

We need a lot of front-end positions, python positions, Java positions, Android and iOS development positions, work location: Beijing Byte, welcome to school recruitment and social recruitment scan the QR code below to find me

insert image description here

If you feel that your learning efficiency is low and you lack correct guidance, you can join the CSDN official technical circle with rich resources and a strong learning atmosphere to learn and communicate together!

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326838293&siteId=291194637