Senior Node.js Engineer
⚲ Kraków, Krowodrza
19 000–24 000 zł netto (+ VAT) / mies.
Wymagania
- Node.js
- TypeScript
- SQL Jest
- Vitest
- Git
- Claude Code
- Cursor
- GitHub Copilot
- PostgreSQL
- Kafka
- Docker
- Kubernetes
- GitLab
- Python
Opis stanowiska
Nasze wymagania:
At least 5 years of commercial experience with Node.js in a production environment.
Strong knowledge of TypeScript.
Solid foundations in asynchronous programming (Promise, async/await, event loop, streams).
Practical knowledge of REST/HTTP, JSON, OpenAPI.
Experience with SQL (preferably PostgreSQL) and an ORM (Sequelize or similar).
Experience writing tests (Jest, Vitest, or equivalent).
The ability to write clean, well-organized code (DRY/KISS/SOLID).
Confident use of Git and a merge-request / code-review workflow.
Communicative English in writing (documentation, code, comments).
Mile widziane:
Hands-on experience using AI coding (e.g., Claude Code, Cursor, GitHub Copilot) as part of daily software engineering work.
Knowledge and experience with transactions and concurrent operations in PostgreSQL (or another relational database).
Experience working with large datasets.
Experience with Kafka or another message broker.
Working with distributed systems and microservices in production.
Familiarity with Docker and Kubernetes.
Experience with CI/CD (e.g., GitLab CI).
Basic knowledge of Python — for writing helper scripts.
Schema validation (Joi) and safe error handling.
Prior exposure to the CDP / loyalty domain.
O projekcie:
Having such great solutions, we are looking for a highly motivated Senior Node.js Engineer to join our brave and brilliant Synerise Team. See if you fit our diverse and dynamic environment, where we constantly evolve together with the growth of our clients.
Zakres obowiązków:
Develop and maintain microservices in Node.js + TypeScript.
Design and implement REST APIs aligned with OpenAPI.
Work with PostgreSQL — both via Sequelize (ORM) and in raw SQL when we need finer control over the query.
Event-driven processing with Kafka.
Write tests — unit, integration, and end-to-end (Vitest/Jest).
Review code and discuss architecture and quality with the team.
Co-author technical documentation and design decisions (RFCs, design docs).
Operate in 2-week sprints in a Scrum model, working closely with a dedicated Product Owner.
Oferujemy:
Work with a modern stack (Node.js, TypeScript, PostgreSQL, Kafka, Docker, Kubernetes) at real scale.
Stack kept on current versions — we don't let applications drift into technical debt; we regularly modernize dependencies and tooling.
Day-to-day support from AI agents (Claude Code, OpenAI tools) — treated as a standard part of our toolkit, not an experiment.
Real impact on a product used by top clients in 30+ countries.
Close cooperation with experienced engineers and a dedicated Product Owner.
A clear rhythm of work: 2-week sprints, Scrum/Agile.
A non-corporate atmosphere oriented around meritocracy — we reward thinking and quality, not hours behind a desk.
Flexible working hours and no dress code.
At least 5 years of commercial experience with Node.js in a production environment.
Strong knowledge of TypeScript.
Solid foundations in asynchronous programming (Promise, async/await, event loop, streams).
Practical knowledge of REST/HTTP, JSON, OpenAPI.
Experience with SQL (preferably PostgreSQL) and an ORM (Sequelize or similar).
Experience writing tests (Jest, Vitest, or equivalent).
The ability to write clean, well-organized code (DRY/KISS/SOLID).
Confident use of Git and a merge-request / code-review workflow.
Communicative English in writing (documentation, code, comments).
Mile widziane:
Hands-on experience using AI coding (e.g., Claude Code, Cursor, GitHub Copilot) as part of daily software engineering work.
Knowledge and experience with transactions and concurrent operations in PostgreSQL (or another relational database).
Experience working with large datasets.
Experience with Kafka or another message broker.
Working with distributed systems and microservices in production.
Familiarity with Docker and Kubernetes.
Experience with CI/CD (e.g., GitLab CI).
Basic knowledge of Python — for writing helper scripts.
Schema validation (Joi) and safe error handling.
Prior exposure to the CDP / loyalty domain.
O projekcie:
Having such great solutions, we are looking for a highly motivated Senior Node.js Engineer to join our brave and brilliant Synerise Team. See if you fit our diverse and dynamic environment, where we constantly evolve together with the growth of our clients.
Zakres obowiązków:
Develop and maintain microservices in Node.js + TypeScript.
Design and implement REST APIs aligned with OpenAPI.
Work with PostgreSQL — both via Sequelize (ORM) and in raw SQL when we need finer control over the query.
Event-driven processing with Kafka.
Write tests — unit, integration, and end-to-end (Vitest/Jest).
Review code and discuss architecture and quality with the team.
Co-author technical documentation and design decisions (RFCs, design docs).
Operate in 2-week sprints in a Scrum model, working closely with a dedicated Product Owner.
Oferujemy:
Work with a modern stack (Node.js, TypeScript, PostgreSQL, Kafka, Docker, Kubernetes) at real scale.
Stack kept on current versions — we don't let applications drift into technical debt; we regularly modernize dependencies and tooling.
Day-to-day support from AI agents (Claude Code, OpenAI tools) — treated as a standard part of our toolkit, not an experiment.
Real impact on a product used by top clients in 30+ countries.
Close cooperation with experienced engineers and a dedicated Product Owner.
A clear rhythm of work: 2-week sprints, Scrum/Agile.
A non-corporate atmosphere oriented around meritocracy — we reward thinking and quality, not hours behind a desk.
Flexible working hours and no dress code.
🔍 Dekoder Ogłoszenia
🔴
highly motivated Senior Node.js Engineer
Oczekuje się, że kandydat będzie wykazywał się dużą inicjatywą i samodzielnością, często pracując bez ścisłego nadzoru.
🟡
brave and brilliant Synerise Team
Może sugerować zespół o silnej kulturze wewnętrznej, gdzie 'odwaga' może oznaczać podejmowanie ryzyka lub kwestionowanie status quo, a 'błyskotliwość' wysokie oczekiwania co do jakości pracy.
🔴
constantly evolve together with the grow
Projekt jest w fazie rozwoju, co może oznaczać częste zmiany wymagań, technologii lub priorytetów.
🔴
diverse and dynamic environment
Środowisko pracy może być nieprzewidywalne, z szybkimi zmianami i potencjalnie wysokim tempem pracy.
🟡
Hands-on experience using AI coding (e.g., Claude Code, Cursor, GitHub Copilot) as part of daily software engineering work.
Firma aktywnie wykorzystuje narzędzia AI do kodowania, co może oznaczać, że część rutynowych zadań programistycznych będzie delegowana do AI, a od inżyniera oczekuje się umiejętności efektywnego zarządzania tymi narzędziami.