We are looking for a Node.js Developer responsible for managing the interchange of data between the server and the users. Your primary focus will be the development of server-side logic, definition, and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements built by your co-workers into the application. Therefore, a basic understanding of front-end technologies is necessary as well.
- Design and build REST API using modern technology stack.
- Integration of user-facing elements developed by front-end developers with server side logic
- Writing reusable, testable, and efficient code
- Design and implementation of low-latency, high-availability, and performant applications
- Implementation of security and data protection
- Integration of data storage solutions: MongoDB Atlas, Redis, AWS Elasticache
- Perform DevOps activities to support CICD platform.
- Facilitates design and technical meetings. Provides technical documentation to internal business and design teams.
- Follow designated development methodologies and processes.
- Implements enterprise policies for security and confidentiality at the system and inter-system level.
- Provides systems support during special events such as critically important system upgrades, software deployment on cloud, SSL certificate renewal, integration platform upgrades, new application go-lives, application failover exercises and disaster recovery drills.
- Knowledge of Node.js and frameworks available for it
- Understanding the nature of asynchronous programming and its quirks and workarounds
- Basic understanding of front-end technologies, such as HTML5, and CSS3
- Knowledge and understanding of best security practices
- User authentication and authorization between multiple systems, servers, and environments
- Integration of multiple data sources and databases into one system
- Understanding fundamental design principles behind a scalable application
- Understanding differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform
- Creating database schemas that represent and support business processes
- Implementing automated testing platforms and unit tests
- Proficient understanding of code versioning tools, such as Git
- CI/CD experience
- Express, Mongoose, AWS S3, SNS, SQS, Webhooks, OAuth2
- Experience developing REST APIs