Platformă de comenzi și livrări din Chișinău
API NestJS cu WebSocket pentru starea comenzii, coadă separată pentru notificări și hartă actualizată în timp real pentru curieri. Traficul de weekend se acoperă prin replici, nu prin plan mai mare.
TypeScript strict, nu JavaScript scris în grabă
Dezvoltare backend Node.js în TypeScript pentru echipe din Moldova care au deja un frontend sau o aplicație mobilă și au nevoie de un API serios în spate. Scriem servicii NestJS, Express sau Fastify, module realtime pe WebSocket și straturi BFF pentru mobil. Rulează în containere pe VPS sau pe Kubernetes, în datacentere din Frankfurt.
API-uri NestJS când proiectul are multe module și mai mulți dezvoltatori: structură impusă, injecție de dependențe, validare la intrare, documentație generată. Fastify sau Express pentru servicii mici, unde contează pornirea rapidă și puține straturi. Peste ele adăugăm ce cere produsul: WebSocket pentru actualizări în timp real, cozi pe Redis pentru sarcini lungi, planificator pentru rapoarte, plus un strat BFF care servește aplicația mobilă cu exact datele necesare.
Cele mai multe proiecte Node.js pe care le preluăm nu au probleme de performanță, ci de disciplină: tipuri lipsă, validare făcută în două locuri, erori înghițite fără urmă. Punem TypeScript în mod strict, contracte partajate între backend și frontend, validare la marginea sistemului și logare structurată cu identificator de cerere. Adăugăm trasabilitate prin OpenTelemetry, ca o cerere lentă să poată fi urmărită până la interogarea vinovată.
Node.js are nevoie de proces persistent, deci pornim de la VPS cu Docker, nu de la găzduire partajată. Punem PostgreSQL și Redis pe rețeaua privată, fără port expus public, și un reverse proxy în față pentru TLS și limitare de rate. Când apar mai multe servicii sau workeri care se scalează separat, trecem pe Kubernetes. Fișierele statice și răspunsurile cache-abile ies prin CDN-ul Cloudflare integrat, rapid pentru vizitatorii din Moldova.
Planurile VPS includ între 1 și 8 h de programare lunar, iar serverele dedicate între 5 și 10 h, în funcție de plan, și cele GPU 10 h. Se cer din panoul de client, cu termen propus de tine, și nu se reportează în luna următoare. La proiectele Node.js orele se consumă cel mai adesea în datoria tehnică pe care nimeni nu o pune în plan, dar care produce incidentele de la ora două noaptea.
Orele de DevOps, CyberSecurity și Programare sunt incluse în abonament, lună de lună: 1 h de la planul cPanel Advanced în sus, 1–8 h pe VPS și 5–10 h pe serverele dedicate, în funcție de plan, și 10 h pe GPU. Le ceri din panoul de client și propui termenul; cota expiră la sfârșitul lunii calendaristice, iar lucrul de peste cotă se acceptă și se facturează separat, în euro, cu TVA 20 % și factură SFS. Cu abonamentele care includ minimum 2 ore lunare îți construim un site de prezentare, iar cu cele care includ minimum 5 ore, un magazin online — din orele deja plătite în abonament.
API NestJS cu WebSocket pentru starea comenzii, coadă separată pentru notificări și hartă actualizată în timp real pentru curieri. Traficul de weekend se acoperă prin replici, nu prin plan mai mare.
Backend multi-tenant cu interfață în română și rusă, care servește clienți din Moldova, România și Ucraina. Rapoartele grele pleacă pe workeri, ca panoul să rămână rapid în orele de vârf.
Serviciu care agregă datele din mai multe sisteme interne și le trimite aplicației mobile într-un singur răspuns, cu autentificare, cache și limitare de rate în față.
Deschizi cererea în panoul de client, descrii API-ul de construit sau problema din serviciul existent și propui termenul până la care ai nevoie de livrare.
Convenim rutele, formatul erorilor și modelul de date înainte de cod. Stabilim ce intră în orele incluse și ce se facturează separat, la oră.
Livrăm în container pe un mediu separat, cu teste pe fluxurile critice și verificare de încărcare pe rutele care primesc cel mai mult trafic.
Punem în producție treptat, cu revenire rapidă la versiunea anterioară. Predăm repository-ul, variabilele de mediu și tablourile de metrici și alerte.
NestJS când echipa are mai mulți dezvoltatori și proiectul crește: impune structură și reduce deciziile arbitrare. Fastify când contează pornirea rapidă și un serviciu mic, cu puține rute. Express rămâne potrivit pentru utilitare și integrări scurte. Toate trei rulează la fel de bine în container pe VPS.
Este un framework Node.js scris în TypeScript, care organizează codul în module, controlere și servicii, cu injecție de dependențe. Aduce validare, documentație generată și un mod uniform de a scrie teste. Practic, rezolvă problema proiectelor Express care ajung, după un an, la o structură pe care nimeni nu o mai înțelege.
Nu îl recomandăm pentru producție. Un serviciu Node.js are nevoie de proces care rămâne pornit, de workeri și de acces la rețeaua privată pentru bază de date și cache. Alegerea corectă este un VPS cu Docker, unde ai control pe versiune și pe resurse, iar migrarea o facem gratuit.
Mai întâi scoatem din cererea HTTP tot ce durează, în cozi cu workeri separați. Apoi punem cache pe răspunsurile repetate și indexuri pe interogările lente. Abia după asta adăugăm replici în spatele unui reverse proxy sau în Kubernetes, cu limite de resurse și probe de sănătate configurate.
Node.js e mai potrivit când ai nevoie de conexiuni permanente, actualizări în timp real și tipuri partajate cu un frontend React. PHP cu Laravel rămâne mai rapid de livrat la aplicații clasice de business și la magazine. Contează și ce cunoaște echipa care va întreține codul peste doi ani.
Punem OpenTelemetry în aplicație, cu identificator propagat de la cerere până la interogarea în bază, și logare în format JSON cu nivel și context. Datele ajung în Grafana, Prometheus și Loki, iar alertele se leagă de obiective de serviciu, nu de praguri alese la întâmplare.
Trimite-ne ce rulează acum și ce urmează în produs. Îți spunem ce se acoperă din orele incluse în abonament și ce necesită ore suplimentare.