Interview experience from Goose Factory (dry stuff)

Recently, major factories have started spring recruitment and summer internships in full swing . Are you also preparing, but you have no experience in interviews and don’t know how to prepare? The editor of Snail has also received inquiries from some juniors and juniors. I also looked through my own interview records and related information. Here I will briefly organize and share them with you from the perspective of interviewers and interviewers. At the end of the article, I will also give you Provides some " dry information ".

Let me emphasize here: all sharing is to establish how to drive yourself to learn knowledge more efficiently and express yourself better, rather than to find out the so-called pure "skills" that "make something out of nothing".

Let me talk about my own experience first. Because the internship was earlier, I experienced Sogou and Ping An Research Institute successively during my internship. There are many things in school and it is relatively short-term_{There are many things in school and it is relatively short-lived}There are a lot of things at school , so it’s relatively short, three internships at Tencent, basically all related to natural language processing positions such as search and reading comprehension. During the autumn recruitment period, I also received relatively good offers from several leading manufacturers, and finally chose Tencent.

This article is based on the experiences of several students who have gone abroad. It first introduces how to prepare for interviews ; and then shares some questions asked during interviews . These questions cover topics from Microsoft, Alibaba, Toutiao, Tencent, Baidu, and the United States. Interviews with Tuan, Sogou, JD.com, Kuaishou and a few start-up companies are all experiences in actual interviews. I hope it can bring some reference and inspiration to everyone.

Because the editor of Snail mainly works in NLP, many chestnuts and final interview experiences are based on NLP. I think the preparation methods for other positions are similar.

Reply to the official account [Tencent Internal Recommendation] to obtain the qualification for internal recommendation.

1. Interview preparation

I have divided the interview preparation into the following parts.

1.1.Resume preparation

The purpose of a resume is to allow the interviewer to quickly build a "portrait" of you in a few minutes to evaluate whether you are qualified for the current position. Therefore, your resume needs to highlight your abilities and skills. I think there are also certain skills in it. Of course, the use of skills must ensure authenticity. This is the minimum respect for the interviewer and yourself.

Many resumes I see fall far short of this goal. Let’s start with a few particularly common questions:

  • The key items on your resume are very weakly or even almost irrelevant to the position you are interviewing for. Generally, those key projects that can highlight your abilities are not highlighted. It is also possible that the position you submitted is not very suitable for you. The first situation I learned is mostly the case .

  • The project introduction is too casual. The project includes real projects, competitions, and papers. _{The projects include real projects, competitions, and paper}Projects include real projects , competitions , p a p e r, people cannot feel the characteristics of the project and your abilities. Either the project is written too simply, and no attention is paid to the difficulty of the project and what you have done; or it is written too complicated, and you cannot get your key points at all.

A resume first explains the basic situation and job search intention. On this basis, I think two parts are more important: project (internship) experience and mastery of skills. There are three things you need to know about the project: 1. What problem was solved ; 2. The methods tried and the results achieved should be as standardized as possible ; 3. The role you played in the project . In terms of skills, highlight what you are good at, what you are familiar with, and what you understand.

Here is a description template that I think is okay for your reference. Please reply to [ Resume Template ] on the official account to get it.

1.2.Project sorting

Projects serve as an important measure during interviews. Be sure to sort out the items on your resume clearly and ask yourself:

  • What is your plan to solve the problems encountered in this project? What are some similar methods?
  • Details and innovations in the project. For example, what is the loss of the algorithm model? What is an optimizer? The specific structure of the model must be clearly expressed. Why do you design it this way?

My experience is that many times things that I understand quite well are often difficult to explain during interviews. In the final analysis, I still haven’t sorted it out clearly. A plan is best explained with drawings and symbolic formulas.

1.3.Basic knowledge

