#👤team
CTO at [[Chimplie]] since 2016.
---
> [!quote] As a professional engineer,
> I design things that perform and endure. Good software can withstand the pressure of both external and internal change. It adapts not only to new business conditions and tech trends but also to the weight of its increasing complexity.
I came to software development from airspace engineering and can't stop wondering how close these seemingly distant areas resemble each other. Both planes and programs can't fly by themselves. Instead, they gain their lift from movement through the medium. Each heavily relies on human skills, knowledge, technological edge, and infrastructure.
## Experience
During my professional life, I had the luxury of working on most parts of the software engineering puzzle, from system programming to web development, team management, and predictive modeling.
### Web Development
The web is currently the go-to technology for most software products. My primary experience is related to the design and architecture of web-based solutions, with an emphasis on data-driven problems. My instruments of choice are Python, Rust, and Go.
> [!tldr] I prefer
>Rust and Go for large-scale projects as they provide excellent performance and allow the structured expression of complex logic.
>
> For small to medium projects, prototyping, and ML-related tasks, I would rather choose Python, which has excellent tools for pretty much everything.
>
> When it comes to API design, I strongly advocate a strict REST resource-based hierarchical approach. However, in the last few years, I have leaned towards [gRPC](https://grpc.io)-based APIs.
### Technical Management
I never considered engineering a pure technological practice. Processes and conventions are as important as tech decisions. During my career, I held various positions, from product management to a senior engineer who leads primarily by example.
> [!tip] At Chimplie,
> I offer my expertise in [[solution architecture]], [[tech audit]], and [[delivery management]]. We coined a term for such a role, a CTO-as-a-service. And I am comfortable with this definition.
>
>Among various areas, I prefer to focus on managing R&D teams and helping startups transition from prototype to proper product and from early stages to scale-ups. I like the dynamism of these phases and enjoy how they lay the foundation for future success.
### AI & Data Science
I have always considered applied data science an integral part of my engineering toolbox.
> [!note] AI as Usual
> Most sufficiently complex software products require advanced data analysis and modeling. Whether this involves infrastructure and cost optimization, tracking abnormal user behavior, or process automation. Software engineers are usually the best experts in identifying potential opportunities for data-driven solutions.
I am primarily involved in designing data collection processes, ML quality assessment, advanced segmentation, and generative AI. On the business process level, I am focused on [[AI enablement]] for small and medium companies.
### IoT & Robotics
In recent years, embedded programming and robotics have become increasingly available to smaller teams. I myself was surprised at how easily a skilled engineer can enter this realm. Three years ago, I became involved in software engineering for unmanned aerial vehicles, and since then, I have fallen in love with this part of my expertise.
I am mostly involved in Rust-powered solutions for embedded devices and communication solutions for ground control stations. I recently released [Mavka](https://mavka.gitlab.io/home/), an open-source toolchain for the [MAVLink](https://mavlink.io/en/) UAV communication protocol written in Rust.
## Focus
I am mainly interested in [[AI enablement]] and IoT/robotics applications. Distant at first glance, these areas promote research, invention, clear reasoning, and precise problem modeling.
### AI Enablement
Generative AI recently received a significant boost by introducing LLMs and mixed models. These models are extremely good at summarising data from various sources, allowing us to augment our reasoning about complex patterns. What was possible only to data scientists several years ago has become available to a broad audience.
At the same time, the main problem for AI applications is not the technology itself but the business's ability to transform itself into a data-driven enterprise.
While smaller and younger businesses have the capacity to change, they usually lack AI/ML expertise.
> [!tip] At Chimplie,
> we are concentrated on [[AI enablement|laying the foundation]] for AI applications by helping businesses incorporate powerful models into their processes and products. This includes careful planning, prototyping, adjusting data warehousing, and setting up processes for machine learning. We also advise on a "buy vs. build" problem and identify stages of the product roadmap when in-house ML becomes unavoidable.
### Moving Parts
For the naked eye, robotics and embedded programming seem to be in striking opposition to AI. In robotics, we operate under strict physical restrictions and time constraints. Yet, the convergence of these domains could lead to major industrial breakthroughs.
Through the advancements in CAD/CAM/CAE systems, the new generation of programming languages like [Rust](https://www.rust-lang.org), and modern frameworks like [Embassy](https://embassy.dev) and [EVA ICS](https://www.bohemia-automation.com/software/eva4/), embedded programming and robotics have become accessible to small teams of engineers.
### Sandbox for Inventions
Business requires tools for experimentation, as it is a constant trial-and-error process. From the very beginning of my engineering career, I was excited about building tools and processes to experiment with ideas. As a tech manager, I am focused on building R&D departments, prototyping, and data-driven business processes. As an engineer and data scientist, I am interested in simulations and training environments for AI models, hypotheses, and robots.
Simulations and sandboxes for AI can be considered the game industry's older and more sober brother. Unsurprisingly, recent generations of game engines like [Unreal Engine 5](https://www.unrealengine.com/en-US/uses/simulation), [Unity](https://docs.unity3d.com/Simulation/manual/), [Godot](https://godotengine.org), or [Bevy](https://bevyengine.org) are introducing simulation tools as first-class citizens in their ecosystem.
My current interests in this area lie in simulations that involve photogrammetric data and physical models.
---
![[mykhailo-512.png]]