How to build a successful IT career without a university degree. A 23-year-old Team Lead shares his experience.

Alex Randel
9 min readFeb 25, 2018

--

I’ve heard this story from a young Ukrainian programmer, who had no education, but became the team-lead in a large IT company at the age of 23.
Here’s a first-person story:

My name is Vlad Pronskyi. I am 23 years old and I manage the development department in Lucky Labs. I started to work for this company in January 2014. At first, I planned to stay in the company for half a year. I wanted to work there while I was at college. But sometimes things do not go as we plan.

In the 9th grade I decided that I would not be a sailor, unlike most of my friends, (I was born in Kerch) and become a programmer. After finishing school I entered the Computing Faculty at college on computer faculty. At the age of 18, while I was writing a diploma, I got a job in Lucky Labs and moved to Kiev. Then I wanted to continue my studies at the Faculty of Computer Science and Cybernetics in Taras Shevchenko National University in Kyiv. Although, I still haven’t submitted application for admission to the university. On the one hand, I got excited about work and, on the other hand, I fell in love with a charming colleague.

This is how my self-education in IT started. I must confess, this path was not the easiest one, but quite surmountable though. I had to work hard and learn a lot due to the lack of university knowledge, but I compensated it by self-education i.e. courses, master classes, books, tutors …

During this period I accumulated sufficient experience and professional knowledge that can be useful for developers. So I decided to share some life hacks on how one can move from a small town to the capital and start a career in IT without a university degree.

At the age of 13 I obtained my first experience in reverse engineering, at the age of 14 I learned HTML, JavaScript and PHP and at the age of 15 I knew for sure that I would become a programmer.

The main value of adolescence is that we are not afraid of experiments, to get deeply engrossed in the unknown, we are not afraid to fail if something goes wrong. At this age we laugh at difficulties and we can already make effective use of our everyday life.

Advantages of early programming

You learn not to be afraid of your desires.

Everything started with my insane obsession with the game S.T.A.L.K.E.R. I got acquainted with guys on a forum who were making modifications for this game and I expressed my willingness to join the team. I dimly understood what I had to do but they gave me a chance. Then I realized that nothing is impossible. I modified weapons textures in the game and thus I got my first experience in reverse engineering at the age of 13.

If you fight your doubts, you become decisive.

At the age of 14 I created my first gaming website. For this purpose I had to attend computer courses where I learned HTML, JavaScript and PHP. My first project was a website where one can upload pictures and vote for them. At first I doubted a lot, went from one extreme to another in search for an optimal solution to the problem. Eternal doubts make us try different options and force us to dig as deep as the roots. Decisiveness comes the moment when there is no place for new attempts and you are ready to make a clear choice (even if this choice is to give up the project just because “it’s not yours”). But years later everything doesn’t seem so gloomy and projects look quite level.

You start earning.

The most important thing in programming is to start. Afterwards, the projects will come up from many sides. When I studied at Computer Faculty at college, I wrote various simple programs and I liked to computerize everything. This is how the orders started to appear and I earned my first money. I spent that money mostly on my education (and I recommend you to do the same!) because I felt a «hunger for knowledge». I attended courses and master classes where I obtained not only a lot of useful information but also expanded my circle of thinking people. Having received the first money, there appears an independence from your parents and you start to face such problem as financial literacy.

Non-stop training.

As a freelancer I did HTML page layout, developed sites on a turn-key basis, I was engaged in integration of various CRM. I was not an expert in all tasks and it forced me to search for and learn more information from various sources. This approach teaches you to find the information you need and understand it quickly.

It is important not to stop, not to get lazy and absorb as much knowledge as you can. At the same time, I studied other programming languages such as Ruby and C++. I solved olympiadic problems on websites, communicated on TopCoder. Pay your attention to the strengthening of algorithmic skills. They allow you to find solutions to various problems.

Rules of the first interview.

My first interview in life (with Lucky Labs company where I have worked up to now) was held on Skype in 2014. I was preparing for it thoroughly. It’s good that the Internet is full of articles on this topic.

I understood that it is important to be honest during the interview, not to be afraid to confess that you might not know something, but it is essential to be ready to communicate and discuss the problem. These things are valued. Everyone understands that you are a young and inexperienced specialist, so, as a rule, it is not the technical skills that are assesssed at the first interview but it is the ability to listen, discuss and be ready to learn which is more important.

As for the question of «how to do something that you do not know?», you need to remember a book or a source where you can find a solution to this problem. Being a programmer usually means to «remember where and how to find a solution» rather than the solution itself.

