Front-end early chat conference, a new starting point for front-end growth, jointly held with the Nuggets. Add wechat Codingdreamer into the conference exclusive push group, win at the new starting line.


The 14th | front-end growth promotion, 8-29 will be broadcast live, 9 lecturer (ant gold suit/tax friends, etc.), point I get on the bus 👉 (registration address) :


The text is as follows

This is the 43rd lecturer of front-end Early Chat, and also the 8th front-end interview special session, shared by Ao Tianyu from LeetCode – brief edited version of lecture notes (please see video and PPT for the complete version with demo) :


preface

At the beginning, I started with the caption party. When I was chatting with Scott, I happened to be talking about my experience of joining the company, which led to this sharing. At that time, I submitted a random answer and brushed 5 questions, but later I counted carefully and found that there were 4 questions.

However, this half-hour sharing will be analyzed from four points: “recruitment requirements”, “how to brush the questions”, “the difference between large and small companies” and “the difference between doing business and infrastructure”.

Now let’s start with a self-introduction. My net name is Ao Tianyu. Currently, I am an engineer engaged in the business development of the main station. I currently work with JavaScript (TypeScript), Python, and a little Golang. A blog is basically a bunch of notes, everything.


After introducing myself, I had to sell the company. The authorities gave me a 123-word version. I guess I’m not a radio presenter.

So to sum up, we are an online programming platform, which also provides algorithm competitions and communication communities, as well as simulated interview scenarios. At present, it may be synonymous with job searching, but we hope to become synonymous with technological growth in the future. Of course, secretly tell you that we also provide enterprise services, after all, you always pull questions from us here much trouble, directly use our enterprise platform.

Job requirement

After introductions and product placement, let’s move on to our first topic, fromRecruitment requirements start“, to see if we need to do some extra preparation before the interview, and also to learn what the company’s tech stack is through JD.Like a full-stack engineer,Recruiting involves the front end.The back end and some basics,Develop intellectual contentIn terms of technology, Django/React/Redux/GraphQL/Redis/MongoDB/MySQL, etc. In fact, this is also the technology that our company uses.

Of course, in fact, our company will indicate the company’s technology stack at the front of the post, but because there are too many words can not cut the figure below, so there is no cut. So let’s look at the front-end requirements.There’s a little bit less text in the front here, and you can see it’s marked up thereTechnology stackThat’s the technology we’re going to use in the future. Of course, for larger companies, it is possible that you will not use all of the above technology stacks, and the basic requirement is a technology stackgeneralization“Often acquiesces to mainstream technologies, but not necessarily what the company will use.

In particular, the front end is often mentioned in the bonus, proficiency in a back-end language. Being able to answer our GitHub interview questions is a special plus if you want to apply to our company.

After a long look, we found that everyone’s recruitment requirements are a lump of words, is there a kind of interview rocket, entry screw feeling — so, recruitment conditions really need to meet all? The answer must be: no.

I mentioned some mainstream technologies earlier, but that doesn’t mean you have to be general. Especially I have been thinking, how to calculate familiar, how to calculate proficient, and how to calculate understanding? — Finally pondered for a long time, I feel dead brave, cast again.

How to brush the topic

Preparation for an interview

After researching the job requirements, let’s take a look at what we need to prepare for the interview. Of course, this is just a quick review. After all, as you all know, this is my personal experience, not the general situation.

Compared to the first is to be ready to jump ship, actually cast through interview, ready to jump ship phase may be one of the most lengthy process, although you may stay in a company, such as get sick of it, so I want to see in the world, or special don’t want to run, but in addition to a few special naked resignation of courage, the rest of the people will silently hold first, Go get ready first.

