I am a curious software engineer based in Ukraine. My work is my passion. I am always interested in learning something new or improving my existing skills. Nowadays, technologies are constantly changing and evolving, so I try to keep pace with the times.
Building a software product is not hard with such a number of frameworks and platforms, but building a reliable, extensible and robust application is not a trivial task. The key point here is a software architecture, most developers, unfortunately, don't pay enough attention to it. An application without a well-designed architecture is like a house without a foundation.
I always try to design an application architecture in the first place. I enjoy discussing different architectural approaches, finding alternatives and adapting an architecture for specific requirements. I think that software should be written in a way that you won't hate later, especially when adding new features.
I am not trying to maximize the number of projects done, but the number of well-done projects instead.
When I'm not working, I enjoy doing a vast array of healthy outdoor activities, but I am particularly keen on working out. I also enjoy writing. I've found sharing my experiences in this blog to be both rewarding and educational, so feel free to visit it. I hope you can find something useful there.
Software crafting
Sport
Reading
Travelling
Fishing
Music
I am always passionate about gaining experience and learning new technologies. My skills include, but aren't limited to.
Building native mobile applications for different platforms and devices. As well as creating cross-platform and hybrid solutions.
Feature-rich, responsive web pages and applications. Fullstack development leveraging modern technologies.
Enterprise software products to meet business requirements. Complete solutions that contribute to the growth of the business.
Building secure, scalable and robust APIs. B2B and B2C strategies. Integrating third-party APIs and services.
Building IoT systems for Smart Automation. Bare metal programming. Binding together the software and physical world.
Maintaining server software and hardware. Applying virtualization technologies for building scalable infrastructures.
Chernihiv National University of Technology (CNUT) is one of the leading higher educational establishments in the north of Ukraine. It is famous for its academic excellence and leading innovative Computer Science research.
Chernihiv National University of Technology (CNUT) is one of the leading higher educational establishments in the north of Ukraine. It is famous for its academic excellence and leading innovative Computer Science research.
Secondary school #1 with the extensive learning of foreign languages, Chernihiv, Ukraine
Worked on a crypto project mostly on the frontend with React. Participated in iOS, Android Development, Backend Java Development. Maintained AWS infrastructure for the project. Applied lambda functions for backendless parts.
Worked on several full stack projects powered by PHP, Python and NodeJS on backend and VueJS, React on frontend. Implemented a document fraud detection system using OCR. Worked with a complex structured Drupal website.
Writing tecnhical articles about Java, Spring, Kotlin, Scala, Algorithms and Software Architecture.
Native Android app development for the collaborative planning. Adding new features and supporting existing codebase. Maintain the backend part written in C# powered by Azure. Extensively used DDD approach.
Coordinating business processes. Teambuilding and cooperation. Instructing and teaching. Leading complex business software projects. Communication with clients.
Was responsible for implementing a custom CRM system for logistics. Used Laravel, Angular, RabbitMQ, WebSockets. Full set up of the environment on a Linux machine.
Discount Group is a leading E-commerce software solutions provider. It offers budget friendly e-Commerce solutions that can be profited in an extensive variety of choices to fulfill business requirements.
Worked on internal applications written in Perl and web applications written in ExtJS.
Web pages and mobile applications development.
Reader-focused development style that produces a software codebase that's easy to write, understand, extend and maintain.
Testing as a way to make objective assessments regarding the degree of conformance and robustness of a software system.
Maintain, extend or completely replace software parts without worrying about the consequences for the whole system.
Good software architecture works now and in the future. Aiding success during development and boosting maintenance effectiveness.
Meeting requirements for timeliness in conjunction with effective resource usage. Performance as a competitive advantage in business.
Considering security concerns at the earliest stages of development. Constructing and applying security policies to keep data private.
Development stages are the building blocks of the success for any software development project.
Open source is a great way to gain experience and meet new people.
The first concern of the architect is to make sure that the house is usable, it is not to ensure that the house is made of bricks.
A good software architecture allows decisions about frameworks, databases, web-servers, and other environmental issues and tools, to be deferred and delayed.
...if you're afraid to change something it is clearly poorly designed.
The software is guided by domain and not by the UI.
The Clean Architecture is the term proposed by Uncle Bob, that refers to principles and design practices used for building an architecture for software. It is defined in more abstract way, causing a lot of questions and debates. This article is int…
Read MoreHave you ever heard about “Clean Architecture” ? This is still a very popular topic for discussion and experiments. Moreover attention to this topic promises to increase dramatically, because of Uncle Bob’s upcoming book. This conce…
Read MoreWhen I first started developing an Angular application everything seemed to go well. Comparing to React, a lot of things were implemented out of the box. Until I reached the time when I needed to make some components of my application dynamic. The pr…
Read More