Life hack. As a rule you are asked to write some algorithm or solve a simple task during the interview. Do not break your head over the code if you feel that you fail. It would be fine to draw up a solution algorithm in symbolic coding if the interview is held in the office. During my interview on Skype I just opened the solution to the necessary algorithm in «Wikipedia» on the second screen and copied it. In general, for a good employer it is important when you are able to quickly get things going and find the right solution, not knowing all by heart.

What is important during your first working day

Do not panic and do not be afraid of making a mistake

You shouldn’t allow your excitement to win over your knowledge. On the very first day in Lucky Labs I was given a task to develop a simple component for the front-end. Back then I wasn’t aware of the time frames for doing this piece of work that’s why I was very worried. My first task had been finished by the evening of the first day but with an error, though. In such a way I started to get acquainted with corporate culture: task trackers, code review, testing, releases etc.

Do not be afraid to be proactive

Suggest your solutions. They may not be always correct but they can force to have a look at the issue from a different angle which nobody noticed before. In any case, everyone will get a benefit, both you and your team. Thereafter, your colleagues will ask for your help to find a solution or check them.

Smile and be sociable

From the very first days it is worth taking care of relations with your colleagues. You will spend together at least 8 hours a day, so it should be comfortable. Thus you will be remembered as a sociable and open person and you will be invited to different events even after work. These relations will become useful in future. There is no better way to start a conversation than with a smile.

Programmer’s bookshelf

There can’t be too many books for a programmer. I remember myself reading everything and I even initiated the creation of a corporate library in Lucky Labs.

I liked the following books: «Types and Programming Languages» by Benjamin C. Pierce, «JavaScript. The Good Parts» by Douglas Crockford and «Design Patterns» by the «Gang of Four». Such books as “C ++ in 21 day» by Jesse Liberty or «The C ++ Programming Language» by B. Stroustrup will be very useful to understand how programming languages ​​work in low-level, what is a stack, heap, how memory works etc.

In addition, I recommend podcasts. The coolest podcasts for me are Radio-T and DevZen which gave me the understanding that programming is not only the code in IDE and the commits. Programming is to understand the problem and prove that it really exists, choose the right tools, write the code, check it, deploy and inform those for whom this task was critical. Many people can argue with me that all this is beyond the programmer competence, but it is the desire to take responsibility to to he full that will allow me to become the Head of the Department in future.

Now I mostly use audiobooks and I listen to them everywhere: during working out in the gym, on my way to work, going for a walk…

Life hacks of the first managerial experience

My first team consisted of three technical writers, with whom we were creating documentation on integration of our product. During these few months of joint work I learned a couple of useful lessons:

It is important to constantly expand your skill set

I had to read a lot, learn things that are necessary for my work in the company now and with which nobody could help me. For example, to solve a problem, we needed knowledge of mathematical statistics and I took private lessons with a tutor to fill this gap.

Do not waste your time for disputes

The main things in the teamwork are the ultimate goal and constructive approach to its achievement. It is necessary to lower the threshold of «personal importance», not to stand on your point whatever it takes and give an opportunity to speak out to everyone. I think the ability to give way is charming and it sometimes works like magic.

Ask for help from your senior colleagues

Books are books, and real experience and communication are still all-important. Moreover, people like when you ask for an advice.

Team Lead by default

A new server solution, which we wrote in style of micro services, was initially planned to replace the old solution, but the result was that we created a separate product. Hence there was a need to create a new department in Lucky Labs, which will deal exclusively with this software. Thus I became a Team Lead and began to form my own team to maintain and develop this product. A year later, my team consisted of 10 cool specialists.

During this period I understood the following:

1. Team Lead position is one of the most difficult in IT due to the multi-vector nature of tasks. You need to have a good understanding of product, understand what and how to do, discuss and prioritize tasks, maintain the team spirit and do your best to develop your colleagues.

2. Do not be afraid of being a perfectionist. This trait helps to get the best possible result and reach a new level.

3. It is better to outsource the part of the work you are not familiar with than to search for a solution to the problem by yourself.

4. Work in steps. Think twice before you do something. Let’s consider a simple example in programming: first you need to design the architecture, understand possible errors, fix them and only after this you can begin to implement.

5. Work for free.

I consider that it is a very important personality trait when one tries to make the world a better place on free of charge basis. In future it will always be rewarded!

6. It is important to constantly take care of your relations with colleagues. One never knows how today’s situation will turn in future. Try to help people more often out of your altruistic considerations.

7. Have rest and spend more time with loved ones.

You will just get tired without rest, «your batteries will run out» and your work won’t bring you pleasure any more. Who, if not our loved ones can sincerely share the joy of our achievements?

Looking back, today I understand: practice, self-development and a comprehensive approach to programming played an important role in my story. Moreover, the desire to create something new always inspires me. But the most important thing (even at work!) is human relationships. So I want to thank my team, guys with whom we do our job and who are always ready to support!

--

--