NodeJs Engineer
About the Opportunity
Caveonix is currently seeking a software engineer who has experience building back-end services and managing data exchange between the server and user-facing applications. Responsibilities will include the development of back-end logic, definition and maintenance of the database and maintaining the best possible performance, quality and responsiveness of the application. You will work closely with the front-end developers in order to implement their components into the application
Responsibilities
- Creating and maintaining server-side application logic
- Write high quality, readable and testable code
- Design and optimize applications for high performance, high availability and low latency
- Work closely with the product team to make sure requirements can be delivered timely
Qualifications
- Have a deep understanding of JavaScript and working knowledge of TypeScript
- Good understanding of Node.js and the most common packages in the ecosystem (Express.js, Sequelize ORM, Mocha.js)
- Confident with asynchronous programming concepts and how to use them pragmatically from Javascript (Async/await, Promises)
- Working knowledge of node.js package management (NPM) and the tools ecosystem
- Strong understanding of REST
- Ability to model and apply authorization and permission control between users, systems and services
- Familiarity with how to create scalable Node.js applications
- Proficiency with databases and pragmatically modelling business processes through schema
- Understanding of automated unit tests, testing platforms (Mocha.js), and how to implement and integrate them
- Thorough knowledge of code versioning tools tools such as Git