Záznamy z vývoja

Výber projektov, ktoré vyvíjam a spravujem, so stručným popisom ich architektúry: spoločný kód naprieč platformami, oddelenie jednotlivých vrstiev a sieťové a požiarne signalizačné inštalácie.

01 / Multiplatformové a mobilné aplikácie

school

MaturiMate

Kotlin Multiplatform • Vo vývoji

KMP Core

MaturiMate je aplikácia na prípravu na maturitné skúšky pre Android a desktop (JVM), napísaná v Kotlin Multiplatform a Compose Multiplatform. Približne 95 % produkčného kódu v Kotline je zdieľaných medzi oboma platformami; zvyšok tvoria vstupné body platforiem a malé platformové adaptéry.

Obrazovky používajú ViewModely, ktoré sprístupňujú nemenný stav UI ako Kotlin StateFlow. Navigácia používa Navigation3 (alpha) a nastavenia používateľa uchováva multiplatformový DataStore.

Stav: fungujú onboarding, profilová obrazovka s odpočtom do maturity a adaptívny navigačný rám. Databáza skúšok (SQLDelight) a napĺňanie skúšobných dát sa vyvíjajú v samostatnej vetve a zatiaľ nie sú zlúčené. Obrazovka na riešenie skúšky, hodnotenie a história pokusov zatiaľ nie sú hotové.

Excerpt (abbreviated): MainFrame.kt, adaptive navigation
BoxWithConstraints {
    // Determine if the device is considered a desktop based on maxWidth
    val isDesktop = maxWidth > LayoutConstants.DesktopThreshold

    if (isDesktop) {
        // Desktop navigation side bar
        Row(Modifier.fillMaxSize()) {
            // ...
        }
    }
    // ...
}

02 / Backend a systémový softvér

layers

Employee Records Database (Java)

Java

Konzolová aplikácia v Jave 21 na správu záznamov zamestnancov a ich väzieb spolupráce. Začala ako zadanie pre dvojicu na univerzite. Kód je rozdelený na prezentačnú, doménovú a dátovú vrstvu a doména závisí iba od rozhraní repozitára a úložiska. Dáta sú počas behu v pamäťovom repozitári, s exportom do textového súboru a zálohou do SQLite, ktorá sa pri štarte načíta a pri ukončení uloží. Dve funkcie nad zamestnancami sú skóre rizika založené na pravidlách a analýza spoločných kolegov. Dotaz na najviac prepojeného zamestnanca pri zhode rozhoduje podľa ID zamestnanca.

Doménovú službu, repozitár a úložné backendy pokrývajú JUnit 5 testy; testy súborového úložiska bežia v dočasných @TempDir priečinkoch. Workflow GitHub Actions spúšťa unit testy pri každom pushi a pull requeste do vetvy master.

public

Multidoménová platforma a mediálny pipeline

Webový ekosystém

Tento web. Jeden repozitár obsahuje tri samostatné stránky: web fotografickej živnosti, centrálny hub a toto inžinierske portfólio. Lokálne bežia spolu v nastavení Docker Compose s Nginx serverom na Alpine Linuxe, čo mi umožňuje odladiť prepojenie domén a čisté URL pred nasadením. Každá stránka sa nasadzuje ako samostatný projekt Cloudflare Pages pri pushi do vetvy main.

Fotogalérie fungujú bez databázy. Skript v Pythone prejde priečinky so snímkami a vygeneruje JSON manifest, ktorý prehliadač načíta a pomocou čistého JavaScriptu z neho poskladá masonry galériu.

Secure Communication

Python • Univerzitný projekt z predmetu BPC-AKR

Crypto

Terminálový skupinový chat, ktorý slúži ako kryptografické ihrisko (playground). Klienti komunikujú prostredníctvom šifrovaných správ (AES-GCM) pomocou kľúča získaného z výmeny kľúčov Diffie-Hellman, pričom zabudovaný man-in-the-middle proxy demonštruje, pred čím ochrana chráni a pred čím nie. V zabezpečenom režime je handshake podpísaný pomocou RSA a manipulovaná výmena kľúčov sa zahodí; v nezabezpečenom režime dokáže proxy reláciu plne prevziať.

Projekt vznikol ako univerzitné zadanie štvorčlenného tímu (BPC-AKR); ja som implementoval výmenu kľúčov Diffie-Hellman a odvodzovanie kľúčov pomocou HKDF. Neskôr som kód refaktoroval, opravil 21 chýb, napísal sadu 103 testov a pridal GitHub Actions workflow spolu s Docker Compose demom. Ide o vzdelávací projekt; podrobnosti a zoznam chýb sa nachádzajú v README na GitHube.

03 / Fyzická infraštruktúra a požiarna bezpečnosť

Inštitucionálna sieť & L3 správa

Infraštruktúra

Nová sieť pre novopostavené vzdelávacie zariadenie: 19" rack, segmentácia VLAN (manažment, CCTV, LAN zamestnancov), Wi-Fi 6 a 8 IP kamier s PoE rozpočtom 250 W pri záťaži ~80 W.

Záznamové streamy zostávajú na backplane PoE switchu. Dvojúrovňová správa: cloud Omada na bežný dohľad, WireGuard split tunnel zo vzdialenej lokality do izolovaných podsietí. Navrhnuté, nainštalované a nakonfigurované mnou; spravované na diaľku.

EPS a požiarna bezpečnosť: Bosch AVENAR 2000

Požiarna bezpečnosť

Elektronická požiarna signalizácia na ústredni Bosch AVENAR panel 2000 vo vzdelávacom zariadení: uzavretá LSN slučka, šesť funkčných zón s názvami miestností na displeji, tlačidlové hlásiče FMC-420RW.

Relé RML 0008 A ovládajú fail-safe uvoľnenie dverí, vyrážaciu spúšť hlavného rozvádzača a prenos poplachu cez GSM. Inštalácia a programovanie LSN ústredne Bosch AVENAR podľa projektu a pod dohľadom oprávnenej osoby. Práca zahŕňala kontrolu poradia modulov, lokalizáciu porúch v režime T-tap a kontrola autonómie batérií podľa EN 54-4 (24 h + 30 min).