How To Change Career And Become A Developer: Personal Tips
For 15 years I had been journalist. Now I develop mobile apps in the largest Russian bank

My name is Valentin Makov, I am a former journalist. In the age of 37 years old I stopped writing and editing texts and became a professional programmer. The last two years I have been employed as React Native developer in Sberbank, the largest Russian bank, ending up as Chief Software Development Engineer. In this post I will try to tell how I managed to change career, and, in order to make my story more useful, I will break it in series of practical tips.
My journalist career, which ended in 2017, spanned for nearly fifteen years. By the end of that time I realised that my job choice was wrong and I could not go any longer. I am not going to dive deep into reasoning why I chose software development. Let’s just assume that I knew what I wanted.
So what next? Here are the tips that helped me reach my goal.
1. Be curious
Without trivial human curiosity you will hardly be able to do any good in a new field, whatever it is. When I was only making first steps in direction of web development, I was dying to know how people do basic things, like writing HTML and CSS code. Then, after reading a couple of HTML/CSS books and visiting a practical course on the same subject I found myself attending a JavaScript course. And when I felt that I can master at least simple JS cases, my curiosity and inspiration virtually skyrocketed, which allowed me spend quite a few sleepless nights trying to solve problems which at first looked impossible to me.
And one more thing. From the very beginning a thought occurred to me which kept me going ever since: there are a lot of people in the world who had mastered programming, and if they could do that, so can I.
2. Find a mentor
This part is crucial. A good mentor can help you understand many things, but more importantly, he or she can make you believe in yourself. My personal mentor was the instructor at the JavaScript course I mentioned in the previous tip. He was running a private but totally free project whose objective was to raise new developers.
It is hard to say how you find your own mentor. It might be on a professional course, on a conference or even on a site like Stack Overflow. Of course you should be prepared that you will have to approach many people before you find the right one. Still, you will be surprised how many members of programming community are ready to help beginners and explain them basic concepts.
3. Take part in volunteer projects
Working for money is your goal, that is right. But before that you have to gain critical mass of experience. Taking part in a volunteer project is one of the best ways to achieve that goal. At the end of the day, many popular open source libraries are supported via volunteering.
4. Use multiple sources (and do googling)
If you hit a concept that you do not understand, do not waste your time rereading the same documentation a thousand times — use alternative sources instead. It is absolutely normal if you fail to grasp a subject at the first go. Mind you, do not let yourself feel stupid when it happens to you. When developers write documentation, they usually assume that their audience has achieved a certain professional level. But sometimes, when you are only a beginner, this level is out of your reach yet, so you will have to do some research.
There are tons of articles, tutorials and documentations in internet dedicated to programming. And the most natural way to find them is googling. So if you haven’t yet mastered googling, you should make it your day-to-day practice.
5. Do not let others discourage you
When I was looking for my first development job I had this wonderful episode. I reached a person who needed a junior programmer, and at one point he asked me about my age. When I said I was 37 he sneered, like: ‘By the time you gain some decent experience, you will turn 40. Do you really think anybody will need a programmer that old?’ Wait, what?!
If you ever meet anybody who says to you anything like that (it might not only be your age — it could be your sex, your previous occupation, your appearance, or anything else irrelevant to what you want to do), just forget about this person right away and go on. Normal people will never discourage you just for the sake of it. You can only be turned down because you might not yet got enough experience.
6. Take advantage of your previous career skills
When I came into development, I had nearly fifteen years of experience in journalism. Irrelevant though might it seem, it was not. The most important part you gain through your previous career, in my opinion, is understanding how job is done in principle. In other words, you might be not very experienced as developer, but if you did your previous job well, you possess a very important advantage — work discipline. I have examples in my developer career when my discipline overweighed my programming experience greatly and let me achieve much more success than I counted on. So, do not throw your skills away. Embrace them and use them. They are your advantage.
7. Practice
In a way this tip repeats a few previous ones, but due to its importance I found it necessary to underscore it. You can be reading a lot of articles and pieces of documentation daily. You can be learning hard language features. But all this is theory. Thought it is of a great importance, practice is paramount. Only practice and experience bring you real understanding how the language you learn behaves. Only practice lets you learn to find solutions for real life problems and see through them even before you dive into details. And only practice lets you feel yourself experienced. All this may sound trivial, but sometimes trivial knowledge may surprise you.
8. Become a teacher yourself
Though practice is paramount, its combination with deep theory knowledge makes formidable player. One of the best ways to learn new information is to pass it on to somebody else. So, when you have gained enough experience, try to become a teacher yourself. My mentor had told me once that he began teaching people because he had not been content with the level of his own knowledge. Being an instructor he absolutely had to know the material fluently. He succeeded in his task brilliantly. He told that before he started teaching he did not know JavaScript too well. After a few semesters his theoretical knowledge skyrocketed, which, combined with his practical experience, made him an outstanding programmer.
***
Though these tips are not indisputable, they are an answer to my own question: what knowledge would have helped me if I had it from the word go? I hope you will find them useful too. And if you have your own stories and tips that you think might help others, please feel free to share them in comments.
