Sanitized labs & case studies · no company IP

Projects

Independent labs and sanitized write-ups of patterns I use in production work — each one framed as problem → approach → result, with real company specifics stripped out.

// containers

ECS Fargate microservice (lab)

Problem: deploy a containerized app on AWS without managing servers.
Approach: ECS Fargate + Terraform for IaC + GitHub Actions for CI/CD.
Result: fully automated, scalable container deployment.

AWSECSDockerTerraformGitHub Actions

Open lab write-up →

CI/CD for containers

Approach: GitHub Actions workflow to build, scan, and deploy Docker images to ECR and ECS.
Result: automated image build and deployment pipeline with a security scan gate.

DockerECRTerraformSecurity

// production platform delivery

Production web platform delivery

Context: short-term contract to take a web platform from initial setup to production operation.
Responsibilities: designed CI/CD, configured domain and DNS records, deployed on Vercel with environment isolation, configured transactional email with Resend, and managed secrets and environment variables.
Result: a production-ready platform with repeatable deployments and an operational handover.

VercelCI/CDDNSResendSecrets Management

// serverless & integration

Event-driven serverless (Lambda + Step Functions)

Approach: API Gateway → Lambda → Step Functions with DynamoDB and CloudWatch.
Result: scalable, pay-per-use workflow with clear step-level observability.

LambdaStep FunctionsAPI GatewayDynamoDB

IoT telemetry ingestion

Approach: IoT Core → Lambda → S3 + DynamoDB for storage; CloudWatch for monitoring.
Result: a reliable telemetry pipeline for edge/IoT devices, the same pattern behind the resilient MQTT-to-S3 pipeline I run in production.

IoT CoreLambdaS3Kinesis

// infra automation

Packer + AMI build pipeline

Approach: Packer templates for secure, versioned AMIs integrated with Terraform.
Result: consistent base images across environments, fewer "works on one box" surprises.

PackerAMIEC2Terraform

Terraform AWS modules

Approach: modular IaC for VPC, ECS, and IAM roles.
Result: faster, reusable deployments and less copy-pasted infrastructure between environments.

TerraformAWSModules

// robotics labs & releases

Indoor and outdoor robotics simulation lab

Approach: Docker Compose-based simulation with deterministic and realistic modes, configurable indoor and outdoor environments, arena scenarios, and MQTT robot-state topics.
Result: repeatable end-to-end testing for multi-robot behavior, deployment configuration, and operator workflows before field qualification.

Docker ComposeSimulationMQTTE2E Testing

Field system release mechanism

Approach: OCI images pinned by digest and Git SHA, target-specific manifests, release-candidate identifiers, physical qualification evidence, and automated release commands.
Result: traceable, reproducible releases with offline-aware activation and last-known-good recovery for deployed field systems.

OCIGitHub ActionsRelease ManifestsOffline First

// data & identity

Oracle → AWS migration

Approach: AWS DMS for migration, schema conversion, and validation.
Result: low-downtime, secure cloud migration off an on-prem Oracle database.

OracleAWS DMSRDS

Azure AD integration

Approach: Azure AD (Entra ID) SSO and OIDC-based access provisioning for identity management.
Result: unified, least-privilege identity across platforms — the same pattern implemented at enterprise scale for Bayer.

Azure ADSSOOIDC

// contact