Dosar proiect

ShiftManager pentru controlul traficului aerian

Operator de control trafic aerian în regim continuu 24/7. O singură săptămână de planificare leagă între ele autorizări individuale pe sector (fiecare cu termen de valabilitate), perechi instructor-cursant pentru on-the-job training, plafoane reglementate de oră de odihnă între schimburi, rotație echitabilă a nopților și acoperire neîntreruptă pe fiecare poziție.

ShiftManager, dashboard de planificare a turelor cu controlori activi, autorizări în expirare și calendar săptămânal
01 / 03
Client
Operator aviatic, București
Sector
Aviație civilă
An livrare
2025
Status
În producție

Aceeași poveste, două registre.

Pentru cine plătește proiectulLimbaj uman, fără jargon

Planificarea săptămânală a controlorilor de trafic aerian se face dintr-un singur ecran. Sistemul propune variante care respectă autorizările individuale, blochează în UI orice tură care ar viola un certificat expirat și notifică echipa pe telefon la fiecare modificare publicată.

Pentru cine îl revizuiește tehnicDecizii concrete, versiuni reale

Arhitectură hibridă PHP 8.3 + Node.js 18 (TypeScript), MariaDB prin Prisma 5, solver Timefold (JVM) izolat ca serviciu separat. Notificări push browser prin Service Worker peste BullMQ/Redis. Cinci roluri cu delegare temporală, audit trail per modificare, JWT cu rotație, CSRF pe hash_equals, bcrypt cost 12, headers de izolare cross-origin.

Aceleași fapte, două lecturi. CEO-ul citește registrul de sus și știe ce s-a livrat. CTO-ul citește registrul de jos și știe cum. Nimeni nu e forțat să traducă mental.

Procesul existent înainte de noi.

Programul se construia în Excel, ajustat prin email și agende fizice. Autorizările expirate erau interceptate, în cel mai bun caz, la verificarea umană dinaintea turei. Modificările de ultim moment se transmiteau prin telefon, fără jurnal de cine a aprobat ce și când.

Sistemul construit pe măsură.

Planificatorul vede întreaga organizație pe un singur ecran, mută ture prin drag-and-drop pe sector, iar solver-ul Timefold (rulat ca serviciu JVM izolat) construiește variante valide în câteva secunde. PHP 8.3 servește UI-ul și sesiunea, Node.js 18 expune API-ul de planificare în TypeScript, MariaDB prin Prisma 5 stochează modelul. Autorizările sunt validate temporal pe sector, perechile instructor-cursant respectă cerințele on-the-job training, iar fiecare modificare lasă urmă în audit trail. Notificările push browser circulă prin Service Worker peste BullMQ/Redis. Securitate calibrată pe perimetrul critic: JWT cu rotație, CSRF pe hash_equals, bcrypt cost 12, headers de izolare cross-origin.

Stack-ul, în producție.

  1. 01PHP 8.3 · FPM
  2. 02Node.js 18 · Express · TypeScript
  3. 03Prisma 5 · MariaDB 8
  4. 04Redis · BullMQ
  5. 05Timefold Solver (Java)
  6. 06Vite 5 · Service Worker
  7. 07Nginx · PM2 · Let's Encrypt

Lighthouse, măsurat la predare.

99
PerformanceExcelent
100
AccessibilityExcelent
100
Best PracticesExcelent
82
SEOFoarte bun
  1. Verificabil public

    Domeniul acestui proiect este privat, nu expus public. Scorurile au fost măsurate pe mediul de producție al clientului cu Google PageSpeed Insights, instrumentul oficial Google, și pot fi reverificate sub acord de confidențialitate.

  2. Moment de referință

    Scorurile reflectă starea proiectului la momentul predării către client (2025). Codul sursă și infrastructura aparțin ulterior clientului, iar proiectul poate fi modificat, inactivat sau migrat fără notificare din partea noastră.

Rezultatul măsurabil.

Programul săptămânal se generează în secunde. O tură invalidă nu poate fi salvată, autorizarea expirată o blochează în UI înainte să ajungă în baza de date. API la sub 80 ms p50, uptime contractual 99,9% pe VPS dedicat. Predarea în producție: 28 de zile de la kickoff.

  1. M.01Generare program săptămânalore → secunde
  2. M.02API mediană (p50)< 80 ms
  3. M.03Predare producție28 zile de la kickoff

Note tehnice și verificări.

  1. [1]

    Scoruri Lighthouse capturate la 2025 pe mediul de producție al clientului. Domeniu privat, neexpus public.

  2. [2]

    Codul sursă și infrastructura aparțin clientului după predare. Scorurile, stack-ul și metricile reflectă starea predată, nu starea curentă a proiectului.

  3. [3]

    Documentația tehnică detaliată, jurnalele de implementare și rapoartele de testare sunt arhivate în repository-ul intern Arcane Tech, disponibile sub acord de confidențialitate.

Aveți un sistem similar de construit?

Pornim cu o analiză tehnică condusă de un inginer principal, sub acord de confidențialitate.