Here I would like to share with you what I did in the preparation stage of this job-hoppingI lie in bed every day thinking.I will study hard tomorrow.One algorithm every day starting tomorrow.In a word.I’ll try my best tomorrow.Then it was the day before the interview, and I forgot how I submitted my resume under the condition of no defense, probably by my classmate who pushed me.I don’t know if you will feel nervous the day before the interview, especially when you are going to take a naked exam. At that time, I felt regretful, why didn’t I study hard?Like the kind of college entrance examination to regret the feeling.

I was like, oh, my God, I have an interview tomorrow, who AM I, where am I, what am I going to do. But still need to cram at the eleventh hour, probably also divided into three steps:

  • The first is self-introduction, just like the self-introduction I did in front, probably to tell you who you are, do those things, because the resume may be a lot of things, the interviewer see and you want to let the interviewer see the focus may not be the same, self-introduction can do a circle underline the key role. Of course, I think most of the people up in the morning may be very sleepy, should be to listen to my cross talk, so I did not do too much circle painting focus, we eat breakfast to listen to me on the line.

  • The second is the basics. Most of you will be asked about the implementation of two-way binding, the Vue or React lifecycle, or Promise/debounce, etc. There are some Markdown repos on GitHub that you can take a look at. I usually have several star.

  • Then I opened it up and went, wow… It’s really too much to watch in one night. Give up strategically and interview by chance.


The key comes, algorithm, if the front of a business on the basic skills can rely on mouth gun and mouth hu, algorithm this basically want you to write code on the spot, this is completely hardcore test, is a donkey is a horse try to know, so the algorithm is best still need to arrange.

We all know where the algorithm goes. Force buckle (LeetCode) start.


This is the last day, I have no choice, I will go to the interview tomorrow, so I can only brush as few lines as possible to maximize efficiency. So time management is important, and I’m talking about serious time management.

Therefore, the strategy of brushing questions is very important. How to brush the least questions and review the most knowledge points is not to enhance my algorithm literacy, but to review what I already know but may have forgotten.

Algorithm is summarized

Here are some common test topics, divided into five categories:

  • Bubble/quicksort – sort algorithm
  • LRU/permutation combination – application class algorithm
  • Linked list/heap/stack/tree/graph – data structure algorithms
  • Divide-and-conquer/dynamic gauge – algorithm ideas
  • Depth preference/breadth preference

Here I have listed some common test points, divided into five kinds. These five basically could be called the algorithm of the basic skills, and the advantages of these questions is that of a packaged application scenario, even if without, this solution with blasting may also can be solved, but who knows algorithm can make better solution that gives rise to different degree of differentiation between the interviewer.

Summary of almost, then began to buckle in force to find a topic. So that’s the five questions in the title. The point is to find a problem that can be solved with as many different levels of writing as possible.

Graph algorithm

200. Number of islands. If you take a look at the problem, it looks like a graph algorithm.


Data structure problem

622. In order to design a circular queue, there will be some general data structure problems such as flipping binary trees, linked lists, etc. Here is just a random choice, and a rough implementation for a feel. This kind of problem is basically familiar with the characteristics of data structure, there will be no problem, except that the number of code lines will be more than other algorithms.


Classical sorting algorithm

In fact, I believe that most entry-level positions will choose to take the exam. For example, I was tested when I was looking for an internshipBubble sortAnd maybe write aFast row, just find a random problem to sort, don’t use the library’s own sort, and implement one yourselfSorting algorithmI didn’t swipe this part of the problem.

Divide-and-conquer/dynamic problem

This is not necessarily something that will be tested in the front end interview, butDivide and conquer methodAs an important algorithm idea, master not lose, here selected a simple question:53. Maximum suborder sum.

Math problems

39. Sum of combinations, which may also be asked in an interview.


After finishing the five questions, I confirmed what I wanted to review in various ways, and then I could go to sleep. After all, sufficient sleep is the first step to success.

In the interview

Then the interview will begin. Here the process is almost the same, nothing more than the above three elements: self-introduction, basic skills, algorithm and talk about the project.

