Sr. Software Engineer/Team Lead - Nodejs
Brief description :
- 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, highly available, and performant scalable applications.
- Implementation of security and data protection.
- Deployment of application to production environment.
- Integration of data storage solutions such as MySQL, PostgreSQL, MongoDB and other similar platforms.
- Working with Business development team in Requirement gathering, Requirement analysis and effort estimations for business proposals.
- Must be a good team player.
- Interaction with our customers and discuss projects in detail with the stake holders.
- Must have ability to understand business requirements and translate them into technical requirements.
- Create and maintain the technical documents.
- Create and maintain the test cases related to the new enhancements and bug fixes.
- Provide timely support to the users.
- Must be able to lead and guide.
- Will have to work with Design Team, QA for the timely delivery of the projects.
- Knowledge of Node.js and frameworks such as Express, StrongLoop, Koa.
- Familiarity with RESTful APIs building.
- Good understanding of the MVC Architeture, RESTful API, Microservices.
- Deploying application to production level within AWS/ Azure/ VPS, Docker, Travis or similar is MUST.
- Knowledge in Cryptocurrency, Ethereum/Geth is an added advantage.
- Understanding the nature of asynchronous programming and its quirks and workarounds.
- Good understanding of server-side templating languages .
- Good understanding of server-side CSS preprocessors .
- Basic understanding of front-end technologies, such as HTML5, and CSS3.
- Understanding accessibility and security compliance.
- User authentication and authorization between multiple systems, servers, and environments.
- Integration of multiple data sources and databases into one system.
- Database proficency is MUST
- 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 is MUST.
- A knack for benchmarking and optimization.
- In depth knowledge and experience in Angular 2/4/5 Or React is a plus , proficiency level will be an added advantage.