Position: Senior Node.js Developer (Poland)
Company: Grid Dynamics
Experience required: 3y
English level: upper

Small start-up from Israel. It is a technology company that builds data infrastructure and a data operating system for AI companies. 
Businesses of every size – from startups to public companies – use our cloud platform to accelerate the development and deployment of AI into production.

Data management system modernization. A modern data management system designed for unstructured data such as images, videos, LiDAR, audio and text that quickly and securely allows to explore, search, sort and query your data by item info, label and metadata and to create and visualize datasets. Search, edit and query data by item info, metadata, annotation status and much more. Sort and filter your datasets, then automatically distribute items for annotation and QA


Details on tech stack
- Their core is based on NodeJs.

Min requirements to the candidate
- Frameworks :  Express.js Nest.js
- Architecture : MicroServices
- Databases: MySQL, SingleStore, MongoDB
- At least two years’ experience as a Node.js developer.

Nice to have requirements to the candidate
- Nice level of English, the client is quite sensitive to this.
Proven experience working with systems that can handle high load
OR
Proven experience working with Kafka/Redis, working with ETL (we may call it big-data)

Current team size:
- 3 people (3 senior developers)

What tasks the candidate will work with?

Refactoring & Cleanup
Keep code clean and  simple
- Making isolation in unit testing possible/easy
- Explicitly defining dependencies of a class and avoid mixins
- Use frameworks and libraries whenever possible (NestJS, Auth)
- JSDoc as needed to cover critical parts

Code Modularization
Separate responsibilities
- Avoid tight coupling between components.
- Scale and deploy applications independently
- Enable some modules to be deployed as serverless services
- Event Driven Architecture
- Reactive architecture

Event collaboration and event sourcing patterns
- Better scalability and batching capabilities
- Better responsiveness, flexibility and resiliency

- Work with demanding client, in a fast rhythm.