Joke Collection Website - Talk about mood - Experience sharing of interviews at Baidu Beijing headquarters

Experience sharing of interviews at Baidu Beijing headquarters

Sharing experience in interviews at Baidu Beijing headquarters

Position type: Client software development

Interview location: Beijing

Recruitment company: Baidu

I have always paid attention to Baidu and have been looking forward to working in Baidu. Baidu happened to come to our school for promotion recently. I went to the seminar with the intention of giving it a try, but it didn’t work. Thinking that I actually got the offer from Baidu in the end, I really feel very lucky!

Press Conference:

Baidu’s seminar came very early, and it was also the first seminar I attended, so the memory is very deep. The advertisement outside the big trap door is very dazzling. There is a very handsome man, I wonder if he is Robin Li, with two horns painted on his head. The general message is that he is a great person. I hope everyone will join Baidu and grow under the attention of great people. I obviously underestimated the influence of Baidu among students. I arrived at the seminar half an hour early and found that it was crowded. I had no choice but to stand in the corridor. Later, the security guard suggested that the students all sit on the floor, so everyone did not care whether the floor was dirty or not. Dirty, both GG and MM sat down. It can be seen that finding a job is still very hard. Indeed, in the following days, everyone has been running for the company in their mind, and they are in a state of extreme both mentally and physically.

Half an hour before the presentation, there was a program showing Robin Li participating in the Nasha Music Concert. The CEO of Baidu is so handsome. It is said that he is the most handsome among the CEOs of well-known companies in China. As expected, he is full of talents. It is really enjoyable to listen to his entrepreneurial experience, watch him dance, tell the origin of the name Baidu and recite poems. Baidu's promotional videos are also very impressive, and the beauty of the Baidu Building also left a deep impression on me. After the briefing officially begins, the content is similar to that of other companies. It is an introduction to Baidu, corporate culture, internal working environment, employee development, etc. Among them, a girl who had just joined the Chinese labor force participated in this presentation. She was very lively and lively. In short, Baidu's seminar lasted a long time and the number of people was very large. Baidu gave me a very good feeling and was very out of reach.

Written test:

When I originally registered for Baidu Online Investment, I used NetEase’s email address to register, but could not receive the activation information. Later, I changed my QQ email address and the registration was successful. As we all know, using QQ mailbox when looking for a job may make the company think that the person is too naive and has a bad impression, so I am very worried and want to register a new account, but one ID card can only register one account, so I can only give up. It is very I am worried that my resume will be deleted. Later I found that this worry was unnecessary, because Baidu basically followed Haibi’s policy, and the written test notification and written test process were handed over to people recruited by Zhaopin. The whole process was crowded and confusing. Baidu, like QQ, also supports Bawang pen, I also like this. The status on the Baidu recruitment system does not necessarily match the actual status. For example, my resume status is always in the "Processing" status, while some people have the status of "Written Examination", "Interview Passed" or "Interview Failed". The written test is scheduled for October 10th, which is almost a month away from the announcement time. This is Baidu's strategy. It will first be announced across the country, followed by written tests and interviews across the country, and finally a nationwide summary and notification of the results. The written test is held in the evening. Like Alipay, everyone sits next to each other, but the test paper is the same. Baidu is not worried about you copying other people's test papers, because you can't copy them. It lasts 2 hours, 6 big questions, and the header of the test paper specifically states that the solution to the problem is It is an art of balancing. If possible, give full play to it. Before taking the test paper, read the questions in full and choose the ones you are best at. Baidu's six questions are roughly as follows:

1. About the characteristics of depth-first, breadth-first traversal algorithms and non-recursive implementation

For this question, I simply combined the depth-first and breadth-first convenience algorithms Write them all down, and then briefly explain the characteristics of its non-recursive implementation, which is that it requires a stack or queue, large auxiliary space, etc.

2. A program correction question may contain errors or security risks.

This question is generally done by students who are familiar with C/C. It is about pointer passing of pointers and some array out-of-bounds problems. It is not difficult.

3. A computer has 1KB of memory and a 1MHZ processor. Among all programs that can run on the computer and terminate deterministically, what is the longest running time? You are required to write down the reasoning process. You can Make arbitrary assumptions.

I assume that this machine is a user-only single-task operating system in real address mode. The running program is constantly changing the memory state without repeated changes. The termination state at the end of the program is a certain exact state of the memory, defined is the terminal state. So the reasoning process is as follows:

1KB memory has the following states: 2^(1024*8) kinds

The number of times a 1MHZ processor can change the memory state per second is: 10^6 times

Therefore, if an application starts from a certain state, traverses all intermediate states, and finally ends in the big termination state, the period of time it takes is the program running the longest time. is:

