Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak

Igor Belousov

Offer Igor work on your next project.

Ukraine Kyiv, Ukraine
8 days 23 hours back
A little busy a little busy
age 42 years
on the service 11 years

Rating

Successful projects
No data
Average rating
No data
Rating
191
Web Programming
3091 place out of 6430
Online Stores & E-commerce
528 place out of 1137

Skills and abilities

Programming

Services

Portfolio


  • 3000 USD

    Kyiv Cruiser Yacht Club

    Website Development
    Digital Archive and Yacht Club Fleet Management Platform
    About the project: Development of a high-performance "Digital Museum" system for the Kyiv City Cruising Yacht Club. The project aims to systematize historical heritage, account for the fleet and crews, as well as automate the media archive. The main focus is on data storage reliability and speed of operation on mobile devices.
    Technology stack:
    Backend: Go (Golang) — development of a fault-tolerant API and media content processing system.
    Frontend: Angular 21 (Standalone Components, Signals, new Control Flow) — creation of a fast and responsive interface.
    Database: PostgreSQL (using UUID v7 for security and natural data sorting).
    Storage: S3-compatible storage (Cloudflare R2 in production, SeaweedFS for local development).
    DevOps: Automated CI/CD cycle, working with Feature branches, Docker.
    Technical tasks and implemented solutions:
    Storage architecture "Zero Path":
    Problem: Dependency on the local file system and difficulties with data migration.
    Solution: Complete abandonment of storing file paths in the database. A system was implemented where only UUIDs and extensions are stored in the database, and paths are dynamically generated on the frontend through an S3 provider abstraction. This allowed seamless switching between local SeaweedFS and cloud Cloudflare R2.
    Performance optimization of the mobile version:
    Problem: Low LCP (3.8 sec) due to loading original images.
    Solution: A media pipeline was developed in Go that automatically generates WebP thumbnails upon upload. Lazy loading was configured, and forced preview display by default was implemented, which allowed speed metrics to return to the "green zone" (90+ Lighthouse scores).
    Logical data isolation (Gallery Isolation):
    Problem: Difficulty managing thousands of media files related to different entities (yachts, events, people).
    Solution: A folder structure was implemented at the S3 level based on gallery UUIDs. This eliminated the storage of all files in one place, simplified backup and deletion of related data.
    Layout stability (CLS Optimization):
    Problem: "Jumping" interface when loading images on mobile devices.
    Solution: Use of strict Atomic Design and reserving space for media content through aspect-ratio in Angular components.
    Unique features and capabilities:
    Automated Media Processing: The system independently determines the content type (photo/video), creates the necessary previews, and places them in the corresponding S3 directories (originals/thumbs).
    Related historical archive: Deep data integration between the yacht profile and its crew, allowing tracking of the vessel's history over decades.
    Professional Workflow: Development is conducted according to the Git Flow principle with automatic code delivery to production after merging into the main branch, ensuring the stability of the running service.
    Result:
    A scalable and infrastructure-independent platform has been created. Thanks to the transition to an S3-compatible architecture and frontend optimization, the project demonstrates high responsiveness and is ready to store large data volumes without performance loss.