Be an Architect in designing Web APIs using NodeJS.
Job Description / Duties and Responsibilities
- Proven Expertise in NodeJS, ExpressJS, ReactNative, NPM, bootstrap, webpack
- Proficiency in DBMS and ORM concepts.
- Expertise in developing NodeJS based APIs with RDBMS or NoSQL database back-end.
- Understanding the nature of asynchronous programming and its quirks and workarounds.
- Good understanding on NodeJS asynchronous runtime.
- Good understanding on JS concepts on callbacks and closures.
- Good working exposure consuming web services (REST) and processing data (JSON).
- Experience with SQLite, NoSQL, Redis or other databases.
- Experience in debugging issues related to memory leaks.
- Experience in building highly scalable and high throughput services with sub second response times.
- Very strong knowledge in object-oriented concepts & design patterns.
- Demonstrated willingness to develop with new/unfamiliar technologies.
- Understanding of different design patterns.
- Ability to integrate a variety of data sources and databases into a single system.
- Understands impacts of performance-based designs, accessibility standards and security compliance in development
- Proficiency when it comes to code versioning tools like GIT.
- Understanding of Unit Testing concepts and experience with Unit Testing tools like Jest.
- Experience in common third-party APIs (Google, Facebook, etc.).
- Passion for best design and coding practices and a desire to develop new bold ideas.
Job Specification / Skills and Competencies
- Take an Architect role in designing the system, reviewing the code of team members and ensuring first time quality of code.
- Work in a collaborative team environment.
- Communicate with customers to understand the requirements, to inform them the challenges, solutions and alternatives.
- Ability to understand and analyze issues across multiple vendors and interfaces.
- Meet project objectives, providing systems that operate in a cost-effective manner.
- Respond to problems in a timely, effective manner.
- Take part in DevOps and deployment activities.
- Work with key members of the management team to define and drive technical strategy.
- Troubleshoot, test and maintain the core product software and databases to ensure strong optimization and functionality.
- Contribute in all phases of the development lifecycle.
- Follow technology best practices.
Any Additional Information/Specifics
Customer Advocacy, Adaptability and Communication
- Strong communication with clear Technical vision, who can take a lead role in designing the system/architecture, ensuring first time quality of technical deliverables to the customers
- Be a customer advocate – Communicate proactively with customers to understand the requirements, to inform them the challenges, solutions and alternatives
- New horizons/ geographies, new ecosystems – should possess a commendable knowledge about the industry( if not – he/she should be able to acquire the required knowledge, and the customer needs quickly) to help/assist the team to set their directions properly
Solutioning, Integrations, and third-party liaising
- Propose technical solutions, act as customer advocate in discussions where brands/partners/third parties/other integrators involved
- Ability to validate Integration requirements (solutions based on SSO/Auth0/REST API etc) from multiple Integrators and assist in the Internal technical solutioning process
- Take ownership of technical requirements and validate the viability/feasibility in terms of its alignment with the product vision, Integration possibilities, and assist in detailing the requirements for the implementation.
Cross functional Teams – Technical Support
- Act as a SME for cross functional teams to sort out issues/problems that may arise, related to deployment activities, pipelines, branching, infrastructure decisions, security concerns/best practices, Implementation approaches, and standardisation of tools/technical processes within the project
- Work with key members of the management team to formulate and drive technical strategy.
Product Support and Internal Support
- Help to Troubleshoot, test and maintain the core product software to ensure strong optimisation and functionality
- Contribute in all phases of the development lifecycle and help the team to follow the technology best practices.