(2^(1024*8)-1)/10^6 seconds

4. Regarding the issue of compilation dependencies, the general idea is that there are many components in a project, and a certain The compilation of some components requires the compilation of other components. How to find a reasonable order so that all components can be compiled smoothly.

This question is actually a topological sorting problem. For details, see the book "Data Structure" edited by Yan Weimin published by Tsinghua University. I used a concrete example, drew some graphics and data structures, and then expressed the algorithm in text form.

5. Programming questions. It is required to find the longest number string in a string, such as "fafdahruqa12343fa43faf56454354fas", you need to find "56454354".

This question is very simple, and you can directly write code that can be run.

6. Regarding the system design issues of URL, a URL is divided into two parts: site and path. In addition, some fixed-length attributes and variable-length attributes need to be maintained. Fixed-length attributes such as URL are The time of discovery, variable length attributes such as the description text of the URL. It is required to design a system that can store and maintain 10 billion URLs and their attributes, support adding, updating and deleting URLs, and can determine whether a site is in the system. If so, information needs to be given. A site may have multiple paths. If a site is given, all paths under the site are supported.

I used the hashing method for this question, using the site as the keyword for hashing. I designed a data structure to express a site, fixed-length attributes, and non-fixed-length attributes, and designed a path linked list. Store all paths. Then a brief explanation of the functional algorithms for each requirement was given.

The Baidu written test has many questions and is large in size. It is not required to complete them all. Generally speaking, it is OK if you can write down the ideas and the ideas are correct. The key is to think about how to express them. After the written test, I felt better and thought I should be able to get into the first interview.

Technical side:

On the second day after the written test, I received an interview notice from Baidu, because I am not very good at algorithms, but I am good at Windows programming. So the direction I applied for was client software development. The interview location is arranged at Luojiashan International Hotel. Baidu's interviews are all one-on-one. Baidu's technical interviews are said to be very difficult. They will ask some difficult questions and will also ask you to write code on the spot. When I got the interview notice, I was happy and worried at the same time. I guess I was in danger. I was scheduled for an interview at 4:30, and Xunlei’s second written test was at 6 p.m. At that time, I wanted to give up. I felt a little like cannon fodder. After weighing it for a long time, I decided to give it a try and get a feel for it. I arrived at the Luojiashan Hotel an hour early. On the second floor, most of the rooms were open. The interviewer and the interviewer were one-on-one. In some rooms, they were talking, probably about projects or interviews. The officer asks questions, and the interviewer answers; in some rooms, the interviewer is doing other things, and the interviewer is lying on the table, probably writing a program.

There were also several interviewers waiting outside their respective rooms, struggling to listen to the conversation inside. I took advantage of the time I arrived first to quickly chat with several of the interviewers before me, and roughly understood the content and content of the interview. Form, after a while, those interviewers who arrived first went into their respective rooms for interviews, and I was the only one left in the corridor. I couldn’t think of anything in my head, so I simply didn’t think about it. Anyway, I felt I just came here to have fun, so I wandered around outside all the interview rooms on the second floor to watch the interviews going on inside. At half past four it was finally my turn.

The person who interviewed me was a very good technical interviewer. It was said that he was the director of Baidu Client Business Department. He introduced himself at the beginning, and then started to ask some questions about the project, and asked questions around the project. Many very detailed issues were solved, including some things about the Windows kernel, such as multi-threading, process communication, WM_COPYDATA principle, memory mapped files, etc. I answered them all one by one, and he seemed quite satisfied. Later, I couldn't escape from writing a program. He asked me to write a program question. The question was relatively simple, so I started writing immediately. Three minutes later, I wrote it out and added complete annotations. I thought I wrote it very regularly. The interviewer looked at it and found no errors. He asked a question about programming habits with great interest. He asked me why I like to write the statement to determine whether a character pointer is terminated as if(0x00==*pStr), and It's not if(0==*pStr). I said 0 looks too thin, almost like the number 0, and '' is too troublesome to write. 0x00 feels good to write and is consistent with the storage of characters in memory. The technical interview was roughly like this. It was far less difficult than Tencent, and the interviewer was not too difficult for me. It is probably because I am a mechanical major and not a computer major.

