Software engineer with more than 12 years of industry experience.
Possessing considerable knowledge of the development of web applications using PHP programming language and MySQL databases.
Skills:
- Main languages: PHP, Go, JavaScript.
- Databases: MySQL, PostgreSQL.
- Technologies: RabbitMQ, Docker.
- Also have some production experience in the past with: React, HTML, CSS.
I work as a Software Engineer at Firebird Tours, contributing to a company-owned project that provides a service for searching and purchasing train tickets across multiple countries. The public-facing platforms include rail.ninja and highspeedtrains.com.
Technology stack: PHP 8.2, Drupal 10, MariaDB, Redis, RabbitMQ
My role involves developing new features and maintaining existing functionality, primarily within the administrative interface of the system. Although the two platforms have different domains, they share the same backend infrastructure, including a unified Drupal-based CMS, a common database, and administrative tools.
The admin panel includes an order management system, where each order is linked to multiple entities—such as customers, statuses, and two internal systems: a verification protocol and a reservation protocol.
Most of my tasks are related to the reservation protocol, which is implemented as an internal, React-based frontend application, supported by a REST API backend. This application is used only by the company’s internal team of reservation specialists.
For example, one of my tasks involved automating the process of taking orders into work. Reservation agents see a list of orders available for processing. An order may include one or two 'legs' (e.g., outbound and return trips). When the agent clicks the 'Grab' button, the system must assign the order to them. For round-trip orders, a second leg may also be grabbed automatically, but only if a number of complex conditions are met—including checking the status of both legs, the overall order status, and the user’s role (e.g., junior-level agents are restricted from accessing certain orders).
There are approximately 15 such conditional cases. My responsibility was to implement this logic as part of a REST API request, handled by the backend.
Note: My work does not involve artificial intelligence (AI), cybersecurity, or encryption technologies. I specialize in traditional backend and full-stack web development using widely adopted open-source tools and platforms.I worked as a PHP Developer and Technical Lead at ExtBel, a Belarusian company that develops custom software solutions for local clients. My role included both hands-on development and technical leadership responsibilities.
Technology stack: PHP 7–8, Yii2 and Symfony frameworks, MySQL, PostgreSQL, Ansible, Docker, RabbitMQ, Redis, React, GoLang, and 1C Bitrix CMS.
My responsibilities included:
For example, one of our clients, BelTechOsmotr, needed a mobile app to complement their existing website, which was built on the 1C Bitrix CMS. I designed and implemented a REST API within the existing project, and created full API documentation. A React Native developer was hired to build a cross-platform mobile app based on this API. I then handled the app builds for both iOS and Android, as well as publishing them to the client’s accounts in the App Store and Google Play.
Note: My work did not involve artificial intelligence (AI), cybersecurity, or encryption. All development was related to standard business applications and web technologies.I worked as a backend developer under B2B contracts with several major Belarusian companies.
21vek.by: I worked on the backend development of an e-commerce website built with PHP and the CakePHP framework. The project used a MySQL database and a frontend developed with HTML, CSS, and JavaScript, including jQuery. My responsibilities included implementing features that involved both backend and frontend components. On the front end, I handled both visual (styling) adjustments and interactive features using JavaScript. For example, I developed functionality for dynamically updating the shopping cart without reloading the page. This included recalculating product quantities, prices, applying promo codes, and reflecting delivery options. On the backend, I implemented the logic for applying promo codes. This involved creating REST API endpoints that received the cart data, determined which items the promo code could be applied to, calculated the final price, and returned the result to the frontend. I also worked on optimizing SQL queries to ensure a fast user experience, particularly for price recalculations in the shopping cart, where performance was critical.
I worked as a PHP developer at abw.by, a major Belarusian automotive platform that combines automotive news with a classifieds service for vehicles and spare parts. My responsibilities included both backend and frontend development.
The project was built using PHP (Yii2 framework), with MySQL as the primary database. The frontend was developed using HTML, CSS, JavaScript (including jQuery, and Backbone.js).
One of the most complex tasks involved optimizing the listing and filtering system under high user traffic. I implemented Redis-based caching for filtered data, and integrated Elasticsearch to handle advanced search queries. This greatly improved performance by offloading the filtering logic from the database.
I also introduced the use of background queues for resource-heavy operations. For instance, clients with thousands of listings could raise them with a single click. This process was moved to a queue, allowing the page to respond immediately while the updates were processed asynchronously.