If you do a lot of projects, you have a great advantage, because you do the projects yourself, and you are relatively clear about the methods used. Basically, the one-hour interview will focus on questions that you are relatively clear about. But if you have few projects, the interviewer will definitely ask some basic knowledge to evaluate your basic abilities. For example, when I had few projects in the early days, I encountered some problems such as hand-drawn GRU and LSTM.

For some basic knowledge, I strongly recommend that you form a document yourself. I will organize some basic knowledge into documents in the later stages of graduate school, and add in the preparation before the final interview, forming a 100-page natural language processing knowledge document. This document can be used to chat with me privately on the public account, _{This document can be chatted with me privately on the public account,}You can privately chat with me about this document on the official account ,I can share it with you, _{I can share it with you,}I can share it with you ,I will post the link after I have sorted it out_{I will post the link after I have sorted it out}I’ll post the link after I sort it out .

The basis of the algorithm interview includes basic knowledge such as linear regression, logistic regression, clustering, perceptron, SVM, naive Bayes, decision tree, EM, etc., as well as back propagation, loss function, model structure, etc. related to your research field Deep learning knowledge. These must be made very clear, otherwise during the interview, the interview will be interrupted due to being unclear or nervous for a long time. Toutiao once interviewed for 4 and a half hours in a row... _{Toutiao interviewed for 4 and a half hours in a row...}Toutiao once interviewed for 4 and a half hours straight ...

The recommended books are "Statistical Methods" by teacher Li Hang and "Xigua Book" by teacher Zhou Zhihua. Xigua Book is relatively introductory, while "Statistical Methods" is relatively systematic. Here we also share a resource library called DeepLearning-500-questions , which is suitable for algorithm students to study carefully. It contains some basic questions about machine learning and deep learning. Once you understand these, you will basically have no problem facing interviews. .

1.4. Algorithm programming

In the regular batch of algorithm interviews, there will be an algorithm programming exam first. The content of the exam is basically regular data structure questions and technical questions. The difficulty is also varied, and some questions are really disgusting. When approving or recommending in advance, there is generally no special programming test, which is relatively inhumane . Therefore, I also recommend conducting interviews through internal recommendation. Reply to the public account [Tencent Internal Recommendation] to obtain the qualification for internal recommendation_ {Reply to [Tencent Internal Recommendation] from the official account to obtain the qualification for internal recommendation}Reply to the official account [ Tencent Internal Recommendation ] to obtain internal recommendation qualifications

Regardless of whether there is an online algorithm programming exam, the algorithm test will definitely be designed during the on-site interview. In an interview, there will basically be one or two algorithm programming questions. I also met ORZ who had 4-5 algorithm programming questions in an interview _ {ORZ}O R Z

How to prepare the algorithm? If your algorithm skills are good, "Sword Pointer Offer" is basically enough. When I was in college, I was a veteran of ACM. I basically only passed the Jianzhi offer and didn't study other questions specifically. If your algorithm skills are relatively weak, you still need to go through "Sword Finger Offer" several times because you may forget_{because you may forget}Because I might forget, and study some easy and medium type questions on leetcode. You can read less hard type questions. Generally, you will not deliberately make things difficult for people. In addition, there are certain scopes when answering questions, which are basically sorting, recursion, linked lists, stacks and queues, bisection, binary trees, and simple dynamic programming. My interview did not exceed these scopes.

Here I also recommend a pretty good algorithm series to you, fucking-algorithm. The name is very magical_{The name is very magical}The name is magical, the explanation is relatively clear and basic.

Regardless of whether your algorithm ability is good or bad, you must look at some interview algorithm questions. Because the interview may not only examine your data structure, but also your rigor and business. For example, the question may involve actual business. I have had the experience of LRU where handwriting deformed during the interview. If I don’t prepare in advance, I will basically fail. There is no way to consider it comprehensively.

2. Interview experience

