Projects

This is some of the work I can publicly display my involvement in. The list mostly consists of open-source software contributions and my personal projects, but there are a few commercial ones here as well.


  • Warcrime

    Warcrime

    Two months into the Russian full-scale invasion of Ukraine I started working on a war-crime-reporting mobile application for Kharkiv Human Rights Protection Group. The idea was to offer volunteers a more convenient alternative to the existing web form.

    The iOS and Android applications allow volunteers to:

    • upload photos and videos from the device's photo library
    • take photos and videos with the device's camera and attach current location to them
    • fill in a form with description of the event and other information
    • upload the form and media files to the server

    The admin panel allows the organization's staff to:

    • view the list of reports
    • view the details of each report
    • preview and download the media files attached to reports
    • filter the list of reports by date, reporter, and other criteria

    React Native app source
    NestJS BE and admin panel source

  • Expensify

    Expensify

    Expensify is a software company that develops an expense management system for personal and business use.

    In 2020 they starting working on a new open-source version of their core application. A chat-based cross-platform app that provides functionality such as invoicing, bill payments and much more.

    The company keeps a list of open issues on their GitHub and through Upwork hires contributors to work on those issues. It is through that platform that I started working on the project. Over the course of nine months more than 20 pull requests of mine were merged into the main branch.

    Contributions

  • PixelRetail

    PixelRetail

    A full-stack digital signage system for small and mid-sized businesses operating in France with a convenient web dashboard for managing content in real time.

    The main components of the system are:

    • Symfony-powered back end with a REST API and a messaging service to send updates to the client applications
    • dashboard built with React for managing slideshows, products, events and other content
    • slideshow app built with React to display the content on the screens
    • Node.js service running on Raspberry Pi devices in the stores that is responsible for managing the slideshow instances running in Chromium browser, interacting with queue system peripherals (thermal printers, speakers, etc.) and listening for updates from the back end

    The system was developed by a team at Studio.gd. My role in the project was to lead the development efforts on the back end and Raspberry Pi devices. At one point I was leading a team of three developers. In addition to the development work I was also assisting with technical evaluation of potential hires as well as mentoring of junior developers.

    The project was discontinued in 2023, so the website is no longer available. Still, I'm proud of the work we did and the experience I gained from it. To this day I attribute most of my growth as an engineer to PixelRetail.

  • Personal Website

    This is the very same website you are currently reading. Practically, it is just a static site, which makes it fast and simple, but, being built with Next.js, it offers great user experience and is easy to maintain.

    As an additional challenge I wanted all of the website's functionality to be available for users not running JavaScript in their browsers. While Next.js is a great tool for building SEO-friendly websites, it does not help much with designing JavaScript-less ones.

    Either way, despite some setbacks, the website is fully functional without JavaScript.

    I use Playwright to test the website's functionality in different browsers as well as in both JavaScript-enabled and JavaScript-disabled environments.

    Source