Job Brief Summary
We are looking for qualified developers who will be responsible either to develop a new website or maintain an old website built in NodeJS / MEAN / MERN technology stack.
Knowledge of Node.js and frameworks such as Express.js, Sails.js, Socket.io, Strong Loop, Meteor.js, Koa.js, Hapi.js, React.js & Angular is a must.
Roles & Responsibilities
Tasks & Activities
Requirement gathering from Business / Stakeholders Discussion with the client / business team to understand their requirements.
Ask relevant questions to clarify the business requirements. If needed, document the business rules.
Estimations & Task Planning Divide the project into modules and tasks based on the business requirement or SRS. Estimate time for the modules / tasks based on different estimation techniques.
Prepare project plan and WBS which will have each module and tasks with specific start and end date. Seek approval from all the stakeholders on WBS and prepare the project plan accordingly.
You should be well-versed with the project management tool.
Database creation & updating custom modules Identify the modules / tasks and prepare the database designs using MySQL Workbench.
Discuss the same with the team members and seek approval from stakeholders.
Coding, Debugging, Unit Testing & Documentation of Code and Application As per the best standard practices and guidelines, code each module within the timeline mentioned in WBS.
Debug and unit test the code / module. Ability to write testable codes and handle various testing tools. (Example : Jest / Jasmine / Mocha and test runner like Karma / Chutzpah).
Use appropriate versioning tools like GIT, SVN, etc. Document the code and application which later can be shared with the client.
Prepare the user manuals for custom module / code which needs to be shared with the client and used for training purposes as well.
Optimize the website after checking through benchmarking tools like www.gtmetrix.com or Google Page Speed. Experience on Angular or React JS is a plus.
Understanding the nature of asynchronous programming including its quirks and workarounds. Perform user authentication and user authorization between multiple systems, servers, and environments.
Understanding the differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform.
Project Deployment & Maintenance Check all the deployment checklist before putting anything on production. Update the security patches whenever those are available.
Mandatory Skills & Knowledge
Minimum 2 years of development experience in NodeJS / ExpressJS and MongoDB.
Hands-on experience with ES6 / ES7 / ES8 features.
Thorough understanding of the Request Lifecycle (including Event Queue, Event Loop, Worker Threads, etc).
Familiarity with security principles including SSL protocols, data encryption, XSS, CSRF.
Expertise in Web Services / REST APIs will be beneficial.
Proficiency in Linux and deployment on Linux are valuable.
Knowledge about ORM like Sequelize and ODM like Mongoose and the ability to handle DB transactions is a necessity.
Experience with Angular JS / React JS will be an added advantage.
Expertise with RDBMS like MySQL / PostgreSQL will be a plus.
Knowledge of AWS services like S3, EC2 will be helpful.
Understanding of Agile and CI / CD will be of value.
Technologies / Frameworks / Tools / Proficiency
Database : MongoDB, MySQL.
Tools : Git.
What's in it for you?
Opportunity to grow and scale high with us.
Work in a fun and transparent atmosphere alongside a collaborative team.
Guidance and support from the senior staff for your growth.
Competitive salary with benefits.