Full stack React/Node.js
Node.js (TypeScript) Fullstack Engineer з сильним бекенд-фокусом, який будуватиме API, інтеграції та бізнес-логіку для великої аналітичної системи (streaming + OLAP), і водночас здатен якісно працювати з сучасним React-фронтендом.
Вимоги:
4+ років комерційного досвіду з Node.js + TypeScript
Практичний досвід з React у продакшені
Сильне розуміння backend-архітектури
Досвід роботи в команді з code review і CI/CD
Досвід з аналітичними БД (ClickHouse, BigQuery, Redshift)
Розуміння streaming-архітектур (Kafka/Redpanda)
Досвід роботи з високонавантаженими системами
Розуміння принципів data-platform / analytics-products
Backend:
- Node.js, TypeScript
- Express.js
- PostgreSQL
- ClickHouse
- Redis
- Streaming (Redpanda / Kafka-API)
- Auth: Keycloak, OPA
- Nginx
Frontend:
- React
- Next.js
- TypeScript
- Tailwind CSS
- RTK Query
- Storybook
Обов'язки:
Backend:
Проєктування та розробка API (REST/JSON, потенційно GraphQL) для аналітичної платформи
- Реалізація бізнес-логіки доступу до даних:
- агрегації
- фільтрації
- RBAC/ABAC через Keycloak + OPA
- Інтеграція з:
- ClickHouse (аналітичні запити, оптимізація)
- PostgreSQL (метадані, конфіги)
- Redis (кешування, rate-limit, sessions)
- стрімінгом (консьюмери/продюсери подій)
- Забезпечення:
- продуктивності
- стабільності
- контрольованих помилок і retry-механізмів
- Участь у проєктуванні архітектури сервісів і data-flow
Frontend:
- Розробка UI для:
- аналітичного порталу
- адмін-панелей
- внутрішніх інструментів
- Робота з React + TypeScript
- Інтеграція з backend-API через RTK Query
- Співпраця з дизайнерами та підтримка дизайн-системи (Storybook)
- Оптимізація UX для роботи з великими об’ємами даних (фільтри, таблиці, lazy loading)
Буде плюсом:
Досвід побудови складних аналітичних UI:
- великі таблиці
- фільтри
- агрегації
- drill-down / drill-through сценарії
- Досвід інтеграції з BI/analytics системами
- Розуміння ролей, прав доступу та їх відображення в UI
- Досвід роботи з observability frontend (метрики, помилки, user flows)
Умови: - Гнучкий графік: старт з 9:00 / 10:00 / 11:00
- Формат: повністю ремоут або офіс у Варшаві
- Виплата: карта українського банку або криптою (без ФОП)
- Не обмежені відпустки та 100 лікарняних днів
Required languages
| English | B1 - Intermediate |
| Ukrainian | C2 - Proficient |