“Over this ten-year journey with Innovecs, I have learned a lot” — Kyrylo Krasnobayev, Lead Software Engineer

June 3, 2024 5 min read

I’m Mariia Gerasymiak, and I’m here to continue showcasing the remarkable journeys of our team members. Today, I’m thrilled to present Kyrylo Krasnobayev, who holds the esteemed position of Lead Software Engineer at Innovecs.

This year marks a significant milestone for Kyrylo — a decade of dedicated service at Innovecs. I caught up with him to chat about how his experiences and the scene at Innovecs have changed over the past ten years.

The Journey to Tech: Where It All Started

Back in high school, I dedicated myself to mastering English with the guidance of a skilled tutor. Maintaining proficiency in this language post-graduation was a priority for me so, I decided to further my studies at the Institute of Foreign Languages. In the early 2000s, there wasn’t as much English-language content to immerse in, so choosing this field made sense to me. However, midway through my third year, I had an epiphany and realized my true calling lay elsewhere.

I made the bold choice to transition into tech courses, which, in hindsight, were far superior in quality and depth than what’s available today. Perhaps it was because the tech landscape was still in its infancy, and these courses were helmed by top-tier specialists, who later ventured into the corporate world, helmed these courses.

During my time in these courses, it became evident that I lacked a solid foundation in math. So, I took the initiative to pursue a second higher education degree at Yuriy Fedkovych Chernivtsi National University to rectify this gap.

Aspirations of Mentorship and Teaching

The programming world enthralled me, and I became an eager and diligent student. Almost immediately after completing my courses, I was offered a position as a teaching assistant at the same company that had conducted them.

Teaching quickly became a passion of mine, I really enjoyed teaching because, by nature, I love sharing information and explaining things. I take great pride in knowing that one of my former students has gone on to work at Google. While his journey post-course involved numerous learning stages, I like to think that I played a pivotal role in laying the groundwork for his career.

Looking ahead, I envision myself taking on the role of mentor within a Mentorship Program. Naturally, this hinges on various factors, such as work commitments, but someday, I’d like to teach or share my experience through mentoring.

Engineering Leadership: Inspiring and Empowering

Upon joining Innovecs, I had the privilege of working under the leadership of Dmytro Velykoivanenko, who stands out as one of the finest leaders I’ve encountered in my career. His mentorship and guidance were invaluable as he deftly orchestrated our team’s processes. Under his stewardship, we successfully implemented Agile methodologies from the ground up within six months, fostering a work environment where each team member felt empowered and valued.

Now that I am working on a different project, my manager is Alina Horai.  Alina plays a pivotal role in structuring our workflows, documenting our progress, and offering support whenever needed.

In the future, I am considering becoming a team leader. However, I’m sure that I need to gain additional knowledge and undergo training to be effective and contribute more to both the project and the team.

Ambitious Project at Innovecs

My journey with Innovecs began during the period of Maidan uncertainty, a time when not all companies were willing to take risks by actively hiring and expanding. At that time, I was already a senior developer, primarily specializing in PHP programming.

After the interview, I had the opportunity to speak with the client team, and we immediately hit it off. Most of the team consisted of experienced professionals, and our values aligned perfectly. I was set to embark on a very interesting and large-scale project where I had carte blanche. I could make numerous strategic decisions and work not only on the code but also on the vision.

This was a new flagship platform for media content, which would later be used by major global companies. I was highly motivated by the opportunity to independently address design and architecture issues of the platform.

Creating this platform almost from scratch, with my own vision and leveraging all my talents to achieve the perfect result, was incredibly engaging. I enjoyed the fact that my work was highly valued and I was an indispensable specialist. Of course, this level of involvement brought significant responsibility. These were very intense work periods when I was deeply immersed in the project.

 

Work-Life Balance: Myth or Reality?

By nature, I am hardworking and like to ensure everything is done on time. I take pride in never missing a deadline in my life. However, there is a downside: I don’t always manage to maintain a balance between work and rest. Often, I find myself working extra hours and striving to achieve harmony between different aspects of life. I genuinely envy colleagues who can properly allocate their time and find opportunities for regular rest, socializing, and physical activity.

 

 

On my current project, I am part of a large team, and I appreciate having the support to rely on. Teamwork is great because there are always multiple perspectives on a problem, and tasks can be delegated for better distribution of responsibilities.

I really like the team. My colleagues constantly develop, learn new things, and seek solutions until the end. Overall, this is one of the distinguishing features of Ukrainian programmers. We are result-oriented and will always seek multiple avenues to make sure the program works as intended.

Communication is Key

It’s no secret that the tech sector can be quite toxic in terms of team communication. This likely stems from the fact that the industry attracts many talented individuals who often consider themselves more knowledgeable than others.

Thus, I especially value colleagues who communicate respectfully, and strive to always be friendly in my interactions. Throughout my career, I’ve encountered incredibly talented, brilliant programmers with extensive experience who communicated as equals with juniors and interns. They had a knack for explaining things simply without flaunting their professional superiority. 

I believe that the higher a programmer climbs in a company’s hierarchy, the more important communication skills and soft skills become.

 

 

It’s sometimes assumed that a programmer will automatically make a good team leader because they understand the work’s specifics. However, this is not always the case. I’ve seen instances where a programmer became a toxic leader because they knew the ins and outs of the development process and put too much pressure on the team. They set unrealistic deadlines or insisted solely on their vision of the architecture.

One of my principles for effective communication is to listen more, talk less, and carefully consider what is being conveyed to me. There is always a temptation to immediately dismiss proposed ideas because they seem wrong. But if you start from the premise that you fully trust the person and believe in your colleague’s professionalism, you begin to listen and truly ponder the suggestion. Through deep communication and the exchange of ideas, optimal solutions are born, and mutual understanding within the team is strengthened.

My Development Marathon

When you’ve been in the profession for not just a few years but for decades, the process of learning new things must become part of your routine to avoid complacency. I believe that dedicating at least an hour each week to learning something new is essential. This way, even experienced specialists remain competitive in this marathon of continuous development.

Over the past ten years, the volume of technologies and knowledge that a programmer needs to grasp has grown immensely. For instance, languages used to be updated every three to four years, whereas now platforms like Angular or React get updates twice a year. Technologies evolve so rapidly, and there are so many of them that a modern junior developer needs to know much more and be far more skilled than their counterparts from ten years ago.

The mathematical foundation provided by my second degree serves as a good basis while I gain additional skills through courses, books, and blogs. For example, in 2018, I started learning Angular technology and acquired most of my knowledge from several courses on Udemy. Nowadays, I also keep up with updates to this technology by following instructors who succinctly present the most important information. This helps me stay abreast of the latest trends.

 

 

Another stage of my professional development involves preparing for future Azure certification, and I may eventually pursue AWS certification. While these skills are not required in my daily work, having a comprehensive understanding greatly aids in making the right decisions when designing architecture.

I believe that the “perfectionist syndrome” is my main driving force, helping me to develop. Over this ten-year journey with Innovecs, I have learned a lot, becoming a better specialist and possibly a better person.

The key is that I see a path for further development within the company: perhaps I will become a mentor and share my knowledge with colleagues, maybe I will lead a team of developers, and I will definitely continue to deepen my professional knowledge.

Mariia Gerasymiak
Senior PR & Communications Specialist
Don't See Your Dream Job?