If you want to start your own business, you need to be patient and resolute.

The story of Vitaliy Dyachenko, UppLabs’ founder and CTO, member of Global CTO Forum, mentor in Maya Startup Hub, Fintech and PropTech-enthusiast, who managed to work in 3 of the 5 largest outsourcing companies in Ukraine.

How I started programming

It took me a while to start programming. There were only 200 children in the small school where I studied. My math skills were good, and my teacher decided to give me a book about Pascal so that I could read it and learn to program. But at home, I didn’t have a computer, and at school, I guess, there were only three of them (and quite old).

That’s why my first programming lessons started in the notebook. I just kept writing the program code by hand. I arrived at the computer science class once a week where I tried to type and compile on a computer the code solved in the notebook.

Of course, most of the code didn’t work. In programming, everything is quite complicated, so if you miss or write something wrong from a logical point of view – the code just doesn’t work. It took me a long time just to run something, and eventually, some parts started working. That’s when I began to understand the debugging process.

I have been practicing for almost a year when I got to the summer children’s IT camp. I remember how the teacher approached me in the first lesson and saw my notebook. She opened it and saw it was all written off by program codes. She emphasized that I had a lot of patience, and added that she didn’t think she could have done the same. 

At that moment, I realized for the first time that it was my patience that would take me where I wanted to go and would allow me to move on because I was definitely not going to stop developing in this way.

At the time of my admission to the first university, students could apply for several specialties. So I took the opportunity to pass the exams in two departments: IT and finance and got accepted for both of them on a state-financed basis.

As for computer science, I was inspired by the result and the process. And usually, I did more than it was necessary because it was “fun” for me. I helped my classmates in their coursework. I really enjoyed programming and besides, I had a financial interest. All of this helped to level up my skills very quickly. Trying to always be a little ahead of the program, in the third year I’ve already proceeded with the program part of the coursework for the fifth year.

First project and the start of UppLabs 

In the fourth year, my classmates and I decided to create our own small product that could organize all the companies in our city into one online community. This was the first idea that the three of us started working on. Although we didn’t complete this product because we simply hadn’t enough technical knowledge, skills, and efforts, this attempt gave us some experience.

In the fifth year, we made a second attempt. And it appeared to be successful. An acquaintance from a previous product called me and said that a friend of his friend had approached him in order to make an application for his company.

We developed an application for this project together with a friend of mine and it took us about six months, then we started working on other small projects. Six months later I decided to start my own online product that could organize the work of other companies in this area.

By that time I already had my reliable team and decided to start my first UppLabs project.

As a business owner, I went through several phases, and each time I had certain thoughts and knowledge that seemed important at the time. What I always believe is that you definitely need to have the right team that can help you develop and show the best results. As for my part, I’m the one who has to manage all risks. This is critical.

Gaining experience

I had already created the original UppLabs prototype in 2012 when it was a small product company. The same year, without having stopped developing my own product I accepted a job in a large outsourced IT company.

I needed experience.

After that, I managed to gain this experience, working in three of the TOP-5 Ukrainian outsourcing IT companies.

As an employee of large outsourcing companies, I’ve learned a lot about the organization of processes, the level of service, and about how this service should be improved and implemented generally. I gained experience in product and business solutions as a bonus while being a founder of three startups, a person who graduated from business school, a person who helped other startups to develop their products, and while watching their mistakes. So I would say, all of the above influenced me.

I gained a great understanding of work processes and took the best work practices as a basis for my company.

Moreover, the involvement of outsourcing companies gave me an understanding of the need to follow technology trends. After all, a successful company cannot work with technologies that no longer allow it to be competitive in the market. That’s why, a few years ago, we started using React.js.

One of the last companies I worked for was an Israeli product company, from where I borrowed some tricks to make the workflow more open. For example, the “all hands” or “happy hours” practices, that we now use at UppLabs, are an example of a product company approach that cares more about its employees than the financial component.

In 2019, as a mentor, I took part in the Facebook Developer Circle Kyiv. This event was a great opportunity for me to meet many talented developers and enthusiasts, to become part of the community and realize that I have enough experience to share with those who are planning to start their own careers or even their own business in IT. The event gave me more self-confidence.

Facebook Developer Circle Kyiv

Flat Company

Education, events, experience, self-improvement are the most important components for a business owner. After several experiments with the company’s structure, UppLabs is now moving towards Flat Company.

Flat Company is a company where everyone can approach anyone and share their thoughts, their suggestions, their propositions on improvements of the company and the processes, and any other issues.

I have two key rules. The first rule is to manage risks and create a plan B. You should always have a backup plan. Risk management can be attributed to all aspects of the company’s life including work with people, development of the company, planning process.

The second rule is constant improvement. My team and I have to constantly improve. Because as soon as we stop – we start to lose to competitors.

I don’t want to build another outsourcing company. Instead, I want UppLabs to take its niche as a leader in one particular direction. And we are working on that now. And to achieve this, we need to be first to make a move.

A good team is a priority for us and finding one is a complex and time-consuming process. Initially, I conducted all interview stages for all key players in the team on my own. But now I’m starting to involve other experts who can help me with that responsibility. Currently, UppLabs is developing so fast and diversely that my technical experience is not enough to interview a certain category of specialists. That’s why we involve experts or friends who can help us with decision-making.

UppLabs Team

My intention is to make UppLabs an autonomous company that is not dependent on anyone, including me.

The key to success

The biggest challenge for me is to keep and motivate the employee, to develop him or her in the long run. It is important that a good specialist would be interested in staying in my team.

The key to success is the desire to improve yourself. The key to a company’s success is to find a team of like-minded people who want to develop the company and grow along with it. The Flat Company approach may be the answer.