After probably more than an hour, after talking about technology, the interviewer said, you are the last one today, we might as well chat for a while, do you have any questions. I asked about the development of Baidu client products and what fresh graduates lacked when entering Baidu jobs. Later, I briefly introduced my situation, and he later asked a question. He said that Baidu's salary is relatively high compared to other companies. Based on your specific situation, do you have any salary requirements? , I asked him what Baidu’s salary system is like. He said that there are several levels of salary. When you first join, you will be assigned to a level, and you will have the opportunity to be re-evaluated every year. I thought about it and said, if only As far as salary is concerned, the goals I have set for myself are the two highest levels. I expect to be able to get this salary based on my own ability. I believe I can do it. On the other hand, as far as my own situation is concerned, My family and I are short of money now, but I am a rural child and I am easily satisfied. Maybe some people are not satisfied with driving a car and living in a villa, but for me and my family, as long as we have a If we eat a grain of rice, we will be happy for a long time. In short, our basic needs are very small, but it does not prevent me from pursuing a high salary. I successfully avoided the interviewer's questions in my answer. When the interviewer heard my answer, he kept saying yes, ^_^. It took me about an hour and 40 minutes to finish the interview. The whole process was perfect, all technical questions were answered perfectly and all the chats were pleasant. When I left, the interviewer was very nice. He gave me a piece of Baidu hi clothes, and also gave me a bunch of dolls, saying they were for my girlfriend. When shaking hands and saying goodbye, he said that he hoped to be in Baidu Tower. meet me. So far my Baidu experience has gone smoothly. Since I spent 40 minutes on the job, I also missed the second deal from Xunlei, and my job search at Xunlei ended here.

The second side of the product:

The process of the technical side was perfect, so I felt that I could definitely enter the second side. When I came back and discussed it with my classmates in the job search group, I realized that many students, For example, I met two people from the operation and maintenance department at once, so I couldn't help but wonder what was going on. On the next day, some students from the operation and maintenance department received the third interview notice and went to interview one after another, but I was still waiting. On the third night, I couldn't stand it anymore, so I called Luojiashan Hotel and transferred to the interview room. The interviewer recognized me as soon as he heard my voice. He told me that each department is different. , the client’s classmates may have only one interview in Wuhan, or they may have two interviews, but so far, the first interview has not been completed, and I have been asked to wait patiently for notification.

Only then did I realize that Baidu still called many people for interviews. Because each interview at Baidu lasted an hour, it was reasonable for the time to drag on. On the third day, I finally received a call from HRMM, telling me to go for the second interview. During the first interview, I asked the interviewer about the contents of the second interview. He told me that it was to test system knowledge. For example, if I was asked to design Baidu Hi, what aspects should I consider, so I also learned about it from the Internet in the past few days. Baidu's client product, and I guess how it is implemented mainly from the technical aspect. In fact, in the second page, I know that it is only a little useful. The difference between the two sides is not the technology, but the understanding of the product.

I was scheduled for an interview at ten o'clock in the morning. The interview location was Room A. I arrived at the Luojiashan Hotel at ten past nine and met a girl and boy from Wuhan University. After asking, I found out, It just so happened that they were in room A on one side, and the interview room on the other side happened to be my room on the other side. So we communicated with each other, and I realized that almost all the content on the second page was about product issues, and there were no technical issues. The door of room A was closed. At ten o'clock, I rang the doorbell, but no one answered. I guessed that there might be someone interviewing inside, so I continued to wait. When ten o'clock, the boy from Wuhan University reminded me I said it would be better to just knock on the door, because the delayed time was my own interview time. Fortunately, with his reminder, I knocked on the door directly. After opening the door, the interviewer asked me, are you late? I said no. I arrived at nine-ten and waited outside the door. When I pressed the doorbell at ten o'clock, there was no response. I thought you were interviewing someone else, so I waited for another ten minutes. After sitting down, the interview officially began.

At the beginning, he asked me which network products I had used. I was confused at the time and could only name a few, such as QQ, Fetion, and online games. Later, under his guidance, I mentioned Thunder. BT, Foxmail, etc. come, and this performance is not very good. Later, he asked me if I knew anything about Baidu's client products, so I said Baidu hi. He then asked me what I thought of Baidu hi, and I said frankly that I had only used it once when I was studying one, and later I have never used it. I said that Baidu’s products are only used for search, and no one knows about other things. I was talking about Baidu with a classmate today. My classmate said how could Baidu be so awesome with only one web page? , it can be seen that Baidu’s other products are indeed not enough. As far as I know, you hope to use Baidu hi as a platform to integrate your products, just like the QQ client integrates most of QQ’s businesses, but I personally feel that this is very ineffective, because Baidu hi is positioned as instant messaging, and QQ seems to have an insurmountable dominance in the field of instant messaging in China. When Baidu hi comes out, I will consider it. Are there any benefits to using Baidu Hi? No, because no one else is using it. Who should I contact? In fact, from another perspective, Baidu should not use the instant messaging client as the entry point, but should use its own characteristics and search as the entry point. As far as I know, Baidu's search is only presented in the form of IE, although users can set it themselves. Some search preferences, but they are based on cookies, but I personally don't like to use cookies. I think it violates my privacy, so I can't set my search preferences at all, which I think is a pity.