Among them, you can introduce yourself and talk about projects freely. Basic skills and algorithm questions depend on accumulation and luck. As the saying goes, luck is also a part of strength, and luck is really good. In the interview, I thought algorithms would usually choose Medium difficulty, but they told me and gave me Medium instead of algorithm at the front end and data structure at the back end, which made me very angry.

Of course, there is no need to be upset if you are rejected, because you may just feel overqualified and waste your time in our company, or perfectly avoid the questions you know. After all, we have experienced large and small exams since childhood, and we will always encounter the situation that all the answers you recite become dry questions.

The difference between big and small companies

You may have the illusion that we are a multinational enterprise, but our team size is still very small. To paraphrasing someone’s words, the reason is that our Team in China has just been established for a little more than two years. Although we are constantly expanding the team size, we still need to keep it lean…

In a word, when I just joined the company, there are indeed a lot of acclimatization, so I have summed up the differences between some big and small companies for your reference.

  • The first is infrastructure. If you’ve worked at Alibaba or Tencent or any other company, you’ll know that there’s a whole internal ecosystem waiting to be used, from the component library down to the underlying compilation, publishing, etc. In a small company, there may be some missing or open source technology.

  • Second is the historical baggage that we can upgrade our dependency every week and keep the technology used up to date; But if it’s a big company’s main business, you might have to use the old technology and use the new technology on the new page, which is confusing. In fact, the historical baggage that big companies face is so heavy that it may not even go beyond technical issues, but involve some deeper problems that can’t be explained here.

  • Of course, there are some differences in the focus of development. In a large company, you may have to work on a single module, while in a small company, you may have to handle the whole business. After all, there are still some differences in the manpower. One thing, of course, is that everyone is very focused on ROI, which is the ratio of input to output.

  • I believe that one of the most troublesome problems we encounter after work is reimbursement. Especially in large companies, reimbursement may be divided into six or seven steps. If one of them fails to pass the examination and approval, the result will be pleasing to see.

Of course, there are some extra benefits of our company, such as free afternoon tea and snacks, so I have gained a lot of weight now (XD).

The difference between doing business and infrastructure

As for the difference between doing business and infrastructure, I didn’t write business at all when I started, and it really embarrassed me for a while.

The service object

For infrastructure, it’s the majority of internal users. For business, it’s the people your business is targeting. If I had a breakdown of the infrastructure, not a full breakdown of the infrastructure, it would probably be over with an announcement, but if you write down any minor issues in your business, you might get complaints from your users.

Source of demand

Is the second source of demand for infrastructure, demand is actually derived from the business, the use of the infrastructure, that is to say, in the past, I have never seen a basic product manager, requirements, documentation, and writing the business will encounter and product managers to tear, is not what you want to add and then add what functions. Of course, infrastructure does not mean high class, and business does not mean CRUD and chittosh.

conclusion

The end, it’s time to say goodbye, I’ll sum up this topic in eight words: for reference only, do not imitate.

You can see, in fact, I didn’t do much preparation, if I want to go to the interview is that Google/Microsoft word, the preparation is certainly not enough, as to the proper preparation, will believe the next lecturer should bring you satisfied with the answer, but I believe we brush our teeth after hearing about the breakfast is also good, wake up.

After all, EVERY time I go out with political tasks, we are recruiting for a long time. You can see all the positions we are still recruiting for in the job page of our website, including front-end, back-end, full stack, iOS/Android and so on.

For example, this is our daily technical meeting for useless young people. At present, we also organize some internal sharing of technology and learn advanced knowledge by swimming for half an hour every week.


As well as our minor hobbies, I saw the drum master’s drum and VR glasses in the conference room during my job interview and started talking to my boss about gaming. Generally speaking, we are a very Work Life Balance team. See my next AD if you need to extrapolate.


Add my robot trumpet to your fan base, and you’ll have a lot of people telling you how to push a force button through me.



This article is formatted using MDNICE