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

Igor Belousov

Zaproponuj Igor pracę nad swoim kolejnym zleceniem.

Ukraina Kijów, Ukraina
8 dni 7 godzin temu
Częściowo zajęty częściowo zajęty
wiek 42 lata
w Serwisie 11 lat

Ranking

Zakończonych zleceń
Brak danych
Średnia ocena
Brak danych
Ranking
191
Programowanie stron internetowych
Sklepy internetowe i e-commerce

Umiejętności i kwalifikacje

Programowanie

Usługi

Portfolio


  • 10 904 PLN

    Kijowski klub jachtowy

    Kompleksowe prace nad stroną internetową
    Platforma zarządzania cyfrowym archiwum i flotą jachtów klubu
    O projekcie: Opracowanie wysokowydajnego systemu „Cyfrowe muzeum” dla Kijowskiego Miejskiego Klubu Jachtowego. Projekt ma na celu systematyzację dziedzictwa historycznego, ewidencję floty i załóg, a także automatyzację archiwum mediów. Główny nacisk położono na niezawodność przechowywania danych i szybkość działania na urządzeniach mobilnych.
    Stos technologii:
    Backend: Go (Golang) — opracowanie odpornego na awarie API i systemu przetwarzania treści multimedialnych.
    Frontend: Angular 21 (Standalone Components, Signals, nowy Control Flow) — tworzenie szybkiego i responsywnego interfejsu.
    Baza danych: PostgreSQL (użycie UUID v7 dla zapewnienia bezpieczeństwa i naturalnego sortowania danych).
    Przechowywanie: Zgodne z S3 magazyn (Cloudflare R2 w produkcji, SeaweedFS do lokalnego rozwoju).
    DevOps: Zautomatyzowany cykl CI/CD, praca z gałęziami Feature, Docker.
    Zadania techniczne i zrealizowane rozwiązania:
    Architektura przechowywania „Zero Path”:
    Problem: Zależność od lokalnego systemu plików i trudności z migracją danych.
    Rozwiązanie: Całkowita rezygnacja z przechowywania ścieżek do plików w bazie danych. Wdrożono system, w którym w bazie przechowywane są tylko UUID i rozszerzenia, a ścieżki są generowane dynamicznie po stronie frontendu przez abstrakcję dostawcy S3. Umożliwiło to bezproblemowe przełączanie się między lokalnym SeaweedFS a chmurowym Cloudflare R2.
    Optymalizacja wydajności wersji mobilnej (Wydajność):
    Problem: Niskie wskaźniki LCP (3,8 sek) z powodu ładowania oryginalnych obrazów.
    Rozwiązanie: Opracowano pipeline mediów w Go, który podczas ładowania automatycznie generuje miniatury WebP (thumbs). Skonfigurowano leniwe ładowanie (lazy loading) i wymuszone wyświetlanie podglądów domyślnie, co pozwoliło przywrócić wskaźniki prędkości do „zielonej strefy” (90+ punktów Lighthouse).
    Logiczna izolacja danych (Izolacja Galerii):
    Problem: Trudności w zarządzaniu tysiącami plików multimedialnych związanych z różnymi bytami (jachtami, wydarzeniami, ludźmi).
    Rozwiązanie: Wdrożono strukturę folderów na poziomie S3 na podstawie UUID galerii. Wyeliminowało to przechowywanie wszystkich plików w jednym miejscu, uprościło tworzenie kopii zapasowych i usuwanie powiązanych danych.
    Stabilność układu (Optymalizacja CLS):
    Problem: „Skaczący” interfejs podczas ładowania obrazów na urządzeniach mobilnych.
    Rozwiązanie: Wykorzystanie ścisłego Atomic Design i rezerwacja przestrzeni pod treści multimedialne przez aspect-ratio w komponentach Angular.
    Unikalne cechy i możliwości:
    Zautomatyzowane przetwarzanie mediów: System samodzielnie określa typ treści (zdjęcie/wideo), tworzy potrzebne miniatury i umieszcza je w odpowiednich katalogach S3 (oryginały/thumbs).
    Powiązane archiwum historyczne: Głęboka integracja danych między profilem jachtu a jego załogą, umożliwiająca śledzenie historii statku przez dziesięciolecia.
    Profesjonalny Workflow: Opracowanie prowadzone jest zgodnie z zasadą Git Flow z automatycznym dostarczaniem kodu na produkcję po scaleniu do głównej gałęzi, co gwarantuje stabilność działającej usługi.
    Wynik:
    Stworzona została skalowalna i niezależna od infrastruktury platforma. Dzięki przejściu na architekturę zgodną z S3 i optymalizacji frontendu, projekt wykazuje wysoką szybkość reakcji i jest gotowy do przechowywania dużych zbiorów danych bez utraty wydajności.