Full Stack Engineer
Summary
Builds and operates cloud-based applications end to end: developing React/TypeScript frontends with Python backends, provisioning AWS infrastructure via Terraform, and setting up GitLab CI/CD pipelines with monitoring, security, and government-compliance standards in mind.
Full Stack Engineer
Objectives and Responsibilities
- Understand business requirements and translate them to fit-for-purpose solutions
- Review existing cloud systems and solutions to identify areas for improvement
- Set up and configure repositories for multiple systems
- Migrate existing systems to other environments
- Establish DevOps pipelines including testing, scanning, and CICD
- Provision and manage AWS cloud resources to support application deployment and scaling
- Implement IaC using Terraform for consistent and reproducible deployments
- Integrate backend systems and APIs with frontend application
- Integrate applications with external authentication systems with secure authentication flows
- Implement security best practices throughout the development lifecycle
- Design interfaces with external systems
- Develop and review application code
- Implement solutions for observability, monitoring, and fault-tolerance
- Ensure applications comply with government security policies and standards
- Document architecture and design decisions
Required Skills and Experience
- Hands-on experience with AWS cloud services
- Experience with Infrastructure as Code tools, particularly Terraform
- Knowledge of DevOps practices and CI/CD pipeline setup, preferably GitLab
- Proficiency in Python, Typescript, React
- Experience with software engineering and system design
- Experience with implementing best practices for system security
- Experience in observability technologies
- Experience with developing and understanding architecture diagrams
- Strong problem-solving abilities and attention to detail
- Ability to work collaboratively in a team environment
- Good communication skills for technical documentation and stakeholder interaction
- Adaptability to work with evolving requirements and technologies
- Experience designing or contributing to identity systems
Preferred Qualifications
- Bachelor’s degree in computer science, software engineering or a related field