DevOps · AWS

Pharma enterprise customer (AWS CDK platform): Multi-Account AWS CDK Platform for Pharma SaaS case study

All the infrastructure as code for a pharma enterprise customer's workflow SaaS: separate dev, stage and prod AWS accounts, cross-account CodePipeline deploys from a tools account, a separate compliance API stack and Langfuse LLM observability on Azure Container Apps via Bicep, across six repositories.

Tech Stack:AWS CDK (Python)AWS LambdaAWS CodePipelineAWS AgentCoreAzure Container AppsBicepLangfuse

The Problem

The customer sells an invite-only workflow SaaS to pharma companies, so every environment has to be isolated, repeatable and reviewable. Changes had to move from development to production through the same pipeline, and the compliance layer had different requirements from the main application.

The Solution

Apex36 has built and run the customer's infrastructure since July 2024, all in Python AWS CDK. Dev, stage and prod live in separate AWS accounts, and CodePipeline in a central tools account deploys into each through cross-account roles.

Lambda functions and layers serve the backend, the compliance API is a separate CDK app so it can follow its own rules, and an AWS AgentCore stack supports agent work. LLM observability runs on Langfuse, deployed to Azure Container Apps with Entra sign-in through Bicep.

Features

Multi-account AWS

Dev, stage and prod isolated in separate accounts.

Cross-account CodePipeline

One tools account deploys to every environment.

Compliance API in its own CDK app

Separated from the main stack for its own requirements.

Langfuse on Azure via Bicep

LLM observability with Entra sign-in.

Six infrastructure repositories

With code owners and architecture documentation.

Results / Impact

Six infrastructure repositories

run as one platform since 2024.

Every environment as code

created and changed through the same pipeline.

Dual-cloud setup

AWS for the product, Azure for LLM observability.

FAQ

Separate accounts isolate environments at the strongest boundary AWS offers, so a mistake in development cannot touch production data. A central tools account deploys to each through cross-account roles.

Langfuse was deployed to Azure Container Apps with Entra sign-in, provisioned through Bicep, as a separate observability layer for every LLM call.

Apex36, on a yearly contract with the pharma enterprise customer since July 2024.

Ready to build something impactful?

Let's discuss your project and how we can help you ship faster and smarter.

Book a Free Strategy Call