Get a job as a programmer. How to get a job as a programmer? Step-by-step instructions for finding a job. Interview and probationary period

In this issue of “Expert Answers” ​​we will consider the question of how the presence of a diploma influences the opinion of a programmer when applying for a job in a large company. Do recruiters have enough experience working on their projects and remote work skills? In general, to what extent does having a higher education influence the opinion of a candidate?

In general, large companies prefer candidates with diplomas from prestigious universities. Self-taught people are often viewed with suspicion. It's not a matter of prejudice that you can't learn on your own, and not of some kind of discrimination. It’s just easier for a person with a diploma to prove that he is worth something by the very fact of having this diploma. But this applies exclusively to prestigious universities (MIPT, MSU, Baumanka, etc.). Holders of other diplomas are also viewed with great doubt. A diploma from a good university means that a person, at a minimum, is a good thinker, knows how to work regularly and hard, and has a certain set of skills. In particular, he knows logic and mathematics well - the most important things in programming. A person without a diploma needs to prove that, firstly, he knows these things, and, secondly, knows how to apply them effectively. This can be quite difficult to do in a short interview time. As well as checking that the person did his projects himself and without serious outside help.

Of course, this does not mean that a person without a diploma will not be hired anywhere, or that with a diploma one can go anywhere at once. I had candidates with “credentials” who, unfortunately, turned out to be completely useless programmers, and very experienced and intelligent self-taught specialists. However, in general this is the exception rather than the rule.

Promote Demote

At 2GIS, a higher education diploma is not the main criterion for hiring a candidate. But having a diploma (from a good university) can show that the candidate is consistent and goal-oriented.

Promote Demote

Software development is a very young field. There is simply no “specialized higher education” for developers right now. Therefore, a large number of development companies are happy to hire talented specialists, regardless of their diploma.

As a rule, a diploma is needed in government institutions where this is a legal requirement. Or in companies where work requires a combination of qualifications, for example, programmer + accountant or programmer + mathematician. For such companies, having a diploma allows you to verify the minimum competence in the desired subject area.

Promote Demote

We have excellent programmers without university degrees. There are those who have not even started studying at a university. It's like clothes, they can't influence whether a person is good or not. The main thing is how much a person loves his job. Mastery comes with the number of hours invested with full concentration. Go for it!

Promote Demote

Higher education is undoubtedly important, but it is not a decisive factor in hiring. If a person at an interview shows real knowledge, which in addition can be supported by good cases in the portfolio, then it may not come to talking about a diploma and education.

The ideal formula for professionalism is the synergy of practice and theory. I myself began by independently studying mobile technologies and believed that practice and experience are the decisive factors in professional growth. However, the university and specialized education gave me a breadth of outlook and theoretical literacy in many issues. And now I think differently.

Read books, study theory, spend time practicing, and everything will work out!

Promote Demote

A diploma of higher education is a document that confirms that a person has enough perseverance and perseverance for 5 years of study. The knowledge required in work is available in many places, and it is not at all necessary to get it only from a university. For me, as an employer, qualifications and speed of learning new things are much more important.

Qualification can be confirmed by dialogue about development experience, understanding of the deep engineering essence of problems that cannot be read in books, but can only be experienced by fully understanding it. This shows our commitment to meeting our production challenges right now.

And the ability to learn can be understood by the interest in communicating on professional topics and the sparkle in the eyes when faced with the professionally unknown. This shows our readiness to solve our problems tomorrow and be on trend.

But higher education is certainly useful - it gives you a professional outlook, teaches you how to break through walls with your head, solve problems that are incomprehensible at first glance, and many other skills that are useful in work. But in no case is it a decisive factor for evaluating a candidate.

Promote Demote

If you have experience and solid projects behind you, the lack of specialized education and generally higher education is not an obstacle. Experience and real knowledge are valued, not the presence of this or that crust.

Promote Demote

In our cozy corner, on our cozy floor, different people of different ages are sitting. About half came when they did not yet have an education, a quarter already had it, and a quarter no longer had it. Including me personally, I was left without VO. In general, we are not particularly attached to this matter, but it is all quite individual. In any case, programmers are always self-taught.

Promote Demote