In this part, I sorted out nearly 10 interviews for my own internship and autumn recruitment . There were more internships, and some of the questions were not completely recorded_{There were more internships, and some of the questions were not completely recorded}There are too many internships , and some of the questions are not completely recorded, as well as some real interview experiences that have been launched around you. These interviews cover people from Microsoft, Tencent, Alibaba, Toutiao, Baidu, Meituan, Sogou, JD.com, Kuaishou, Xiaomi, NetEase, Ping An and a few start-up companies. You can use these Test yourself with the questions, I hope it can help you have some intuitive understanding. Because some companies are involved, the company names corresponding to each interview will not be posted here. Simple inference based on the order of the previous company names, hahaha _{Simple inference based on the order of the previous company names, hahaha}A simple inference based on the order of the previous company names , h a h a h a

Because the questions related to the project are more personal, I won’t post them here, but you must understand the knowledge points involved in your own project, remember!

Interview record 1

one side

  • Self introduction
  • Introduce the previous internship project and some details
  • Operating system deadlock phenomenon, how to solve deadlock (can be determined), the difference between process threads
  • Methods to solve overfitting (regularization, dropout, BN, LN)
  • Algorithm question: In-order traversal of a binary tree is recursive and non-recursive, subsequent non-recursive

Two sides

  • Mainly ask about the project and some details, and then ask casual questions, it feels more like chatting
  • Specific formula and implementation of softmax

Three sides:

  • Introduce related projects
  • Algorithm question: Given a binary search tree, find the top k and maintain the shape of the tree

Interview record 2

  • CRF determination formula
  • SVM algorithm
  • The difference between quasi-Newton method and stochastic gradient descent
  • Mutual information (information gain)
  • KL divergence
  • The shortest edit distance is basically extended to another question: Determine whether the shortest edit distance is less than 2
  • Find the maximum sum of subtrees of a binary tree
  • How to optimize the speed of quick queue
  • One function of git is to see code changes, so how to implement this logic? That is, S1=[a1,a2,a3,…,an], S2=[b1,b2,b3,…,bm], where a, b Characters representing each line
  • Traffic light chasing problem:
    A and B start from the same point along the same straight line at the same speed. A starts 20 seconds first and passes two traffic
    lights with a 30-second red light and a 30-second green light. What is the probability that they both arrive at the end at the same time?
  • Given a lyrics list, each element is a complete lyrics of a song, given a query, if the song is of this query, then the query is continuously included in the lyrics, allowing one character to be misspelled or missed. , Pinduoduo. How to find the query corresponding to the list.

Interview record 3

  • c++object-oriented
  • The principle classification of stl
  • I asked some common machine learning and deep learning questions. I can’t remember clearly_{Can’t remember clearly}I can’t remember clearly
  • Processes and threads, semaphores
  • cbow related details
  • Negative sampling related details
  • softmax and code implementation
  • I'll give you two linked lists, find the intersection, and discuss them based on the situation.

Interview record 4
pages:

  • cross entropy
  • SVM derivation
  • Non-recursive traversal of binary tree
  • BERT, what parameters are stored in checkpoint?

Two sides:

  • model on resume
  • The principle of layer normalization, tf code
  • Mathematical question: Find the zero points of (x-sinx): The zero point is 0, and then take the derivative and find that it is always greater than 0, so there is only one zero point 0. Find the zero points
    of (x/2-sinx) (5 zero points in total)
  • Algorithm: Bucket sort (find the Kth largest number)
  • precision、recall、f1
  • Details of BERT
  • The hierarchical softmax principle of word2vec, why use Huffman tree
  • Common loss function, derivation
  • Logistic regression and softmax derivation

Interview record 5
written test questions

  • Given a year, month and day, output the day of the year.
  • Given a maze, output the path from the upper left corner to the lower right corner.
  • Given an array, find the "majority elements" in it. This element refers to the number of elements greater than half of the array.
  • Complete a maze in one stroke.
  • Given a string, delete "ab" and return the last string, time O(n), space O(1)
    abc -> c
    aaabbc->ac
  • Implement in-order traversal of a binary tree without recursion or stack. Find
    the last 1000 decimal places of root number 2.
  • Reverse of linked list
  • Given two equal-length strings a and b, and a dictionary d, determine whether a can be converted into b. If so, how many steps are required? It is required that only one letter can be changed at a time (
    letters cannot be added or deleted). Change The resulting intermediate result must be in a dictionary.

