About the project
The project and the team
In the project, you will be engaged in the development of a cybersecurity product (XDR) for a large corporation. The product goal is to provide a SaaS platform that integrates EDRs customers use and manage the actions related to the cybersecurity area. Users of the application can trigger, show and manage unexpected incidents. The project has an in-house AI engine that provides data about potential threats. The core application is hosted in Azure Cloud. CodiLime started its contribution to the project in November 2021.
The project is part of the client’s company business, so you can touch the money-spinning product, which is a complex solution. Our part of the work is to provide well-developed solutions in every aspect of the development - architecture, features, tests, releases, maintenance, and documentation for the backend and frontend parts.
What else you should know:
In the project, we have
7 Full-stack Engineers
3 Frontend Engineers
1 UX Designer
2 QA Engineers
1 Solution Architect
2 Product Owners
The designs are provided in Figma.
We keep Unit Tests coverage at 80% for the frontend and backend. Unit Tests are written in Jest and RTL.
Integration and Component tests are written in Playwright.
The vast majority of the API is in Apollo GraphQL, but there are several REST API endpoints also.
The backend architecture is based on microservices in Azure App Service - experience is a substantial benefit, but you can learn this approach in the project.
We are looking for an experienced person with Node.js knowledge to join the team. You will have the support of the principal architect of the solution on a daily basis.
The work environment is open to suggestions, and actively listens to every team member. So, your opinion really matters. Moreover, we have common meetings to discuss API, designs, and architecture to prepare the product for potential scalability.
Your project manager will help you to build transparency between developers and stakeholders and to write down plans with estimations.
The client is based in Sweden, so do not worry about late working hours. Meetings are conducted in Central European Summer Time (GMT+2). By this time, only the PM and two team leaders had meetings in the late hours. The Development Team did not need to join them.
We work on multiple exciting projects at the time, so it may happen that we’ll invite you to the interview for another project, if we see that your competencies and profile are well suited for it.
Your responsibilities
Mainly backend features development in the stack: Node.js, GraphQL, microservices
Frontend features development in the stack: React, MobX, Apollo Client
Preparing Azure App Services (after 3 months in the project, when you will be ready)
Preparing data models to maintain the Database (Azure ADX and CosmosDB) properly
Building and maintaining CI/CD pipeline in GitHub actions related to the development and production Azure environments
Maintaining the quality of application - writing unit tests and component tests
Communicating with the developers and cooperating with them
Providing code review for PRs raised by other team members
Maintaining the project documentation in Confluence
Being proactive and motivated to deliver :)
Our requirements
Strong experience with Node.js and TypeScript
Strong experience with microservices architecture
Experience with designing and documenting API
Experience with NoSQL databases (e.g. MongoDB, CosmosDB)
Experience with React.js
Good understanding of the Serverless approach (Azure solutions preferred)
Experience with CI/CD pipelines
Good knowledge of at least one unit or integration testing tool (e.g. Jest, Playwright)
Good knowledge of English (B2+ level)
Optional
Good knowledge of GraphQL and Apollo Server
Experience with Azure Cosmos DB, Azure Data Explorer (ADX), or Azure API Management
Experience with GitHub Actions
Knowledge of one-way data flow architectures (Flux, Redux etc.)