This largely depends on the internal culture of the company, but in general it is “rather negative.” I myself had the opportunity to hire, and, of course, I considered the various competencies and skills of candidates. Including outside the immediate technology stack. At Microsoft, for example, during an interview there is nothing but algorithms and data structures - they are not very interested in your stack and experience. Here, the recruitment service, as a rule, sees a correlation: if you have an education from a good university, then it is much more likely that the candidate has good systems thinking, learning ability and knowledge of theoretical foundations (mathematics, architecture, etc.). This is important because large companies present a huge array of complex and varied tasks. Of course, correlation is not a rule, but in corporations, hiring has long been based on processes, and in these processes your resume needs to pass the headhunter’s primary filter (he spends about 30 seconds on it, and the university will most likely be in his filter). So if you are a golden specialist without a diploma, then it is better to approach large employers through personal channels and networking.

Promote Demote

It's difficult to speak for everyone, since I only worked for one large company. But I got the impression that an IT degree has almost no effect on hiring decisions. Perhaps in the public sector, but certainly not in the private sector.

Promote Demote

We always look at education. Engineering or mathematical training is a plus in karma, and this is a rule confirmed by experience. For us, this is the foundation on which everything else can be built. It is important to note that from a diploma we expect not so much better algorithmic training or knowledge of a specialized development platform, but the ability to learn, study a lot of material in a short time, take responsibility under stress and temptation, and solve problems in a clever and cunning way.

With experience only of remote work and your own projects, it’s a different story. For us, this is more often a negative factor than a positive one. After all, what we do every day is teamwork, and it requires effective communication, quick decision making, a busy schedule, and understanding the difference between “writing for myself” and “working as a team.” Robot is not a freelance environment; every day we have new tasks and projects, in which many people constantly make many changes, and you need to be able to adapt to these changes and react quickly.
And, of course, the most effective development occurs when the developer has daily access to more experienced colleagues. Working remotely or alone is a big disadvantage in this regard, and such candidates are weaker than their rivals.

Well, of course, different things happen. The main thing is to be able to work. So it’s better to go to an interview one more time than to worry about your diploma.

Promote Demote

An excerpt from ours, Stanislav answers the question “What qualities do you pay attention to first when recruiting developers, and does a higher education diploma influence your opinion?”

The diploma, of course, makes a big difference. That is, a person who has a diploma from a good university quietly gains an advantage. But when I talk with a candidate and understand that he is smart, intelligent, with the right approach to life and business, at that moment the presence or absence of a diploma ceases to matter. It's just harder to achieve anything without a good education.

I recently interviewed one person without a diploma, who studied for 2-3 years at Baumanka or MEPhI, and then, based on some internal considerations and the need to earn money, plus due to his character, the inability to combine work and study, he left the university. And so we talked to him, he’s quite a good developer, he’s done quite interesting things in his life, and somehow we started talking about the reasons why he dropped out of university. He explained everything to me and said that he regretted not studying. I asked why, and he explained that several times in his career he had come across problems where he lacked education, where developing an efficient algorithm required a deep understanding of graph theory, for example. He says: “It’s clear that 90-95% of my work requires education at the level of “I know how to add, I know how to multiply,” but sometimes there are tasks where I just feel that if I took the time and studied, I could create something "of much better quality." This is one consideration, but it does not deny the fact that if a person really needs it, he can then sit down with textbooks, read the necessary materials, and figure it out. But, as often happens in life, it’s harder to find time and figure it out “later” than in youth.

In addition, for many employers, a diploma is a kind of confirmation of job stability. In our industry, we all want to be creators, but we have a routine and what cannot be called my dream job - trying to find an old bug in bad code that is a hundred years old at lunchtime. This may not be a favorite pastime, especially for a young programmer. But such work exists in any company. If we have a system that has been developing for quite a long time, we cannot throw it away and try to rewrite everything again. We have to figure it out. Having a diploma is an additional checkbox, an indicator that a person can force himself.

In general, a diploma is a useful thing, but it is not decisive, and its absence, of course, is not a career destroyer. I myself know many people who did not graduate from university and became good, highly paid, cool programmers. But there are more people who have become highly paid, cool programmers after graduating from university, so for me the answer is very simple. It's worth studying at university. And, preferably, in a good way.

We remind you that you can ask your question to the experts, and we will collect answers to it if it turns out to be interesting. Questions that have already been asked can be found in the issue list. If you want to join the ranks of experts and send an answer from your company or yourself, then write to, we will tell you how to do this.

It’s not enough to learn to program - it’s also desirable to be paid for your knowledge and skills. This article will tell you where to start, how and where to look for work. So let's get started!

Do you need it?

