Project overview
The Angular UI project required an efficient deployment pipeline to manage application code and infrastructure across multiple AWS accounts. Using AWS CDK allowed the team to automate deployments and reduce manual work from the start.
Challenges
- Complex deployment management: Deployments across multiple environments and AWS accounts took too much time.
- Multi-account environment complexity: Bootstrapping new accounts and creating sandbox environments involved manual steps, causing delays.
- Developer collaboration: Developers needed a consistent way to deploy application and infrastructure code without in-depth AWS expertise.
Proposed solution & architecture
Unified Techs created a CI/CD pipeline using AWS CDK and TypeScript. This setup deployed both Angular application code and infrastructure components such as S3 buckets, Lambda functions and CloudFront distributions.
CI/CD pipeline creation — Bitbucket Pipelines and AWS CodeBuild
- Pipelines in Bitbucket managed the build and deployment of the Angular app.
- AWS CodeBuild handled infrastructure deployment via AWS CDK.
Infrastructure as code with AWS CDK
- Developers defined infrastructure in TypeScript, a familiar language.
- This made it easy to create and adjust resources like S3 buckets, Lambda functions and CloudFront distributions.
Multi-environment management
- Developers could deploy from any branch to any environment.
- The pipeline automated bootstrapping of new AWS accounts and sandbox creation, speeding up multi-account setup.
Seamless developer workflow
- Defining infrastructure in TypeScript allowed developers to update application and infrastructure code easily.
Metrics for success
- Deployment speed: Reduced deployment time by 60%.
- Onboarding efficiency: Bootstrapped new accounts and created sandbox environments in under 15 minutes.
- Developer productivity: Increased by 40% through familiar tooling.
- Reduced errors: Deployment errors dropped by 80% thanks to automation.
Lessons learned
- Unified pipelines simplify complexity: Combining application and infrastructure deployments in one pipeline reduced overhead.
- Familiar tools enhance efficiency: Using AWS CDK with TypeScript improved developer confidence and productivity.
- Automation enables scalability: Automating account bootstrapping and sandbox creation supported a scalable multi-account architecture.


