Develop high-quality, scalable, secure, and stable code for use in products and solutions for customers, making it easier for other developers to maintain, enhance and reuse
Develop and maintain Unit Tests, participate in automation and regression testing
Ensure new code follows best security practices
Document new code and features developed, including changes to existing code
Write and present code design specifications
Participate in code reviews to ensure new code conforms to standards
Interact with customers to identify and resolve product defects; work directly with business people daily
Ensure new code, feature, or software product meets performance goals/metrics
Research and resolve defects logged by customers or QA and document all changes made
Understands, embraces, and promotes agile methodologies, principles, and values within the team.
Participate in team retrospectives and feedback loops to improve on future iterations
Work with Product Owner and/or Product Manager/Team to understand and help refine functional requirements for new products or upgrades and have a clear understanding of what definition of “done” is
Mentor and provide direction to less experienced software engineers regarding company development processes and product architecture, at senior levels
Develop depth in at least one technical area, but breadth in numerous areas to be a greater asset to the team
Requirements
Bachelor’s Degree in Computer Science, Engineering, Information Technology or related
Minimum 5 years of full-stack software development experience
Experience with Python, JavaScript, ReactJS, AngularJS, RESTful and GraphQL API development
Experience with using databases MySQL, DynamoDB, etc.
Working knowledge of AWS technologies e.g., S3, EMR
Working knowledge of Big Data Technologies like AWS-Kinesi, Kafka, Snowflake etc.
Excellent analyzing and problem-solving skills
Team player attitude with a willingness to lead when necessary
Ability to document requirements and specifications