This is a question you should have asked yourself at the very beginning of your journey, when you were deciding whether to become a programmer. Now, since you are reading this article, we can assume that you have already become a programmer and are looking for a job. And for this work to bring some satisfaction, the intersection of three factors is necessary:

  • Do you like programming?
  • you can program;
  • the job pays well.

I really hope that you enjoy programming and are good at it. All that remains is to find a well-paid job. It's nice when they pay good money for what is essentially your hobby. If you are not yet sure of your qualifications or want to upgrade your knowledge, skills and abilities, then take training at GeekBrains.

Writing an impressive resume

You need to start your job search by creating a resume. Alas, there is no way without him, except through acquaintance.



Perhaps you know several programming languages. But you don’t need to put everything on your resume at once. This will only mean one thing: you don’t really understand any of them. Identify your strengths and choose for your resume only those languages ​​and technologies that you are fluent in. Imagine that during an interview you are asked to write code in C#, and you added it to your resume because you once read or simply flipped through a book on this language. You won't look your best.

By highlighting your strengths, you will understand how to title your resume, for example, “PHP Programmer.”

Already good, a start has been made. Each programming language has its own technologies associated with it. An approximate list of technologies for a web developer vacancy is shown in Fig. 2. In your resume you should only mention those that you have actually mastered, and not just heard that they exist. If you only know PHP, HTML, CSS and JavaScript, then indicate them. There is no need to include Zend, Symfony and other frameworks if you have not worked with them. It will turn out anyway.

Next, you need to decide what information about yourself you still want to include in your resume. In addition to contact information, information about previous places of work, the results achieved, as well as your portfolio will be useful. Then all this needs to be properly structured and executed.

You can learn how to create an effective resume from the GeekBrains course “”, but I’ll just allow myself a few recommendations. By the way, this course will be available completely free of charge using the promotional code “Hacker” when purchasing any profession.

Information in your resume should not be presented chaotically; stick to a certain structure.
The following is considered optimal:

  • Last name and first name. There is no need to indicate a middle name; this is a relic of the past.
  • Photo, preferably on a white or gray background, but not a photo from the beach or family vacation.
  • Contacts (only phone number and email, no need to indicate your home address - no one will come to visit you). Contacts should be personal, not company, if you are currently working somewhere. There is no need to provide all phone numbers, one is enough.
  • The goal is the position for which you are applying.
  • Core competencies - indicate professional knowledge and achievements.
  • Education. I think everything is clear here. If you don’t have a higher IT education, it’s okay. Many good programmers don't have it. Conversely, many with an IT education do not know how to program at all. Of course, IT education and/or certificates are good, but all this will not help you much if you cannot complete the test task.
  • Trainings attended (if any).
  • Experience. In this case, the last place of work must be indicated at the top, and the earlier ones below.
  • Additional information. Everything else is here, for example, knowledge of languages, availability of rights, and the possibility of business trips. You should not provide too much information, especially unnecessary information. For example, few people are interested in your marital status.

As for the design of a resume, there are also several subtleties:

  • Use one font for your entire resume. Section titles may be written in font size increased by 2 points.
  • Don't use outdated fonts. Previously, the default font was Times New Roman. But now Calibri and Arial fonts are “in trend”, use them. A Times New Roman resume looks like a dinosaur.
  • The ideal font size is 10 or 12 points, single spacing between lines.
  • List your responsibilities in the form of numbered lists.
  • Provide links to your works in abbreviated form (you can shorten the link using services like bitly.com). If you don't have a portfolio, it is advisable to create one. Write a simple CMS or online store (if you are looking for a job as a web programmer).

Job search: what, where, when

So we have a summary. All that's left is to find a job. But first you need to decide what you want. What would your ideal work day be like? For example, what time do you wake up, what time do you go to work. Or, perhaps, you don’t go anywhere at all - you dream of working from home. Would you rather sit in a private office or in a shared one? What projects do you want to work on? Should I get a job in a company or create my own?

Set a goal, but don't get hung up on how to achieve it. It is likely that you will find a job not using the “resume - vacancy - interview” mechanism, but completely by accident.

The resume must be published. This can be done on many resources. Start, for example, with https://hh.ru/. There you can also view available vacancies and use the resume improvement service - there is no such thing as too much information.

If you are not from Russia, then it won’t hurt to register on LinkedIn, which is “banned on the territory of the Russian Federation” and fill out your profile as much as possible. This is not just a social network, it is a habitat for recruiters - there are a dime a dozen of them there. May the recruiters forgive me :).

