← Back to CV

Arseni Aliakseichyk

arseni.aliakseichyk@gmail.com LinkedIn GitHub Slupsk, Poland

Detailed project portfolio with technical deep-dives, media, and architecture details.
For a one-page summary, see my CV.

CyberGlove — IoT Smart Glove Platform

ESP32-S3 Wearable for Gesture Control

Personal • 2025 – Present
In Active Development
Photos coming soon

CyberGlove is my flagship personal project — an IoT smart glove designed for real-time gesture recognition and control. The firmware runs on an ESP32-S3 using ESP-IDF and FreeRTOS. The glove captures motion data from an ICM-20948 9-DoF IMU (accelerometer + gyroscope) over SPI, and finger bend angles from a custom fiber optic sensor read through the ESP32's 12-bit ADC. All sensor data is streamed at 50 Hz over WebSocket to a web dashboard for real-time visualization. The device connects via Wi-Fi in Station mode with automatic reconnection logic.

Key Features

  • ICM-20948 9-DoF IMU communication over SPI (accelerometer + gyroscope + temperature)
  • Custom fiber optic bend sensor via ADC oneshot driver (12-bit resolution)
  • Real-time WebSocket telemetry at 50 Hz (JSON-formatted sensor data)
  • Wi-Fi STA mode with event-driven reconnection handling
  • DMA-based SPI transfers for efficient data throughput
  • FreeRTOS task management for concurrent sensor reading and network I/O
  • C
  • ESP-IDF
  • FreeRTOS
  • SPI
  • ADC
  • ICM-20948
  • WebSocket
  • Wi-Fi

GlobalLogic Robot — IoT Robotic Platform

Modular Robotic Platform on Raspberry Pi 5

GlobalLogic Poland • Jun – Oct 2025
Complete
GlobalLogic robot demo video

During my internship at GlobalLogic Poland (Koszalin), I worked in a 4-person Agile/SCRUM team building a modular robotic platform. The robot runs on a Raspberry Pi 5 with a C++17 multithreaded architecture where 5 concurrent threads handle different subsystems: motor PWM control, ultrasonic sensor polling, MQTT message handling, GStreamer video pipeline, and a FastAPI REST server. I was responsible for the motion control system, obstacle detection module, and video streaming pipeline. We used Jira for sprint planning and the entire stack was containerized with Docker Compose.

Key Features

  • C++17 multithreaded motion control (5 concurrent threads: motor PWM, sensor polling, MQTT listener, video pipeline, API server)
  • Real-time FPV video streaming via GStreamer (MJPEG over UDP, up to 1080p@60fps)
  • Ultrasonic obstacle detection (HC-SR04) with 20 cm threshold and hysteresis logic for noise rejection
  • FastAPI REST API with JWT authentication for remote robot control
  • Docker Compose deployment (FastAPI + Mosquitto MQTT + Redis)
  • Hailo AI neural processor integration for real-time human skeleton detection
  • C++17
  • Raspberry Pi 5
  • GStreamer
  • MQTT
  • FastAPI
  • Docker
  • CMake
  • Hailo AI

STM32 Peripheral Firmware Development

Bare-Metal & HAL Firmware on STM32F407

Personal • 2024 – 2025
Complete
Photos coming soon

A collection of firmware projects on the STM32F407VGT6 (ARM Cortex-M4, Discovery board) where I explored both the HAL library and direct register-level programming. These projects covered the core peripherals of the STM32: GPIO configuration, timer-based PWM generation for motor and LED control, NVIC interrupt handling, communication protocols (SPI, I2C, UART), and analog signal processing through ADC and DAC. All debugging was done using a LA1010 logic analyzer and oscilloscope connected via JTAG/GDB.

Key Features

  • GPIO configuration with direct register access and HAL abstraction
  • Timer-based PWM generation for motor and LED control
  • NVIC interrupt handling for event-driven firmware
  • SPI, I2C, and UART peripheral communication
  • ADC/DAC analog signal processing
  • Hardware debugging with LA1010 logic analyzer and oscilloscope via JTAG/GDB
  • C
  • STM32 (ARM Cortex-M4)
  • HAL/CMSIS
  • SPI
  • I2C
  • UART
  • ADC/DAC
  • NVIC

Real-Time Shape & Symbol Classifier

Edge ML Pipeline: PyTorch → ONNX → Raspberry Pi 5

Academic • 2025
Complete
Photos coming soon

A complete machine learning pipeline built for a university project — from dataset creation and model training to real-time edge inference. I trained a MobileNetV3 model in PyTorch on ~16,000 synthetic images across 80 classes (geometric shapes, mathematical symbols, arrows, etc.), exported it to ONNX format, and deployed it on a Raspberry Pi 5 where it runs inference at 25–30 FPS on 640×480 camera input. The system includes a custom SPI LCD driver for the ST7735S display (RGB565 pixel format via libgpiod) and an HTTP dashboard for real-time classification statistics and confusion matrix visualization.

