How to do a good job interview preparation Java engineers in a month? [Notes] architecture Huperzine

How gold and three silver four [season] quit Java engineer to do the interview ready in a month? [Huperzine architecture notes]
welcome attention to individual public number: Huperzine architecture notes (ID: shishan100)

Monday to Friday, 8:30! Boutique technical articles sent on time!

Quality learning materials acquisition channel, see end of text

table of Contents

I, EDITORIAL

Second, the rapid preparation of technical breadth

Third, the rapid preparation of technical depth

Fourth, rapid preparation of basic skills

Five, Part II trailer

I, EDITORIAL
Spring Festival holiday has passed blink of an eye, it is about to usher in the annual turnover of gold and three silver four seasons.

If you are ready to jump ship in gold and three silver four, then as a Java engineer, how to use a month's time, rapid be fully prepared for the upcoming interview?

Prior wrote two articles:

Internet companies interviewer is 360 ° examine how the candidates no dead ends? (Part I) is an Internet company interviewer how 360 ° examine the candidates no dead ends? (Part II) These two articles dedicated to the interviewer stand point of view, give you an analysis of how the usual Internet companies a full range of inspection candidate.

To sum up, when the interviewer examine candidates mainly from the technical breadth, technical depth, basic skills, system design, project experience carried out several angles.

Then this article we will go for each piece of content, specifically for the study at some point. More importantly, for the study of these points, how to quickly prepare.

Technical breadth

Technical breadth, by definition, you as a qualified engineer in the development of a system, the completion of some specific technical tasks, must be to use a lot of technology, but for these technologies also need to have some very common, various the system will probably involve some technical architecture / technology programs.

For example, an Internet company's more important system, first of all certainly use a distributed service framework, such as dubbo / spring cloud, so that the system can be split into a distributed architecture, or the now very popular argument is that micro service architecture, so that each person is responsible for a service or a subsystem.

Then this system is likely to support some special technology scene will use a variety of other techniques.

For example, a common response to high concurrent read and use Redis caching technology, in order to make an asynchronous call system will be used RocketMQ technology, in order to support a large amount of high-performance data retrieval will be used Elasticsearch technology, and so on.

So what if the Internet companies in the recruitment Java engineer, his recruitment requirements?

It is necessary to require candidates to have at least, in various technical fields dubbo, Redis, RocketMQ, Elasticsearch, which have actual production project experience, but also a variety of features and landing project when the common technical architecture of these technologies / programs are more familiar with, so hiring this person to come in after work to get started immediately.

Requires a candidate to have a variety of common technology and related infrastructure actual project experience and enough familiarity with the technology itself, which is called the technical breadth, standing on the perspective of recruiting candidates to analyze, surely everyone would understand this "technology breadth to" inspect the items.

Actually technical breadth of this thing, saying the technical breadth, so certainly not just something that mentioned above.

In fact, a qualified engineer for Internet companies in the technology breadth, also need to have a lot of other things.

Such as distributed transactions, micro-service architecture, distributed lock, performance tuning, Java virtual machine optimization, Web Server optimization, database optimization, and so on.

The more large Internet companies, the more this will be for technical breadth, the study may be more extensive requirements are higher.

Second, the rapid preparation of technical breadth
after it Now that you understand the breadth of what this technology, now for the technical breadth, in a short time how to quickly review and should be ready for it?

This issue, we divided into two situations is.

Let's say you are a usually very hard very hard over the past few years has been people keep learning, then congratulations to you, this stuff is difficult to live a hundred percent you, because you continue to learn over the past few years, may already own some things every point of the breadth of technology are studied, and more or less have some experience to use.

For the things you learned or practiced, you certainly have recorded some notes. Your best way to prepare is to quickly review their notes, the core principles and practice of various projects of common technologies are fast recall by notebook retrospect, to form a knowledge network in the brain.

If you are a not-so-diligent engineer, or a work only two or three years, inexperienced xiaonianqing, but also the accumulation of so much, then how to do it?

It does not matter, remember the old adage: a crash course, unhappy also light. Although you accumulate nothing, but you have to interview, get to the chicken surprise about it.

Here's to teach you ways: you can own the technology breadth may involve various points listed here, then the Internet Baidu, various technical point of some common interview questions, or some of the basic core principles.