Interview and probationary period

You found a suitable vacancy and responded to it - sent your resume to the employer or recruiter. But for some reason there is no answer. Don't be upset if you are not invited to an interview - this does not mean that there is something wrong with you. Most likely, the employer has already found a programmer, but forgot to fill the vacancy. This happens, and quite often. The fact is that posting vacancies on services like hh.ru is paid; vacancies are posted for a certain period, after which they are automatically removed.

No need to stop (Fig. 3). Look for other vacancies. If you like a certain company and would like to work for it, but you are not invited to an interview, try contacting someone from there directly. Find alternative contact information on the company’s website - email or phone number. Get in touch, explain the situation: they say, you sent your resume, but there was no response, tell us about yourself.



For now, your task will be the following: respond to many vacancies (not just one or two) and solve many test tasks. Most likely, before the interview, in order not to waste your time, the employer will ask you to complete a simple test task. Based on its results, you may or may not be invited to an interview. Test tasks must be completed - this is the first filter. There may be many candidates for a vacancy, but only a few who will cope with the task. Even if you are not invited to an interview, you will gain some experience by solving a variety of test tasks.

When going for an interview, remember that not only are you chosen, but you are also chosen. See if it will be pleasant for you to work in this team, to be in this room, and whether it is convenient to get to the office. Also pay attention to the benefits provided, such as a social package. Don’t be afraid to ask questions to the employer - it’s better to clarify everything right away, rather than later it turns out that you’re not happy with a lot of things, and you’ll be forced to look for a job again.

Be prepared that the employer will check every point from your resume during the interview. If you wrote, for example, that you are familiar with the DevExpress set of components, they will definitely find out how well you know.

After successfully passing the interview, you will be hired for a probationary period, unless, of course, you want it - in case you don’t like your boss or the coffee in the office is bad :).

The probationary period is needed so that the employer can fire you painlessly if you are not suitable for them. Everyone makes mistakes, including employers. Once you are officially registered, it will be much more difficult to fire you. On the other hand, if you are not registered before the probationary period ends, do not worry: this is common practice. If you cope with your responsibilities, you will definitely be hired when the probationary period expires.

You don't have to worry about lack of experience - after training on GeekBrains, you get a guaranteed internship. So you will already have work experience!

Freelancing

Rebels by nature are suited to another type of activity - freelancing. I don’t think anyone needs to tell anyone what freelancing is: work from anywhere in the world,
A schedule that’s convenient for you, no bosses standing over your soul, freedom of movement. In a word, an ideal job.

But freelancing has one drawback: if in the case of a regular job there is an “uncle” who pays you money every month, then here you yourself will have to look for a source of income, that is, customers.

All kinds of freelance exchanges will help you with this. A simple query and Google will return many articles on the topic of choosing an exchange. The following are considered the best in RuNet:

  • fl.ru,
  • weblancer.net,
  • 1clancer.ru,
  • devhuman.com
  • modber.ru,
  • freelansim.ru.

If you are interested, GeekBrains has made a selection of the best freelance exchanges, which describes the features of each. A selection is available.

Don't look at foreign exchanges yet. Since you are a beginner programmer, try to get comfortable with domestic ones. It will be easier for you this way.

Of course, a freelancer must take into account some more nuances, namely:

  • type of payment - cash or non-cash;
  • prepayment (if so, what amount) or postpayment (upon completion of the task).

These, as well as some other nuances, are discussed in the one already mentioned from GeekBrains.

Career ladder in IT

A programmer does not work on a software product alone. There are exceptions, of course, but if we are talking about a large product, then this is exactly how it is. In Fig. 4 depicts various specialties in the IT field. Note that the sales manager comes first, and the business analyst comes second. The programmer is given only the seventh place. After all, it’s not enough to create a software product, you also need to sell it.



Each of these specialties has its own role in the software development process. As for programmers specifically, the programmer’s career ladder looks like this:

  • junior developer,
  • Middle developer,
  • Senior developer.

But after reaching the Senior developer level, your career does not end. You can become either an architect if you go into the technical part, or a Team Lead if you prefer managing a team. Essentially, a Team Lead is a manager, and the effectiveness of the entire team depends on his skills.

Team Lead can grow into a project manager (Project Manager) - this is also a manager, but he manages not only programmers, but also all other specialists (designers, marketers and others) participating in the project. The pinnacle of evolution is the CTO (Chief Technical Officer), that is, the IT director.



