📜 ⬆️ ⬇️

How to pass an interview in a dream company? Tips from timlidov IT companies

July 16-17, a conference for python developers PYCON RUSSIA will be held 95 km from Moscow. Traditionally, we do a series of interviews with speakers and organizers.

In the first post, we asked the team leaders of four different companies what they pay attention to during interviews, what mistakes do the candidates make, how to understand what a person fits into the team, and what can never be done during an interview. Questions were answered: CTO at Tochka, Danila Shtan , development manager at TsIAN , Mikhail Yumatov , head of Python-projects group at Rambler & Co, Oleg Churkin, and head of the PyCharm community at JetBrains, Andrei Vlasovskikh .



- How do you understand that junior can quickly learn and develop?
')
DS: No, I just give a chance and see what happens.

MJ: Junior should already have some fruits of his desire to learn and develop - pet projects, baggage of the technologies being studied, etc. Here we will talk about them.

OCH: In order to understand how motivated a candidate is for self-development, I usually ask questions about the most difficult tasks that a person has already managed to face and listen to how he finally solved them. The more interesting the story, the faster the learning will be.

AV: I pay attention to the combination of independence, programming and readiness for teamwork. If the candidate is still studying, you can take him on a summer internship or semester practice to learn more about the person and his prospects.

- What are your criteria for distinguishing middle from senor? How do you spend this gradation of experience levels of development?

DS: No, it's all nonsense for streaming hiring, but I don't like streaming hiring.

MJ: Senor knows the applied technologies very well (their strengths and weaknesses, implementation), monitors component life in combat and proactively comes out with suggestions for optimizing and / or solving problems with them. Able to develop application architecture and find fast non-standard solutions in a critical situation, independently manage projects. Starting from this level, problem solving, the ability to work with the customer, the ability to make decisions independently and quickly switch the context between tasks are mandatory requirements. It is autonomous in solving the tasks set, it understands what goal is achieved within the framework of the solution of the problem and is able to find the best way to solve the problem. Always takes responsibility for the quality of the task and the deadlines.

OC: Senor must be well versed in the architecture of web applications and possess sufficient personality to lead the team. With seniors, a technical interview usually goes into a design interview, at which level it turns out.

AV: Señora is distinguished by a great experience in making well-thought architectural decisions, the ability to lead juniors and promote their growth.

- What are you looking at when performing a test task?

DS: I never give test questions, write a maximum algorithm, just to understand some basic things about preparing a person.

MJ: We do not have a test task, but at the interview we usually design something with the candidate. I look at how a person thinks, how deeply he thinks about the decision, how he treats the other invisible participants in the process.

OC: First of all, on its correctness. If there are no defects in the code, then I pay great attention to the correct choice of algorithms, skillful use of tools, readability and beauty of the code.

AV: In addition to the correctness and selection of suitable algorithms, I look at the compliance of the code with the best practices of software engineering: a reasonable project structure, tests, documentation, etc.

- What is your favorite logical problem that you ask at the interview?

DS: Absent, logical tasks for interviews - this is an invention of not very competent HR. There are normal people without it, so talk to the candidate.

MJ: No such :)

OCH: There is an unsorted list of natural numbers from 1 to N, numbers do not repeat. From the list extracted one number. It is necessary to determine which is O (N) by time and O (1) by memory.

AV: There is no favorite logical task, there are several algorithmic ones. I will not call specific ones, but a good algorithmic task allows you to come up with several answers: from simple and non-optimal to specific, giving a win under certain conditions.



- What knowledge / experience is necessary and sufficient to get into your team? And what “flaws” and imperfections do you quietly close your eyes to?

DS: Profile knowledge and profile experience. It is desirable in the format of "his own director."

MJ: I will not tell you about the sufficient conditions, but please, the necessary ones. We need an irrepressible desire to reduce the amount of "magic" around. As a result, an understanding of the technologies used, their design and operation. Including Python.

We are ready to close our eyes to the knowledge of the specific technologies we use. For a number of soft skills - too. Teach.

PH: Good knowledge of Python (data structures, decorators, integrators, generators, classes and inheritance), understanding the complexity of algorithms, basic knowledge of RDBMS and * nix. Proactive and willing to develop.

I never asked candidates to deploy a binary tree.

AV: We develop development tools, so interest and knowledge in the field of programming languages, compilers, static analysis are a big plus. Our work requires knowledge of several languages ​​at once. If the candidate does not know one of them, but is well versed in the other, I think he will be able to figure out the language he does not know.

- How do you determine that a person will not fit into your team? Are there any markers (besides professional non-compliance with the required level in the vacancy)?

DS: I look at soft skills, communication style, speed of reaction to questions. I can not say that there are any formal markers. Moreover, professional skills often fade into the background, if a person is good.

MJ: If a person can listen to others, takes into account someone else's opinion, is responsible, disciplined - most likely, we will work together.

And we are for honesty. No intrigue, rumors, manipulations, gossip. If at the interview we see at least some signs, not immediately. Sorry, this is not about us.

OCH: The most important personal quality, in my opinion, is an adequate perception of feedback. If at the interview it becomes clear that the candidate is too emotional about the criticism of his work, then he is unlikely to fit into the team.

AV: Maybe it will sound obvious, but a person is unlikely to fit into a team with weak soft skills.

- The most frequent mistakes of candidates for the interview? Both behavioral and technical.

DS: Brag. Start a conversation about what is bad you understand. To consider the interlocutor an idiot.

MJ: Late for interview. I do not like when they are late, this is the first sign of future problems with discipline.

Sometimes candidates start telling something that they haven’t asked. This is by no means always out of place - it creates the feeling that the candidate is trying to confuse.

OCH: The most frequent erroneous behavioral patterns: “interview the interviewer”, withdraw into self after the first wrong answer, sometimes candidates begin to talk confidently about a topic they don’t understand, and after the first inconvenient questions it becomes embarrassing :)

From the technical interview: almost no one knows about frozenset and only a small percentage of the candidates could write a parameterized decorator.

AV: Sometimes candidates overestimate the level of their knowledge: they begin to talk confidently about something, but when it comes to specifics, they can “float”. Some people know nothing about the company or the product that they will develop, although the information is publicly available and directly concerns their immediate future.

- What advice would you give the job seeker?

DS: Do not try to "sell" yourself. Show your level honestly, show a broad outlook and desire (and ability) to study and understand unfamiliar problems.
This is more important than the list of "technology" or "participation in projects" in the summary.

MJ: Always answer honestly. If you do not know something, you should say so directly. Do not stuff yourself a price - it shows.

OC: Do not get lost, think out loud, practice writing code on paper.

AV: For many, a job interview is a little stress: it's easy to get confused, forget something. Try to talk out loud. If you do not understand the conditions or limitations of the assignment, speak it out loud, ask questions.


You can also read the tips from Austin Belkeyk from Microsoft on how to easily have an interview.



July 16-17, all the guys will be available at the PyConRu conference. Andrei Vlasovskiy will explain that Python on microcontrollers can, Mikhail Yumatov will tell you what tools are available to monitor the performance of web applications, Oleg Churkin will tell you what requirements for the development process and the project infrastructure must be met in order to try micro (Services). Danila Shtan will be the moderator and the moderator. The final grid with all reports is ready.

Thanks to our sponsors who make the conference possible: the gold sponsor Adcombo , the silver sponsors Rambler & Co and DomClik , the bronze sponsor MediaScope . Thank you for supporting the partner of energy and good mood of the company TsIAN and the Python Software Foundation .

Source: https://habr.com/ru/post/332468/


All Articles