Work Experience Details
-
2026
PUSHK Archiver
Experimental Data Compression Archiver
Research and development of custom data compression algorithms.
• Custom transform-based compression pipeline design
• Experimental preprocessing and entropy optimization methods
• Benchmarking against existing compression solutions
• Multi-stage compression prototype implementations
PUSHK Project (GitHub)
Benchmarks:
Test Run #1
•
Test Run #2 (R-Drop)
Submodules:
pushk2pre1move
•
pushk2pre2spc
•
pushk2pre3rdrop
-
2025
PSYOL-25 32-channel / 16-bit Digital Audio Mixer
Schematic and PCB design in KiCad.
• STM32H750-based control panel
• 7" 800×480 TFT display
• Modular main board with 8 audio-bank expansion slots
• 32MB NAND Flash audio-bank module
• 32MB SDRAM audio-bank module
Prototype Videos
PCB Prototype • Digital Audio Mixer, 32
channels 16-bit
PCB Prototype • Synthesizer Control
Panel
PCB Prototype • 128M Audio Bank Board,
PlugIn
-
2022-2025
Global Leader in Automotive Embedded Systems
Senior Embedded Engineer
Worked on automotive embedded software within an AUTOSAR‑based environment.
Responsibilities included integration of software components,
implementation of embedded C modules,
participation in daily engineering syncs, and contribution
to unit‑testing activities.
Collaborated with international engineering teams and used industry‑standard development tools.
-
2020-2021
Freelance During CVD
Some hobby boards designed + one embedded software project for client
STM32H750 + XC6SLX9 with HDMI Output Interface board
Details
( ZX / NES / Atari / DOS Emulator )
Servo motor driver board ( freelance )
PCB prototype received from client,
working on HDL (drivers) and embedded software
(C++ / ESP32 / TMC4671+TMC6100-BOB / GUI on 4" TFT + multilanguage support)
STM32-based configurable TFT LCD power sequencing and backlight controller
Hardware architecture PCB design and embedded firmware development
Generation and control of TFT bias/power rails:
DVDD 3.3V • AVDD 10.4V • VGH 16.2V • VGL -7.3V • VCOM • VLED 9.3V /
200mA
Implemented programmable power-on/off timing and safe LCD bias sequencing
Power-up sequence: DVDD → RESET → VGL → AVDD → VGH → RGB/Data → Backlight
-
2017-2020
NDA Leading International Technology Company
(respect to the team!)
* Embedded C++ projects : STM32
* Custom assembler compiler on Python for unique MCU with custom instructions set
* IDE for assembler on Python
* GUI for various tools & tasks - Based on Qt 5.0 Widgets / Python
-
2014-2016
Hardware Design Lab / electro-lviv.com
Details
Worked on multiple embedded hardware projects (STM32 + FPGA based systems).
Core stack:
• STM32 (F1/F4/F7 series), FPGA (Xilinx Spartan-6)
• FreeRTOS, bootloaders, embedded GUI
• Interfaces: SPI, USART, FSMC, external memory
Projects:
1. X86 Emulator Board
• STM32 + FPGA + HDMI + SD (On hold due to workload / priority tasks)
( X86 emulation partially completed, IRQ handling under development )
2. Boiler Controller (2 kW)
• Designed STM32-based control panel
• Implemented user interface (buttons + LED indication)
3. GPS Tracker (Taxi / Dubai)
• Designed full hardware platform (STM32 + SD + audio subsystem)
• Integrated MP3/FM functionality (client requirement)
• Developed PC-side configuration tool (USB)
4. Stereo Camera (own project)
• Designed system architecture: STM32 + FPGA + SDRAM
• Dual synchronized camera interface
• HDMI output + WiFi module integration
5. CNC Controller (3-axis)
• Proposed alternative architecture (STM32 + FPGA + L6472 drivers)
• Based on open hardware reference designs (ST / Avnet)
• Focus: scalability and improved motion control vs legacy AVR-based systems
6. Diesel Motor Controller (HOPA / Optimex GmbH)
• PCB layout design
7. KVM Device ( HDMI In - HDMI Out ) with Ethernet 100M for remote PC Control
• STM32 + ETH PHY + XC6SLX100T + SDRAM 166 + x2 HDMI
• Status: Pending.
• Finding: A reliable solution requires a more complex
enterprise-grade system rather than the "simple fix" originally envisioned.
-
2013
PCB Data Processing & Visualization Platform (Independent Project)
electro-lviv.com
Details
Developed libraries for parsing and processing industrial Gerber (RS-274X) and
Excellon drill
formats,
enabling accurate reconstruction of PCB manufacturing data.
Implemented support for aperture definitions, macros, interpolation, and drill mapping.
Built a web-based PCB visualization platform using PHP and JavaScript.
Enabled real-time rendering of 2D PCB layouts directly in the browser
with layer compositing, zoom, and inspection tools.
Implemented interactive pseudo-3D PCB visualization,
reconstructing board geometry and component placement from manufacturing data.
Developed an online IC component database integrated with a BOM management system,
including parsing, validation, and component cross-referencing.
Created a lightweight, browser-accessible toolchain for PCB analysis,
visualization, and component management.
-
2010-2012
X X X 3.14 X X X Non-Tech Trading Company
GVIF Interface Prototypes for Toyota/Lexus
(Architecture + Schematic + Hardware + Software)
• Base Version
CXB1455R, AT91SAM7X256, XC3S400AFT256, AD9203ARUZ, SRAM-4 MBytes
Prototype, Gerbers sent to production on 7 Apr 2010
• Max version
CXB1455R, AT91SAM7X256, XC3S400AFT256, MT48LC16M16A2,
AD9203ARUZ, SAF7113H, M25P128, MAX9542, SN65HVD232D, HA12240FP ...
Prototype, Gerbers sent to production on 4 Jan 2011
• Mini version
CXB1457R, XC6SLX9, AT91SAM7X256, MT48LC16M16A2, M25P128
Prototype, Gerbers sent to production on 1 Aug 2012
• Devkit "А"
FPGA + SDRAM 133 Mhz / SDRAM 166 Mhz
28 Apr 2010
• Devkit "B"
AVC-LAN Controller + Sniffer
5 Aug 2010
-
2007-2009
Software Outsorcing Company
( около 150 software developers, из них ~10 embedded developers )
RF Kit ATMega128 + CC1100 ( Hardware + Software, Feb 2007 )
AT91 Based 100M Ethernet Board: ( Hardware + Software, May 2007)
Main components : AT91SAM7X256 + DP83848 + USARTS etc ...
Проект "Avtonavigator" 2008 (Started on May 2007)
( Concept , Architecture, Schematic , PCB Layout , Embedded software C++, VHDL & testbenches
)
• Embedded GPS & GPRS Tracker (partially navigation System, drivers control) for
public
transport.
• Embedded MP3 Player AT91SAM7S64 - озвучка улиц, остановок, озвучка рекламы
• Embedded Videocard AT91SAM7X256 + Xilinx CPLD VGA 640x480 @ 60 fps / 8-bit colors
• LED Panel в салоне троллейбусов и автобусов, выведение остановок, пунктов прибытия.
• Табло для остановок с отображением графика запаздывания ранспорта.
• Embedded video camera : трансляция изображений салона автобуса ( пассажиры ) на
сервер
• Infrared passanger counter sensor
Поддержка от компании:
• серверная поддержка, сетевые протоколы и базы данных
• серверная аналитика, расписание маршрутов
• финансовая поддержка, продвижение продукта
• поиск инвесторов клиентов и маркетинговая поддержка
Ссылки
Autonavi 2008
Embedded Videocard
2008
LED Panels 2008
Autonavi 2008
Tests
-
2006
Freelance
Hobby project:
LED Panels Project 2006
LED display module design ( 1000 x 100 mm )
10×8 LED matrix per module
Portable GPS tracking device based on LPC2148
Including a lightweight embedded vector map parser
Using offline local city maps stored on SD card
MP3 audio player (Borland C++ Builder 5.0)
GUI, audio playback routines, and MP3 library integration
Embedded MP3 audio player based on LPC2148
Note: real-time MP3 decoding achieved by relocating
time-critical routines from Flash to internal SRAM
Tags: LPC2148, FreeRTOS, MP3, PWM Audio
-
2004-2005
MTEC Motortuning GmbH
OBD-II diagnostic device
• Device architecture
• PCB design and schematic development
• Embedded Software ATMega128: app core / drivers / FreeRTOS
• Embedded software development for ATMega128
• Application core, low-level drivers, FreeRTOS integration
• Embedded GUI on 128x64 B/W LCD
• PC configuration tools and USB (FT245) interface
• Logic design in Quartus for Altera MAX CPLD
• FPGA logic design in Quartus (Cyclone II)
Additional tasks
• Worked with MPC555 (Motorola)
• Worked with C166/C167 (Siemens)
• Developed CAN and K-Line diagnostic software and hardware
-
2003
GPS & Logistic
Hardware from company:
Kontron Jumptec 386SX embedded module
with Embedded FLASH based file system and B&W TFT 320x240 1-bit color
Software development C/C++:
* Интеграция с VDO Dayton Navi (серия 2000) через serial port.
* компоновка меню и наполнение окна текстом
* разработка классов на C++ для поддержки протокола VDO Dayton
Libraries integration ( Kernel level ):
* DJGPP Toolchain DOS / GNU C++ Compiler :
* RTKernel-C + RTIP + RTFS + Symbol PDT 2700
* Интеграция в ядро базовой программы
* портирование библиотек и поддержка GPRS модема SLIP / PPP level / DOS
* замена "транзакций" - SMS сообщений на TCP/IP протокол
Experience applied from previous projects
* HOPA Motortuning 2000-2002 - GPS, Serial Port, C++ experience & skills
* Arty I 1999 - RTOS, GPS, Serial Port, SMS, C++ experience & skills
-
2000 - 2002
HOPA Motortuning GmbH
Atmel AVR Studio 3.x ( AVR assembler )
Embedded software для AT90S8515
Проект "мониторинг расхода топлива для грузовиков".
Плата была уже изготовлена компанией.
Board props : AT90S8515, AM29F800 ( with 74HC373 ), PCF8583, PCF8591, LEDS, USARTS MAX232 ...
Разработка алгоритма измерения данных каналов ADC, драйверов для работы с I2C / Flash / Serial.
Протоколы для считывания дампа данных по UART.
PalmOS Handheld ( Codewarrior C IDE )
* Прием и расшифровка показателей мультиканального ADC по Serial Port
* Прием и расшифровка NMEA / GPS данных по Serial Port
* База данных грузовиков
* Программа визуализации и анализа данных расхода топлива полученных с блоков грузовиков.
Borland C++ Builder
* Programmer tool for AVR Microcontrollers Family via LPT Port using WinIo v1.3
* Разработка GUI , визуализация графиков потребления / расхода топлива, статистика.
Experience applied from previous projects
Спасибо Arty I за ценные уроки (навыки) в 1999м
Очень пригодились в работе с LPT, COMPort, GPS, GSM, PalmOS !
Notes
WinIo v1.3 - Direct Hardware Access Under Windows 9x/ME/NT/2000
Links
AVR Programmer Tool ( Borland
C++ project )
-
1999
Разработка утилиты на C - автоматизация чертежей Autocad / без доступа к API AutoCAD.
Фокус командной строки окна AutoCAD захватывался внешней утилитой через WIN-API,
и текст команды черчения вбивался напрямую внешней программой-утилитой.
Автором был написан алгоритм черчения многоступенчатого редуктора по входным параметрам.
на 3 листах А3 + 5 листах A4 формировались чертежи редуктора и таблица спецификации
( курсовая работа )
Пару проектов на DirectX / DirectDraw - Microsoft Visual C++ 5.0 2D графика,
протестирована работа со спрайтами на аппаратном уровне
(Full Screen Mode 640x480 с оптимальным ~ 30 FPS / Pentium 166Mhz)
Проект DirectSound C++ / трекерная музыка:
воспроизведение ресемплинг и микширование .wav аудиофайлов на 4х каналах
Первые попытки разработки собственной файловой системы на C,
получилось создать файловую структуру для текстовых файлов (дерево) в памяти,
работала коммандная строка, команды mkdir / deldir,
cd - change directory, create file, copy file, и тд ...
Практика и обучение в одной небольшой embedded компании
на территории завода Телеграфной аппаратуры - Охранные GSM/GPS системы и пульты.
PalmOS : Codewarrior C Compiler / IDE
Разработка и тесты программы приема и обработки данных по serial port
Спасибо Arty I - обучил работе с :
RTOS, LPT, UART, GPS и GSM протоколами / C++ & asm
-
1998
Участие в олимпиаде - презентация графической обучающей программы ( DOS / VGA 320x200 ),
написана на Turbo C, демонстрировала плывущие экраны, графические меню, выборы фигур и картинок,
эффекты угасающей палитры ( вставки на ассемблере - palette shading effect )
Практика и обучение в одной небольшой embedded компании на территории завода Телеграфной аппаратуры
Разработка и запуск алгоритмического интерпретатора ( алгоритмический язык ),
который запускает и исполняет текстовые файлы с командами, выполняет математические операции,
вычисляет значения вложенных выражений ( польский код ), выводит результаты на экран,
подгружает вложенные модули и функции с других файлов.
Интерпретатор разрабатывался для выполнения учебных алгоритмов по книге профессора IT кафедры (
под
его руководством )
Разработана вторая версия интерпретатора на С++,
первая версия интерпретатора была разработана самим профессором на Паскале.
-
1997
Разработана собственная утилита "Screen Capture" для DOS / VGA ( Interrupt based "hack" , shortkeys
)
Иногда удавалось вытягивать и сохранять экраны даже из под некоторых режимов Protected Mode,
скролить оперативную память во время захвата контроля программы (в поисках спрайтов).
Некоторые функции работы в Protected Mode были использованы из внешних источников ( книги )
и не написаны автором с нуля.
( так как Protected Mode имел особенности, и было бы тяжело писать с нуля )
Не помню точно какое прерывание использовалось - возможно 15h или 16h что-то нестандартное,
я даже комбинацию клавиш не помню.
И еще - в protected mode основная программа зависала, но дампер успевал выполнить свою функцию
:)
Участие в олимпиаде в малой академии университета,
плюс демонстрация своей урезанной реплики игрушки Kings Bounty DOS.
Разработана на TurboC - с заставкой, спрайтами, управлением игроком передвижением по карте,
как в оригинальной версии только слегка отличающейся графикой в VGA режиме 320x200
-
1996
Первые программы загрузки дампов экрана и изображений в режиме 256 цветов ( AX, 13h / INT 10H )
Плавный скроллинг изображений на C/asm + scalling
эффект 3D уплывания текста вдаль в космос ( Star Wars mode )
Работа с TurboDebugger ( Анализ 4K Mars DOS demo by Tim Clarke ).
-
1995
Анализ файлов и форматов от Autodesk Animator 320x200 256 colors / DOS.
Работа с начальной пиксельной графикой на ассемблере ( DOS ).
Работа с TurboDebugger ( Анализ игр ElectroBody, Zeliard , Trolls ).
-
1994
Learning DOS Assembler & Microsoft QuickC , функционал , и других ...
Encyclopedia Notebook : Первые программы на QuickC / TurboC / Pascal.
Игрушка "питон" разработана на C, в текстовом режиме,
управление клавишами и избежание столкновения со "стенками", поедание "фруктов".
-
1993
Разработка тестовых примитивных игрушек на QuickBasic
( на собственном 286SX EGA + частично Compaq + частично 386SX Encyclopedia Notebook )
Использование PC-speaker. Компиляция .BAS в .EXE файл
-
1992
* 286SX Compaq LTE -
Возможность узучать QBasic на компьютере отца - графические режимы 320х200 и 640х400,
отрисовку
простых фигур, простая примитивная анимация и управление клавишами положением фигур.
Разбор и анализ программы QBasic Gorillas DOS - gorilla.bas ( IBM ) - Offscreen images
creation
* ПОИСК-1 Рисование мозайки на Basic ( get / put image )
* УКНЦ Составление простых программ с вводом / выводом данных , параметров , псевдографики и
текста