There are two branches running in parallel - analyst and tester. Each of them has its own intermediate levels, allowing you to ultimately become a project manager.

Result

Well, we've covered all aspects of finding a job as a programmer. You can get additional information in the course “” from the company GeekBrains, upon completion of which, by the way, you will receive the appropriate certificate (Fig. 6). Let me remind you once again that this course is available completely free of charge using the promotional code “Hacker” when purchasing any profession.

All certificates are displayed on the profile page (Fig. 7), and you can receive your certificate at any time to attach it to your resume.


The company GeekBrains does not abandon its graduates - it offers internships and helps in finding a job, and for those who want to try to find a job themselves, the course described in this article is intended.

We always have a large number of fresh, current vacancies on our website. Use filters to quickly search by parameters.

For successful employment, it is desirable to have a specialized education, as well as possess the necessary qualities and work skills. First of all, you need to carefully study the requirements of employers in your chosen specialty, then start writing your resume.

You should not send your resume to all companies at the same time. Choose suitable vacancies based on your qualifications and work experience. We list the most important skills for employers that you need to successfully work as an intern programmer in Moscow:

Top 7 key skills you need to have to get hired

Also quite often the following requirements are found in vacancies: OOP, SQL and Git.

As you prepare for your interview, use this information as a checklist. This will help you not only please the recruiter, but also get the job you want!

Analysis of vacancies in Moscow

Based on the results of an analysis of vacancies published on our website, the indicated starting salary, on average, is 33,848. The average maximum income level (indicated “salary up to”) is 72,308. It should be borne in mind that the figures given are statistics. The actual salary during employment can vary greatly depending on many factors:
  • Your previous work experience, education
  • Type of employment, work schedule
  • Company size, industry, brand, etc.

Salary level depending on the applicant’s work experience

No. Instead of haggling, show that you are worth investing time and money in. Remember: you are still new to this game and have a lot to learn. Show your knowledge, tell us what you did to develop your skills. An educational diploma speaks to your readiness for commitment and the level of knowledge you may have gained there. But it is not always proof that you can do something.

Tell us about your personal projects. It doesn't matter how small or big, the most important thing for employers is to see that you can do what you say you can do. Show your github, website and so on.

Everyone understands that you have no work experience yet. But you have to give them a reason to hire you.

Attitude is everything

Yes. You are self-taught. This means there are a lot of gaps in your knowledge - but that's okay. Every developer is essentially self-taught.

The speed at which a programmer progresses through the learning curve and achieves success is determined by his attitude. This is why some experienced professionals may remain in their position for years, while newcomers will move up the career ladder in a matter of months.

Experience is not measured in years. While time plays a role here, it does not guarantee true depth of knowledge and does not distinguish good programmers from bad ones. A commitment to learning will help you move forward.

How to show this? The easiest way is to take part in discussions. Reddit, forums, Facebook groups, Stack Overflow, Medium, Quora, your blog - ask questions, answer questions, be active, leave a digital footprint. Help others, even if you think you don't have enough knowledge to do so. Ask for help, even if you feel uncomfortable.

It's also a good way to build connections in the community. Who knows, maybe someone will recommend you to someone and you will find your first job.

Get to know the basics

There are some basics in programming that you need to know, but which are not often covered in courses and lectures. Become familiar with SOLID principles as well as different programming paradigms.

Learn to use git and databases. Programming isn't just about HTML, CSS, and JavaScript. If you need some guidance, here's a detailed guide to basic development concepts.

You need to write code

If you haven't been able to find a job for a long time, keep writing code. The more you code, the more experience you gain, and the better you become.

When you're a beginner, the amount of code you write matters. In fact, the more you code, the faster you grow. Every developer goes through this process. When hiring, employers look for a junior who requires the least amount of training and has the most potential for growth.

You will always think that you are doing your job perfectly now, but you are not. Over time, the code gets better and knowledge expands. Perhaps in a month you will look at your current programs and be horrified or have a good laugh at them.

Final words

Small companies are more forgiving of lack of experience. But you still need to prove to them that you are worth something. Look at yourself through the eyes of an HR manager and ask yourself – would you hire yourself and why?

If not, why not? Where are the spaces? Where do you lack experience? Only you can force yourself to move forward. Don't complain, don't talk about it, don't think about it, just do it.

Write code, create something, learn something new, and keep submitting your resume. No experience? This is your chance to create it yourself. The main thing is to continue to create and knock on different doors. Eventually you will find the right company.




Top