Interview record 6:
I forgot other questions.
Algorithm questions:

  • Task: Develop a dictionary tree
    Description: There is a file with an English string (English word) in each line. It is required to store these words in the tree structure as described below, and write a query function, input a string, and judge Whether the string exists in this tree.
  • There is a music website with a lot of traffic, and users can request songs by voice. The supported queries are mainly: I want to listen to @song_name. Observing from user logs,
    it is found that 80% of the traffic in user behavior is concentrated in high-frequency music. Designing a data structure can shorten the user's access response time.

Interview record 7

  • batch size problem
  • What kinds of data sets are there for reading comprehension?
  • How do you usually adjust parameters?
  • How to find the median of two ordered arrays?
  • How to find the longest non-repeating substring of a string?
  • What types of attention are there?
  • 1 billion 32-bit integer data, how to find repeated numbers?
  • Given a polygon, how do you find out whether a point is in the polygon?
  • For preorder traversal and inorder traversal of a binary tree, write postorder?
  • Introduce a project that you think is good

Interview record 8

  • Self introduction
  • Binary tree traversal by level includes tree building and traversal
  • String AZ outputs codes in sequence
  • Search code after connecting two database tables
  • Given the attributes of JD.com products, how to select features to identify men and women?
  • Introducing Logistic Regression
  • Asked about a competition I participated in
  • Introducing word2vec

Interview record 9

  • Differences between database mongo mysql redis
  • Tell me about your best project
  • Let’s talk about word2vec
  • lstm features
  • If you were asked to design a project, how would you design it?
  • What parameters are set in the model and what are their effects?
  • Gradient descent method, why to create a batch, how to determine the batch size

Interview record 10

  • Introduce the project
  • There is a string. Except for one character, the other strings appear in pairs. Find this single character.
    For example AABCCDDEE->B
  • Python threads and processes
  • How to build a distributed system background: The user is given an article. At the beginning, we have a model to process it. With subsequent iterations, a single machine cannot run all models. (For example, using a model in 10 fields, it used to run on one machine, but now it cannot run.) Designing a more pluggable system allows us to simply add nodes.
  • Merge sort and then calculate its time complexity through mathematical formulas

Interview record 11

  • Learn more about the project
  • Algorithm questions. How many binary trees are there with depth k and number of nodes?
  • Algorithm questions. Given an nxk rectangle, how many small rectangles does it contain? If they are not completely overlapping, they are not considered duplicates. [Deformation]: Given an nxk rectangle, how many small rectangles of size K are contained in it? If they are not completely overlapping, they are not considered duplicates.
  • A robot walks left or right with equal probability, and the probability that it can return to the origin after taking N steps.
  • binary search
  • 1. Given a huge file, each line in it is a word, count the word frequency to form a word list. Deformation: Generator, each time returns a word from 1, the probability is related to its word frequency.

Interview record 12

  • Algorithm question: Write a code for the edit distance algorithm, or the edit distance algorithm for trees
  • Handwritten binary tree traversal non-recursive
  • Handwriting quick sorting
  • Given a number, how many 1's are there in binary? How to print how many 1's there are in 0-N
  • Discuss relevant issues and details in the project
  • Hand drawn gru

Interview record 13

  • The specific structure of BERT
  • Introduce the project
  • The meaning of LayerNorm
  • Tensorflow writes a question: a matrix of 100 m and a matrix of 100 n results in an m*n matrix. Inside the matrix is ​​the cosin of the corresponding element.

