Job Summary
A Principal Software Engineer for Node and React is an associate at Creative Chaos who is mainly responsible for developing server and client applications for various software platforms including but not limited to writing Restful APIs and developing front-end interfaces for the web. A principal software engineer makes sure that the functionality, security, and performance of the application is as per the design and is completely bug-free. Principal engineers are responsible for mentoring their juniors and building team strength through training.
Duties & Responsibilities
- Analyze business requirements
- Estimate assigned tasks
- Write code and unit tests
- Collaborate with other team members
- Tune your code for enhanced security and performance
- Maintain systems by fixing any existing issues
- Update issue tracking software
- Provide status updates
- Communicate with the client
- Control versions of your code
- Research new technologies
- Lead a team of software engineers
- Mentor team members through training and guidance
- Upgrade skills and knowledge
- Evaluate candidates for open positions
Requirements
- Minimum Bachelors in Computer Science/Software Engineering or equivalent.
- Minimum 8 years of related experience in the professional industry
- Strong communication skills
- Strong proficiency in Javascript and Typescript.
- Knowledge of NodeJS and its available frameworks such as ExpressJS and NestJS
- Knowledge and experience in writing backend components and Restful APIs
- Experience with different relational and schemaless databases such as MySQL, PostgreSQL, and MongoDB
- Knowledge and experience in developing user interfaces with HTML and CSS
- Knowledge and experience in developing applications with ReactJS, Redux and Context
- Knowledge and experience of design systems such as Material-UI or Atomize etc. Understanding of security standards and compliances
- Creating a database structure for the required functionality
- Experience with writing unit tests and ensuring the minimum 90% test coverage
- Knowledge of and experience with Github, JIRA and other collaboration tools
- Understanding of fundamental concepts and design principles
- Basic understanding of front-end technologies
- Flexible attitude and versatile personality
- Strong presentation skills
- Strong influence among team members