Can Baidu develop a search client that provides registration for each user, saves the user's search settings, and integrates other products on this basis, such as Baidu hi, Soba, Baidu hard drive, etc. , a product launched with a brand-new search client concept is believed to be much more popular than a product launched with an instant messaging concept. He then asked me which network products I was dissatisfied with and which areas needed improvement. I said that the response speed of the web Thunder interface was too slow, and sometimes there were bugs in which web pages could not be opened. Tencent QQ not only did not develop its own login tool, but Canceling the entry parameters of QQ caused the currently popular QQ login to not work. I explained to him that I had a need to log in to multiple QQs on one machine. I had also developed two versions of the QQ login. The login device could still run normally before the 2008 version, but after canceling the entry parameters in the 2009 version of QQ, my login device could no longer work. Tencent's approach made me feel very inconvenient. He then asked, why do you think Tencent would prohibit users from logging into multiple QQs on one machine? I said maybe the server is underloaded? He said it was impossible.

I said that may be to prevent QQ accounts from being illegally used. For example, some users may log in to multiple QQs on one machine to send advertising information. He then asked, how do you think users can be prevented from doing this.

I actually have no experience with this, so I had to talk casually and solve this problem from the perspective of frequency of sending messages, content duplication, prompts, reports, etc. Later, he asked me to be more detailed and design. A solution to this problem. I talked a lot.

During the second interview, I obviously felt that this interviewer was much more powerful than the first interviewer, because I tried many times to lead him to a technical field that I was familiar with, but he seemed He ignored me and continued to ask his own questions, which were all about products. Sometimes, based on my answer, I will further pick out one or two points and continue to ask. The interview lasted for about forty minutes. The interviewer said it was almost done and asked me if I had any questions. I asked him why he asked us to make technical products. He said that it was because when he was working in the company, there were some difficulties in communicating between the technical people and the product makers, and it was very difficult, so he designed it. This interview session is mainly to test the technical interviewer's ability to understand the product, and it is also considered one of the more important inspections.

The second interview lasted exactly fifty minutes, plus the ten minutes I wasted, it was an hour. I’m really grateful to that classmate from Wuhan University. If he hadn’t reminded me, maybe the interview time would have been shorter. Therefore, I also remind future students that if your interview time comes, you can’t be sure whether the interviewer is interviewing other people. You can try knocking on the door, otherwise the delay will be your own loss.

Final phone interview:

Baidu completed the second interview in the morning on the 17th, and then went to meet with Huawei in the afternoon. During this period, I went through a lot of writing and interviews, and got offers from Huawei one after another. Alipay offer, ASMPT offer, Tencent offer, CLP 29 offer, Chengdu Aircraft Design Institute offer, while doing other things, I have always been thinking about Baidu's information. On the 23rd, I received an inexplicable letter saying that my interview would be comprehensively evaluated and I would be notified within a month. A classmate of Ruo Ruo analyzed that it might be a tactful rejection letter, which means that I should stop staring at Baidu and look for others when the time is right. In fact, I later learned that students in some departments received offers on the 23rd, while some students in the client I applied for received a rejection letter on the 23rd. I received an email asking me to wait. There should still be a chance, so I kept waiting and waiting. On the 29th, one after another students had news, such as receiving offers or being called to Beijing for interviews. On the 31st, when I had just rejected the contract with Tencent, the news from Baidu finally came belatedly. At 6 o'clock in the evening, I received a call saying that the client had passed my resume to the quality management department and felt that I was more suitable. The quality management department's testing tool software development team asked me if I was interested. I said yes, since my project was related to software test automation, and we agreed to have a phone interview at 9:30 the next morning.

At nine-thirty the next morning, the very punctual phone rang. We went according to the scheduled plan. First we asked questions about the project in great detail. Then we asked about my knowledge structure, and specifically asked about my work as a research assistant, because when I was a research assistant, I was responsible for "Software Engineering". "Quality System" course teaching management, he asked me some basic knowledge about software engineering, as well as relevant knowledge about the five levels of CMM. He asked me about the content of the course and my basic understanding of software quality management. Because this class was taught by my tutor, I felt deeply about it. I felt that doing software quality management is a kind of state and a kind of thinking. I truthfully told him some of my understandings and feelings, and my feelings about myself. Very nice. Finally, I asked why my resume was passed to the quality management department and the working situation of the quality management department. HR answered them one by one. I asked about the next process, and HR said, next There will be a discussion meeting with human resources to make the final conclusion. If you are admitted, you will receive news within a few days. If you are not admitted, you will receive a rejection letter within two weeks, because those who are admitted There are very few, so the result will be faster. There are many people who are rejected, so it will be later. ;