Interview record 14

  • Introduce the project in detail, the details of RNN, the structure and gate of LSTM and GRU
  • Seeking the limit, Lópida's law. N samples are retrieved N times with replacement. What is the expectation of a sample that is not taken once? The limit of [(n-1)/n]^n
  • Find E(max(x,y)), x,y is the uniform distribution of [0,1]
  • Algorithm problem of Tower of Hanoi problem
  • Optimize N unordered numbers and find the worst-case time complexity of the maximum and minimum values. O[(3/2)*N]
  • Let's say you're on a game show. There are three doors for you to choose from: behind one door is a sedan, and behind the other two doors are a goat. Of course your goal is to get a more valuable sedan, but you cannot see the real situation behind the door. The host will ask you to make your first choice. After you choose a door, the host, who knows what's behind the other two doors, opens another door to show you, and, of course, there's a goat there. Now the host tells you that you have one more chance to choose. So, please think about it, should you stick to your first choice, or should you change your first choice and be more likely to get a sedan?
  • There are n+1 numbers in total from 0 to n. One of them is missing. There are two situations: ordered and unordered. Which one can be found?

Interview record 15

  • Mathematical statistics question:
    There are 10 people corresponding to ten actions. Number 10 chooses first, and then numbers 1 to 9. When choosing numbers 1 to 9, if the number of their corresponding position is empty, they will sit on the corresponding number. If it is occupied, Just sit wherever you want and find the probability that No. 5 will sit in your seat in the end.
  • What is the difference between linear classification and logistic regression, and what is the difference between loss and loss?
  • Why is linear classification not solved directly (system of linear equations) but through recursive descent: The matrix is ​​not full of rank
  • Algorithm question:
    (1) Given a sorted list, find all two that add up to 8, organize them into tuples and put them into the list, and finally return the list
    to you, for example [1,1,2,3,4 ,5,7,8,11] The final result is [(1,7),(3,5)]
  • tree edit distance

Interview record 16

  • Algorithm question: Given a repeated ordered array, find a number with the smallest subscript without returning -1
  • Write the loss of logistic regression
  • Introduce word2vec and write negative sampling loss
  • How to predict context based on center words, what are the advantages and disadvantages
  • Explain s-net
  • What impact does window size have in word2vec

Interview record 17

  • Resume questions to ask detailed questions
  • Algorithm topic: Write a C function to achieve the following functions:
    Find the subscript of a certain number a given a monotonically increasing function without repeated numbers. The parameters of the function include the array first address pointer p, the length of the array length, and the value you are looking for. Number a.
  • Explain what you did in your previous internship business
  • The change process from the initial encoder and decoder to the latest model, what are the characteristics of each stage, and what problems are solved (such as the role of attention)
  • seq2seq features
  • Implementation principles of underlying technologies, such as word segmentation, named entity recognition, and part-of-speech tagging

Interview record 18

  • Find the longest common substring
  • Asking for two sum problem
  • The top K problem of finding counts in a billion array
  • Give post-order traversal to determine whether it is a binary tree
  • Doka training issues in the project
  • Sogou business introduction

Interview record 19

  • Ask detailed questions about your resume
  • What are the characteristics of XGboost in a certain scenario?
  • Tell me about how you worked on a certain project?
  • You said you modified the semantic matching model. How did you modify it?
  • What is the main part of your project? What is the loss of your model?
  • Tell me what a certain model in the project is?
  • Give you a sequence containing only 26 letters and .*?

other problems

  • How does attention generally interact with the next layer?
  • lstm several doors
  • What are the characteristics of seq2seq and what are the classic models?
  • What kind of classification model should be used if the amount of data is insufficient? (decision tree?)
  • What are the unsupervised models?
  • Describe the structural characteristics of capsule?
  • What are Sogou’s result indicators?

Please verify and test the answers to the above questions yourself. You are welcome to leave comments or questions in the comment area or on the public account.

What problems did you encounter during the interview? Post it and share it~ Finally, I wish everyone a smooth interview~

Guess you like

Origin blog.csdn.net/u014665013/article/details/114445667