Baidu through the various technical points, then quickly understand a technology from a variety of technology blog in the way, in a short time can be quickly set up some basic knowledge, the core principle of individual points in the breadth of technology involved, so that during the interview avoid answer any of them.

Of course, we all know, technology is something that can not crash, you use the second method to assault, have accumulated several years of profound knowledge with you at the first instance, last fall to the interview, the performance is very different It will directly determine who will enter the different companies at different levels.

The second case of students could interview when asked a question, we can only say a minute or two, but the students first case, the effort in peacetime, as long as the review in place, the interview when asked a question often by analogy, all of a sudden you say a ten minutes can be. That's the difference lies.

However, even if you just say a minute or two than to answer any of them, and the interviewer 大眼瞪小眼 good, right?

Finally give you emphasize, no shortcut to success, as an excellent technical engineers, the most important thing is 365 days a year, you keep learning accumulation day, persist for many years.

Eat, adversity, square man Exalted, the author of the early years of accumulation of technology, when this is over. Every night to learn one or two am, Saturday and Sunday all day learning, adhere to for many years.

Only accumulated through the years, you will be able to Accumulate, quantitative qualitative change, as they become a big cow.

Technical depth

Technical depth of what it means? In simple terms, if you have the technical breadth of said item # 1 above, this does not explain how good you just can only say that to meet the most basic requirements of the interview, after hires can get started immediately to work, no training costs too much.

You decide how high the height of future technology, and you can become a pillar of the team, your technical depth.

Technical depth, by definition, means that you are a master of technical depth, give the simplest example. If your company uses a system kafka this technology, so now the question is good, online production environment, whenever the peak comes, I do not know why write kafka always exceptions occasionally throw out, or that data written to kafka does not know why there is always a little less each day count down.

Online production environment encountered such a strange question, often the team technical cattle out of time. Daniel technology, people must have a certain depth study of various technologies, whether in the face of technical problems, starting directly from nature and the underlying analysis and positioning problems, and finally led the team to solve the problem.

For example, the above said those problems that should be solved, you first need a technical Daniel had a certain depth of research on kafka source, followed by in the face of the problem according to the prevailing breakdown scenes and some log, with source code to run process, step by step analysis and locate out the problem, probably the last is by adjusting the parameters of some of kafka, we can solve these thorny production problems.

The foregoing description of the scene and capacity, technical depth is reflected, for example, you had to complete a technical, comprehensive, study the underlying source of in-depth, which is already the ordinary people and not the technical depth.

Because many people say is read the source code, but they are actually seen a little shallow, not very in-depth understanding.

And if there are some online technology to a production environment encountered some difficult problems, to solve the problem through source code analysis experience, then that is reflected in better technical depth.

Reflect technical depth, read the source code is not necessarily to say that this is just one manifestation of it, there are other, for example, is particularly difficult for a technical scene, for example, the company hundreds of thousands per second, QPS double 11 under concurrent requests, you are responsible for which payment systems, ultra-high concurrency successful response.

In this process, you design the system architecture of the system to do a lot of concurrency optimization, performance optimization, you can become embodied technical depth in a technical field.

Third, the rapid preparation of technical depth
how to quickly do the technical depth of the upcoming interview ready for it?

In fact, very simple, two cases are discussed.

If you are in the past few years, and that they have read a lot of in-depth source of open source technology in the process of reading the source code, the source code of their own also architecture diagrams, flowcharts, a lot of hand-painted figure it out.

So now you can complete the last few years of research notes source turned out, had about fast, how to practice the various techniques of handmade source architecture diagrams and flowcharts scene painted in the interview live on the whiteboard.

Or in the past few years, you, for highly complex technical difficulty of what the system has done to a technical field, pitched a deep research in the field of technology, then this time you can also fast for the last notes the review, in the interview site must be done on-site drawing your complex systems and technical difficulty saying clearly.

But if you do not have any of the above mentioned accumulated over the past few years, that we supposed to do?

Again: a crash course, unhappy also light.

General interviewer technical depth in the study, it is very likely to ask you: Are you familiar with some of what technology?

Encountered this problem, I hope you sober mind, do not talk nonsense brain fever, because you have to make a mental preparation, once you utter a technical out, like you said, you usually compare with the use dubbo and more, then the interviewer may open 10 in-depth combo mode source level.

For example, the interviewer will immediately start asking you certain you are familiar with technology, mechanisms and principles underlying source of understanding make you say, give you a variety of technical challenges under this technique how to deal with, etc. and other like issues.

