We are launching a special series on our blog where we’ll talk about developers who studied at CodeGym and now work in our company, creating and improving the product.
It’s a story of Vasyl, who studied programming at school, received an education in electrical engineering, and worked in the field of ecology. Then, in 2015, he changed his career and started learning Java. Now Vasyl is a team leader of developers who write tasks for the CodeGym course and improve it.
"I doubted whether I should start coding"
I studied in the information technologies class in one of the best Ukrainian lyceums. Back then, coding seemed dull because we learned Pascal and practiced for the Olympiad programming. The peculiarity of Pascal is that it doesn't rely on the principles of object-oriented programming, but there are big bits of text and brain-teasing tasks. Therefore, after high school, I doubted whether I should code professionally.
I needed to pass three exams to enter the university and become a programmer: programming language, math, and physics. Before the exam, I filled out a questionnaire in which I had to indicate five faculties where I wanted to go. The priority for me was the Computer Science faculty. The Electromechanics faculty was in the second place. Since I didn't get to the first one, I went to the second one.
I left full-time education for remote learning in the sixth year because I started working. I was engaged in engineering ecology, issued emission permits for enterprises, and drew up technical specifications.
I worked in ecology for about five years. Then, the dollar’s exchange rate started to rise in 2013. At some point, my sister, who worked as a tester, started earning more than me. Before that I thought I was making good money. I already had a family and a small child, so I came to the manager and said I wanted to peg my salary to the dollar’s exchange rate. They refused, and I decided to resign.
"The first time I studied at night"
While working in ecology, I was trying to learn C++, C#, but it didn't work out for me. Later, I started watching videos about Java. In several of them a developer Sergey Nemchinsky answered the same question: "What do you think about CodeGym?".
He answered so harsh that it made me curious. Usually, if the competitor is worthy, that's the only way to deal with it. Therefore, I registered at CodeGym, passed 3-4 levels, realized that it suits me perfectly, and purchased a subscription.
In December 2015, I said at my previous job that I was leaving. Until March 2016, I was still finishing projects and periodically going to work.
Thanks to CodeGym, I had a lot of practice. If you compare me to my coursemates, I was first or second in academic performance. In the beginning, I studied at night (from midnight to 3 or 4 am) because I had a newborn baby. I remember very well when the update of statistics on the website began at three o'clock in the morning, and the server was prolonged. After I joined CodeGym, I discovered why this was happening and fixed the problem. It turns out that I got to know CodeGym from both sides: as a user and as a developer.
After I quit, I stayed at home almost all the time and studied. I spent about eight months studying. I could spend hours solving tasks. I felt good, and my motivation was high.
I remember the section of the quest from the 16th to the 19th level - this is the initial multi-threading. It was difficult for me: I even gave up for two weeks, but then I made an effort to learn it and did it. It was the most challenging part of the training.
"Why not send my CV?"
I got an unpaid job at a startup and started an online internship at СodeGym at the end of my studies. Once I saw a vacancy for a junior developer at CodeGym in the internship chat. I thought: "Why not send my CV?". At the same time, I got a confirmed offer to work for a startup with a salary.
I went to an interview at CodeGym: the technical part of it lasted 2.5 hours. I immediately understood that I had passed because I answered all the questions correctly, except for questions about databases. And now I am the one who deals with databases at CodeGym. That's what happens to me sometimes: what is not mine becomes mine over time.
When I got an offer, CodeGym was getting ready for a transition to CodeGym 2.0. In CodeGym 1.0 there were tasks and testing of functions with "yes" or "no" answers. The idea of CodeGym 2.0 was to show the users exactly what their error was. So, when I arrived, the development team was rewriting and adding tests to make it clear what the error was. At first, I was writing tasks, and then I took over tasks optimization.
Later, I began to work as a backend developer. We rewrote the admin panel because interns originally wrote it. I actively immersed myself in the concept of REST: API interactions and architecture. I was also involved in the development of plugins for a long time. One of my colleagues does this now.
In May 2018, my second son was born. When my vacation ended, I received an offer to become a team leader of developers, who participated in improving and writing new tasks and partly in backend development.
As a team leader, I can do anything my subordinates can do. But my team doesn't do everything I can do.
Usually, if the task I've given someone on the team is difficult, I perform a code review. Then, we look at the code written by a developer together. I try to help my team understand that it's impossible to write perfect code on the first attempt.
When I started leading the team, I understood that it was easier for me to perform all the tasks myself than to supervise everyone. Now it has changed, and I can see my people grow.
Tips for newbie developers:
Read coding books but also write code.
I tried to read books, mainly on C#, and then I tried to code a little bit. So, I have a piece of advice: if you want to learn how to code, you must code.
Work a lot.
At my previous job, I studied at night. Then I quit and studied all day: from 11:00 a.m. to evening, and from 11:00 p.m. to 02:00 a.m. It was more than eight hours a day. So I don't believe that you can learn coding if you spend just 15 minutes a day.
This experience is essential for a job interview. A project I was involved in at a startup helped me a lot. I knew what I was talking about in the interview without revealing the nuances of the strategy.