Provide APIs, backend services and frontend software by participating in all phases of the software development lifecycle, from design through implementation, testing and maintenance
Collaborate with product, design and software architects to incrementally deliver features that meet our internal and external customers
Ensure code quality, security, reliability, scalability and performance through testing, code reviews and adherence to best practices
Be an engaged and active team member: learn, mentor and be mentored, and contribute to team improvement through respectful discussions and decision-making
Participate in Scrum ceremonies, including daily stand-ups, sprint planning, retrospectives and reviews, to ensure continuous delivery and improvement
Participate in ongoing production system maintenance and support, including on-call rotations to ensure high availability and fast incident response
Requirements
Bachelor’s or Master’s degree in Computer Science, Computer Engineering or a related field, or equivalent professional experience
At least two years of progressive professional experience in full stack software development/engineering
Experience with a range of programming languages and full stack frameworks (e.g., JavaScript, Python, Java, C#, etc.)
Knowledge of relational and non-relational (NoSQL) databases
Experience with web frameworks and libraries (including React)
Understanding of cloud architecture, serverless computing and microservices, as well as containerization technologies such as Docker and container orchestration tools like Kubernetes or AWS ECS
Experience using, designing and implementing REST APIs
Skills and experience using design patterns and understanding the fundamentals of sound software architecture
Experience implementing and maintaining automated testing processes to ensure code quality
Experience with multi-repository GIT codebases, testing frameworks and automated CI/CD pipelines
Experience with Agile/Scrum methodologies is preferred
Strong problem-solving skills and the ability to work in a collaborative environment.