How to switch to development from another profession and grow quickly in a new place

My name is Alexey Darwin, for many years I led development teams at large telecommunications companies, and for the past 2 years I have been responsible for the work of product teams at X5 Retail Group. During this time, I managed to gather about 70 programmers in the department (40 in-house, 30 – external developers).

Among the candidates who came to us for interviews, I met several people who recently switched to programming from other professions. Among them were Yuri and Semyon, who eventually safely entered our team. I asked them to tell how they decided to change their profession, how they looked for work and what helps them grow in the company today.

How to understand that the time has come for change

Deciding on a change of profession is not easy: many fear competition with younger specialists and do not want to lose their salary, which is guaranteed to “sag” at first, others are not sure that they can find a job. Moreover, by nature, a person is inclined to minimize energy costs: the longer he does one thing and lives according to an established schedule, the more difficult it is for him to take on something new. How to understand that life in the comfort zone has dragged on and it's time to move on to serious actions to change the profession?

Yuri Velikiy, backend developer at X5 Retail Group:

“I worked as a software engineer at a state-owned enterprise, but there was one name from programming, the tasks did not differ in variety, and the feeling of a swamp did not leave me. I always knew how my day would go, and moreover, how the next three months would go. On the one hand, it was very calm and comfortable there, and on the other, my life was constantly poisoned by the thought that I was not developing. I was afraid once to wake up and discover that I was already many years old, and I was sitting in the same office and had not learned anything new over the years. Now I think that even 2 months in the comfort zone is already an occasion to think about whether time is wasting ”.

Yuri the Great

Semyon Osipov, Data Engineer at X5 Retail Group:

“My previous specialty had no connection with programming at all. I worked as a labor protection engineer for 6 years, and my main task was to monitor compliance with safety measures. The work could not be called boring, but it was monotonous and very nervous: I spoke endlessly about the same rules, and people violated them endlessly, which sometimes caused serious emergency situations. Once an employee began to unscrew the bolt from the tank, forgetting to measure the pressure in it, as a result, his finger was almost taken off. But the worst thing was that in a not very long time I learned everything from this specialty, but nothing new happened there.

At school I was engaged in programming, but then these classes became very rare, and the older I got, the less I had the confidence that I could return to this. There was still such a funny moment: when I chose where to go to study after school, my mother, who led the development of systems for the military industry, dissuaded me from going to programming. She said that if you do not become a leader by the age of 30, you will not be able to continue in this area – they will be replaced by younger employees. This fear settled in my head for a long time, and in order to “enter the IT”, I matured only by the age of 28. ”

Semen Osipov

I will only add to this that a successful interest in programming requires a genuine interest in this activity. If you are simply tired of your current job and you are ready to change it to anything, then this is a false motivation. She is unlikely to help you learn a new difficult profession.

Which language to choose and how long to learn


“The choice of language should be taken seriously – a lot depends on this, including success in finding a job. It is better to start with languages ​​that are relatively easy to learn, contribute to an understanding of the basic principles of programming and are in demand in the market. I looked at what kind of developers employers at HeadHunter most often look for, and as a result I started learning two languages ​​at once, Java and C ++. In parallel, I took courses on Data Science, where I got an idea about Python.

Six months passed from the beginning of my studies until the moment I felt within myself the strength to go to the first interview. "This is relatively fast, but you need to understand that I had a minimal load at work, and there was a lot of effort to study."


“Lucky! I didn’t have enough energy to study – I combined it with two jobs at once, because the duties of a support engineer were added to the position of labor protection specialist. I often helped my colleagues solve problems with computers; as a result, I asked for this post officially.

I studied programming in courses. I saw on Facebook a proposal from the Moscow Python community to work with them as an administrator for a free course and responded. For 10 weeks of training, I completed my first data analysis project – I processed the expenses of a large company on mobile communications and found a way to reduce them by a couple of thousand dollars a month. It took me 6 months from the start of my studies to the first interview. ”

How to look for work and choose an employer

At this stage, you will need a lot of patience – interviews can take more than one month.


“At first, my feedback on the job search portal was not even viewed. I began to rewrite my resume in an attempt to find the right submission, and at about the twentieth iteration, I finally began to receive rare invitations for interviews. At first, I was “pissed off” after talking with HR specialists, but gradually I got to the technical ones.

Eychars often asked why I went to IT at that age, on the eve of my thirtieth birthday. He answered them honestly: I want to become a programmer, I already work as an IT engineer and I like it. They refused me, saying that they were looking for lords. I quickly realized that no one in the industry really needed joons, but decided not to give up.

At some point, experienced people gave me advice not to bother with editing a resume, but to act through personal contacts. I found several people from the IT companies I was interested in on the network and wrote them an honest story about myself: where I studied, why I want to work as a programmer. It helped get into some important interviews. ”

If you have enough perseverance, sooner or later the series of failures will end, and you will be offered a job. At this point, you can’t rush: first you need to find out if there is an opportunity for training at this job and what tasks to solve. For a novice developer, this is very important.


“I evaluated the employer by several criteria. First, I looked at technology: if the company used Java older than the eighth version, I realized that there was likely legacy, but I did not really want to do this.