I have seen too many inexperienced students casually say a familiar technology, in fact, he just will use nothing, but once when I ask questions in depth when asked to enter basic ten do not know the situation.

If this happens, let the interviewer is extremely bad for your impressions and attitudes, we must remember remember!

So, if you really have not been thoroughly if the accumulation of what technology, here to teach you a way of cramming:

You can choose from a resume that you use relatively more, a little bit familiar with the technology, and then directly with the Almighty Baidu, search "XX source code analysis technology", "XX technology underlying principle."

By the time a few days of quick "rote + Ruanmoyingpao", and strive for a relatively few little technical understanding some of the underlying.

In doing so, at least, he was asked during the interview to ask some technical depth when the relative can give some answers than the average engineer's analysis of some of the better, at least to the time of the interview, so you get a good offer probability point It will be relatively larger.

Again, do, than never. You can do to prepare for the bottom, there is some understanding, always to be better than those engineers floating on the surface, it will only use the API!

Also I want to say here, the nature of regression techniques, for the accumulation of technical depth, that is no shortcut at all, more than a few months to complete surprise.

Because really have the technical depth, you may need to spend at least two years, he began to study some of the basic techniques from the ground.

After you get through the underlying technology Renduermai, to return on common open source technology for in-depth study of the source code, for example: dubbo, zookeeper, spring cloud, redis, rocketmq, elasticsearch, and so on.

After several years of accumulation have finally you during the interview, reflected the depth of technology, in fact, are all paid off.

Basic skills

In fact, this may be nothing more to say, we estimate now slowly have felt, the club recruit experienced engineers to interview the Internet giant, a lot of time but must examine the data structures and algorithms.

Fourth, quickly prepare the foundation skills of
this how to quickly prepare it?

My advice is, if there is really a month to go to the interview, that you at least a few days, online search three to five ten most common and typical algorithms questions, over and over, be sure to proficiency.

Skilled to what extent?

You need repeated practice, they can pass on the final hand of the code is not bug on white paper.

What problem is most common, the most typical? For example, classical scheduling algorithm and its time and space complexity analysis, classical search algorithms, stacks, queues, linked lists, binary trees and other problems common data structure algorithms, based on these related topics have mastered.

Of course the best thing for such an algorithm based on the accumulation, or in peacetime, for example, if you insist on spending every day on leetcode lintcode half an hour or a brush algorithm problem, for a year, you brush at least 300 algorithm title, adhere to two years, you would accumulate seven or eight hundred algorithm problem.

This time there is enough accumulated, at least, do not worry about any interview is the basic algorithm like the handwriting, but it is still in the usual effort.

As for the difficulty of the subject selection algorithm, just LeetCode or Lintcode on easy and medium difficulty degree of difficulty can be.

Social strokes requirements algorithms and data structures is less than school recruit, and recruit school because students do not have much experience in the project, you can examine the data structure algorithms, you see Cong not smart.

This is a difficult one in FIG lintcode the control data structure corresponding to job search algorithm vs question, we can refer to.

Again, the subject can get easy and medium difficulty. Once the Internet spread the word: If you can hand-written title all easy and medium, and 3 times the pass, can handle most of Silicon Valley's technology interview, including Google, Facebook and other top companies in the interview, this is almost in the country Case.

Part II Trailer

This article from a technical breadth, technical depth, basic skills, three blocks, to tell you how to speak each piece of inspection, as well as everyone assault from long-term and short-term accumulation in terms of how the two should be prepared separately.

But, in fact, I personally always been to uphold the long-term accumulation of technology is the thing, not a short-term attitude of assault thing.

But if you really are not long-term accumulation, but also to the interview, I hope you take a look at this article, there is prepared for your ability to be investigated.

While even a crash course, how grinding, there is also a lot of knowledge. I, as an interviewer's point of view, the most objectionable is not well prepared to interview the blind people, beautify their own concocted a resume, get a lot of interviews. But in the past been raw surface, and finally answer any of them, wasting everyone's time.

Next will write an article for everyone to chat systems design and project experience how these two elegant preparation. This is also Java interview, especially in advanced positions in the interview very important part, so stay tuned.

Published 100 original articles · won praise 12 · views 10000 +

Guess you like

Origin blog.csdn.net/hmh13548571896/article/details/104106656
Recommended