Key Features

  • MobileNetV3 trained on ~16K synthetic images (80 classes)
  • ONNX export and optimized edge inference at 25–30 FPS on RPi 5
  • OpenCV camera capture with dynamic ROI and configurable confidence threshold
  • Custom SPI LCD driver (ST7735S, RGB565 via libgpiod)
  • HTTP stats API with live confusion matrix and per-class accuracy
  • Dataset augmentation pipeline with rotation, noise, and scaling
  • Python
  • PyTorch
  • ONNX Runtime
  • OpenCV
  • RPi 5
  • SPI
  • libgpiod

ESP32 IoT Embedded Projects

Three University Projects on ESP32

Academic • 2024 – 2025
Complete
ESP32 BLE joystick controller with SPI LCD

A series of three ESP32 projects built during university coursework, all written in C using the ESP-IDF framework with FreeRTOS. Each project explored different aspects of embedded IoT development — from Bluetooth Low Energy communication to cloud integration and low-power design.

BLE Joystick Monitor

A Bluetooth Low Energy gamepad controller built with the NimBLE stack. Two analog joysticks are read via ADC and their values are transmitted over BLE to a connected device. The current state is displayed on a SPI LCD (ST7789, 240×320). A companion Python script on the host machine acts as a BLE monitor for debugging and visualization. ~1,098 lines of C.

Firebase LCD Message Display

An IoT device that connects to WiFi, syncs time via NTP, and polls a Firebase Realtime Database every 10 seconds using the REST API. Received messages are displayed on a 1.8" SPI LCD. Includes WiFi error handling and automatic reconnection logic. ~652 lines of C.

Low-Power WiFi Sync Clock

An energy-efficient clock designed for battery operation — up to 30 days on a single 18650 cell. WiFi activates only for NTP time synchronization every 30 minutes, then the ESP32 enters deep sleep (<100 µA). The display uses selective digit refresh to avoid flicker, achieving ±1 second/month accuracy. ~505 lines of C.

  • C
  • ESP-IDF
  • FreeRTOS
  • BLE (NimBLE)
  • SPI
  • Firebase
  • Deep Sleep

ChillMove — Fitness Platform

Cross-Platform Fitness App with Native Monitoring

Freelance • Oct 2025 – Feb 2026
Production
Screenshots coming soon

ChillMove is a children's fitness platform I built as a freelance project. The core is a Flutter app (~31,000 lines of Dart) using BLoC for state management, Firebase for backend services, and GoRouter for navigation. My main challenge was building a kill-resistant device monitoring system that works across Android and iOS. On Android, I wrote a native Kotlin module using the Device Owner API with a Foreground Service (OOM adj 200) and a 9-layer protection architecture, tested on Xiaomi MIUI and Samsung One UI. On iOS, I implemented Screen Time monitoring using Swift with the Family Controls / DeviceActivityMonitor framework. I also deployed a self-hosted notification worker (Node.js, Docker) that processes 10 event types with locale-aware delivery and retry logic. The project includes a full GitLab CI/CD pipeline with 3 stages (test → build → release), enforced static analysis, and automated APK artifact publishing.

Key Features

  • Flutter app (~31K LOC) with BLoC state management, Firebase backend, GoRouter
  • Native Android monitoring: Kotlin Device Owner API + Foreground Service + 9-layer kill resistance
  • Native iOS monitoring: Swift Family Controls / DeviceActivityMonitor
  • Self-hosted Node.js notification worker with exponential retry (5 attempts) and FCM token auto-cleanup
  • Bilingual notifications (English / Ukrainian) with per-user granular settings
  • GitLab CI/CD: analyze → test → build (debug/release APK) → release with artifacts
  • Docker containerized worker deployment (no exposed ports)
  • Flutter
  • Dart
  • Kotlin (Android)
  • Swift (iOS)
  • Firebase
  • Docker
  • Node.js
  • BLoC
  • GitLab CI/CD

Production VPS Infrastructure

Self-Hosted Ubuntu Server with 13+ Services

Personal • 2024 – Present
Production (2+ years)
Architecture diagram coming soon

My personal VPS infrastructure has been running continuously for over 2 years, hosting 13+ containerized services across 4 domains. The architecture follows a security-first approach: a system-level Nginx acts as a reverse proxy with SSL termination (Certbot), forwarding traffic to Docker containers bound exclusively to 127.0.0.1. Critical services (VPN admin panel, Guacamole RDP/SSH proxy) are protected behind Authelia SSO with YubiKey WebAuthn 2FA. The firewall (UFW) only exposes ports 80, 443, 51820 (WireGuard), and a non-standard SSH port.

Nginx (SSL) → Docker containers (127.0.0.1:*) ├── :8086 CV frontend ├── :8443 WireGuard VPN (SSO + YubiKey) ├── :8081 Guacamole RDP/SSH (SSO + YubiKey) ├── :9091 Authelia SSO Portal ├── :8088 FileBrowser ├── :8085 upsl.lol frontend ├── :8080 raspisanie frontend ├── :8087 birthday-asyanka ├── :8089 game-finder └── :6379 Redis (sessions)