Secondly, I asked about the possibilities of vertical growth and what is needed for this: what needs to be studied, what indicators to achieve, what control measures to pass, and so on. If I received vague answers without specifics, immediately put a minus.

Inadequate tasks at interviews were still very alarming. Once they gave me a hefty pile of A4 sheets with pieces of code and set the task in 4 hours to figure out what this code would output. I decided not to waste my time on it and just left. ”


“At the very beginning of the search, I got burned very well: I wanted to start working in IT as soon as possible, so I agreed to the offer, not figuring out where I was invited. As a result, I got the position of an analyst in one startup, where there were no organized processes, no training, no meaningful tasks, and even I collected the computer on my first working day myself.

After a month and a half in this chaos, I firmly decided to look for a team that is engaged in pumping my specialists. X5 was one of the few companies with a distinct training system. The interview was also unusual: there was no stage with the eychar, a technical specialist spoke to me immediately, and only after that I received a test task. Later, I found out that the interview was weak, the test was given to me in the form of a second chance. It helped me get into the team. "

I will explain why there is no stage with the HR in our interviews, and the test task is more an exception than a rule. I am of the opinion that it is better not to waste time on this. It is first of all important for the employer to evaluate such things as the type of thinking, experience in solving problems, motivation and character of the developer, and this is possible only during a personal meeting. A test task can be given if during the interview it was felt that the person was too worried. And in order to understand whether a person will stay in the company, no special HR-techniques are needed – the best indicator is his desire to learn and grow in the profession.

How not to leave the race after employment

The first months at work in a new specialty is a real test. What to do to cope with this challenge?


“Do not be afraid of difficult tasks. My first assignment in X5 was not at all connected with the language I was teaching: it was necessary to collect a data window in a week on an unknown framework for me. I honestly informed the manager that I did not know how to do this, but I’ll figure it out. Well, you have to understand that here is no longer a sandbox, he promised – he should do it. If it doesn’t work out and books with forums do not help, you need to immediately go to your colleagues and ask for help. The main thing is not to be silent. ”


“I followed the same pattern: the first task on an unknown framework – panic – hard work – the result. It will definitely not be easy, but you can simplify your task by learning to admit that you don’t know something, and not be afraid to ask for help from colleagues. ”
The good news is that the period of panic will end sooner or later. What will help reduce it?


“Your personal perseverance and contact with the team. I was lucky with my colleagues, they themselves offer help, so no one here is afraid to approach the more experienced guys. We quickly became friends, we often communicate and discuss our tasks. I think it happened because only those who are really interested in programming are invited to the team.
In addition, the company has a systematic approach to the exchange of experience. Every two weeks we gather for small meetings, where in the format of mini-reports we tell how these or those problems were solved. Once a month there is a big meeting of the whole department. Not everyone has the courage to speak there, but the more experienced ones are gradually pulling up. The same thing happens in the work: product teams are balanced by the number of beginners and strong developers, so there is always someone to learn from. ”

In our department there are about 10 product teams of 5-7 people, of which 1-2 have extensive development experience (from 4 years working with specific technology and more). At the same time, teams vary in level: there are teams for the simplest tasks, where developers intensively learn in the process.


“People are selected into teams so that they complement each other, and this is cool, because everyone has different abilities. Semyon and I work in the same team, but if I, as an engineer, have a deeper technical background, then Semyon has great communication skills and quick decision-making in difficult situations – it’s not for nothing that he persuaded people to wear a helmet for 6 years and quickly dealt with those who hollowed out his hand. And the team also has a team leader who has extensive experience in development, but the leadership function for him is still new, and he also studies with us. ”

I want to add on my own that the construction of training processes positively affects both developers and the company itself, which gets the opportunity to grow. Over the past year, the X5 Retail Group Big Data Directorate has grown from 150 to 270 people, and our Big Data product development department has grown to 70 people. To increase our staff so quickly, we use all available channels for attracting developers: we post vacancies on popular job search portals and social networks, we work with developer communities – for example, in late November we held a joint meeting with the MoscowPython community in one of Moscow’s X5 offices. We are close to the ideas of such associations, and we also strive to develop our team as a kind of internal community of developers: arrange internal meetings, select product teams according to the principle of mutual learning.

Among other things, the opportunity to study and work with experienced colleagues helps to quickly recover in the salary if it decreased after the transition:


“Immediately after the transition to programming, my salary fell by 40%, but after a year of work it not only reached the previous level, but also exceeded it by 15%.”


“When I switched to programming, I“ stuck ”my earnings by 50-55% – but this is because I didn’t get so much at the previous job, engineers in that area have a not very high salary.”


Moving from another profession to programming is a risk. You may make a mistake with the choice of technology, lose time in a company without development opportunities, fail to achieve the same salary level and, as a result, lose motivation. To avoid this, you need to carefully consider the choice of language and place of work.

From the point of view of the employer, hiring people who have recently moved into development from other professions is also risky. They have room to retreat – if it becomes too hot at a new job, they can return to their previous specialty. Nevertheless, it is among such people that the most motivated and therefore promising specialists are found. If you give them the opportunity to learn, they will quickly catch up with the professionals and remain in the team for a long time.

Similar Posts

Leave a Reply