Senior programista Node.js do skalowalnych systemów backendowych
Wrocław, Polska · Strefa CET · Przyjmuję nowe projekty
Buduję backendy w Node.js, które wytrzymują produkcyjne obciążenie. API, mikroserwisy, architektury event-driven, serwery WebSocket — cokolwiek wymaga logika biznesowa. Ponad 10 lat doświadczenia w zamienianiu chaotycznych wymagań w czysty, utrzymywalny kod backendowy.
API REST i GraphQL
Produkcyjne serwery API z porządną autentykacją, rate limitingiem, walidacją i dokumentacją. Express, Fastify lub NestJS — zależnie od złożoności projektu i preferencji zespołu.
Architektura mikroserwisów
Rozbijanie monolitów na skupione serwisy komunikujące się przez kolejki (RabbitMQ, SQS) lub strumienie zdarzeń (Kafka). Service discovery, circuit breakers i distributed tracing w pakiecie.
Platformy real-time
Serwery WebSocket do czatu, live notyfikacji, edycji współdzielonej i dashboardów real-time. Socket.IO lub raw WebSockets z zarządzaniem połączeniami, logiką reconnectu i skalowaniem horyzontalnym.
Integracje i pipeline'y danych
Łączenie płatności, CRM-ów, ERP-ów, API kurierskich i innych serwisów zewnętrznych. Obsługa webhooków, logika ponawiania, transformacja danych i synchronizacja między systemami.
Background joby i kolejki zadań
BullMQ do schedulingu, wysyłki maili, generowania PDF, importów danych i innych zadań asynchronicznych. Polityki retry, dead letter queues i monitoring długotrwałych procesów.
Projektowanie API i architektura
Konwencje REST, strategie wersjonowania, wzorce paginacji, standardy error handlingu. Projektuję API, które inni develerzy lubią konsumować — spójne, przewidywalne i dobrze udokumentowane w OpenAPI.
Architektura event-driven
Message brokery (RabbitMQ, SQS, Kafka) na zdekuplowane serwisy. Event sourcing i CQRS kiedy złożoność domeny to uzasadnia. Idempotentni konsumenci, dead letter handling i patterny exactly-once.
Warstwa bazodanowa
PostgreSQL z Prisma lub Drizzle ORM. Optymalizacja zapytań, migracje, connection pooling i repliki do odczytu. Redis na caching, sesje i pub/sub. MongoDB kiedy model danych pasuje.
Autentykacja i bezpieczeństwo
JWT, OAuth 2.0, zarządzanie sesjami, RBAC i strategie kluczy API. Walidacja inputu z Zod, zabezpieczenie przed SQL injection, rate limiting i security headers. Trzymam się wytycznych OWASP.
Obserwowalność i monitoring
Strukturowane logi z Pino, distributed tracing z OpenTelemetry, metryki z Prometheus. Health checki, progi alertów i dashboardy, które mówią co jest nie tak o 3 w nocy.
Wydajność i skalowanie
Profilowanie event loop lag, identyfikacja wycieków pamięci, optymalizacja zapytań bazodanowych. Skalowanie horyzontalne z PM2 lub orkiestracją kontenerów. Load testing z k6.
Projektowanie systemu
Mapuję przepływ danych, granice serwisów i punkty integracji zanim zacznę pisać kod. Uzgadniamy kontrakty API, schemat bazy i topologię deploymentu z góry.
Budowa z testami
Piszę testy równolegle z kodem. Testy integracyjne na endpointy API, unit testy na logikę biznesową, testy kontraktowe na granice serwisów. Każdy PR przechodzi review i testy na stagingu.
Deploy i monitoring
Deploy produkcyjny z health checkami, strukturowanym logowaniem i alertami od pierwszego dnia. Twój zespół dostaje runbooki, dokumentację API i system, którym może pewnie operować.
Node.js świetnie sprawdza się przy I/O-heavy workloadach: API, ficzery real-time, mikroserwisy, integracje. To zły wybór na ciężkie obliczenia CPU (enkodowanie wideo, ML inference). Dla większości aplikacji webowych i produktów SaaS, Node.js to doskonały backend.
Jedno i drugie. Przy enterprise backendach ze złożoną logiką domenową używam NestJS — daje strukturę, dependency injection i wzorce testowania, które procentują na skali. Przy prostszych API lub mikroserwisach Express lub Fastify jest lżejszy i szybszy do dowiezienia.
Tak. Regularnie dołączam do projektów w trakcie — naprawiam problemy architektoniczne, dodaję ficzery, migruję z JS na TypeScript, rozbijam monolity na serwisy. Zaczynam od audytu codebase'u, żeby priorytetyzować najważniejsze rzeczy.
PostgreSQL to mój domyślny wybór. Projektuję znormalizowane schematy, ogarniam migracje w Prisma lub Drizzle i optymalizuję zapytania właściwym indeksowaniem i connection poolingiem. Na caching i real-time dodaję Redisa.
Tak. Kontenery Docker na AWS (ECS, Lambda), Google Cloud Run lub Railway. Stawiam pipeline'y CI/CD, zarządzanie środowiskami, health checki i monitoring. Dostajesz w pełni operacyjny system produkcyjny, nie tylko kod w repo.
Pracuję na stawce dziennej lub miesięcznej, zależnie od typu współpracy. Umów bezpłatną 30-minutową rozmowę — dam Ci uczciwą wycenę na podstawie zakresu projektu.
Szukasz senior Node.js developera?
Umów bezpłatną 30-minutową rozmowę techniczną. Powiem Ci uczciwie, czy pasuję do Twojego projektu.