Domains

  • arseni-aliakseichyk.com — CV, VPN, Guacamole, Auth
  • arseni-lab.com — lab projects (game-finder, cloud, presentation)
  • upsl.lol — schedule management platform
  • raspisanie-bsufl-neoficalno.lol — university schedule caching
  • Docker/Compose
  • Nginx
  • Linux (Ubuntu)
  • WireGuard
  • Certbot
  • UFW
  • Authelia
  • Redis

upsl.lol — University Schedule Platform

Full-Stack Schedule Management System

Personal • 2024 – Present
Production

A full-featured schedule management system built for my university and actively used by students. The backend is a FastAPI application with SQLAlchemy ORM, PostgreSQL database (7 tables), and JWT authentication with role-based access (admin/user). The admin panel provides full CRUD for lessons, users, and dynamic filter system (groups, specializations). Schedule data can be imported from JSON using a companion desktop tool built with Python Tkinter. The whole stack runs in Docker Compose (3 containers: PostgreSQL + FastAPI + Nginx) with Let's Encrypt SSL.

Key Features

  • Weekly schedule view with navigation and dynamic filtering
  • JWT authentication with admin/user roles (python-jose, bcrypt)
  • Admin panel: CRUD for lessons, users, filters
  • Desktop JSON parser (Python Tkinter) for bulk schedule import
  • Dark theme with responsive design
  • Python
  • FastAPI
  • PostgreSQL
  • SQLAlchemy
  • JWT
  • Docker Compose
  • Nginx

University Schedule Caching System

PWA with Async Task Queue & Smart Caching

Personal • 2024 – Present
Production

A web application that solves the problem of a slow and unstable university schedule API by providing a fast, cached interface. The backend is Flask with Celery for asynchronous task processing and Redis as the message broker. Schedule data is cached in SQLite with a 4000-hour TTL, and async Celery workers handle background refresh. The frontend is a Progressive Web App (PWA) with Service Worker for offline support, bookmarks, dark theme, and weekly navigation. Rate limiting (100/min, 10/sec) protects the upstream API. Deployed on VPS via Docker Compose (4 services).

Key Features

  • Celery async task queue with Redis broker for background data refresh
  • SQLite cache with 4000-hour TTL and force-refresh option
  • PWA with Service Worker for offline support
  • Search by group or teacher name
  • Rate limiting: 100 req/min, 10 req/sec
  • Python
  • Flask
  • Celery
  • Redis
  • SQLite
  • Docker Compose
  • PWA

Side Projects

ChillMove App

Freelance • 2025 – 2026
Production

Cross-platform Flutter fitness application for children, built with BLoC state management pattern, Firebase backend (Firestore + Auth + FCM), and GoRouter for declarative navigation. The app is in production with Firestore real-time sync and push notifications delivered through the self-hosted notification worker.

  • Flutter
  • Dart
  • Firebase
  • BLoC
  • GoRouter

AstraBot — Discord Music & Management Bot

Personal • 2024 – Present
Production

A Discord bot written in Python (~2,500 lines) using discord.py. It provides music playback via yt-dlp and FFmpeg with queue management, a ticket system for server moderation, and various utility commands. The bot runs as a Docker container on my VPS and serves multiple Discord servers.

  • Python
  • discord.py
  • yt-dlp
  • FFmpeg
  • Docker

Mess-Privat — Encrypted Messaging & File Transfer

Academic • 2024
Complete

End-to-end encrypted messaging and file transfer system with a server-client architecture. Uses NaCl/libsodium public key cryptography (Curve25519 key exchange, XSalsa20 stream cipher, Poly1305 MAC) over raw TCP sockets. Features encrypted multi-client chat, encrypted file storage on the server, and a curses-based terminal UI with status bar and input line. ~845 lines of Python.

  • Python
  • NaCl/libsodium
  • Curve25519
  • TCP Sockets
  • curses
  • Threading

Royal Blackjack VIP — Multiplayer 3D Card Game

Personal • 2025
MVP

A real-time multiplayer blackjack game with 3D visualization. Up to 5 players at one table with full game mechanics (Hit, Stand, Double Down, Surrender, Insurance, 6-deck shoe). The frontend renders cards in 3D using Three.js with GSAP animations for dealing and flipping. Real-time synchronization via Socket.IO, in-game VIP chat, sound effects, and an admin panel for table management.

  • Node.js
  • Three.js
  • Socket.IO
  • GSAP
  • Express
  • Docker

Steam Co-op Finder

Personal • 2024
Production

Web service for comparing Steam libraries of two players and finding common co-op games. Features multiplayer type filtering (Co-op, PvP, Online, Local), random game roulette, sorting by total playtime, and a “Pile of Shame” filter for games under 2 hours. Metadata cached in SQLite with 7-day TTL. Deployed on VPS behind Nginx.

  • Python
  • FastAPI
  • SQLite
  • Steam API
  • Docker

Telegram Admin-Reply Bot

Personal • 2024
Deployed

Telegram bot that captures user messages (text, photos, stickers, voice) and forwards them to admins with inline reply capabilities. Built with Aiogram 3.14 and asyncio, featuring FSM-driven admin workflows for replies and broadcasts. ~530 lines of Python.

  • Python
  • Aiogram
  • asyncio
  • FSM