
Vocadian
Voice-AI fatigue assessment suite
Secrets moved to AWS Secrets Manager for SOC 2 compliance, GitHub Actions CI/CD shipping deploys ~50% faster, and 10+ databases migrated to RDS with zero data loss.
- 1GitHub ActionsCI workflow runs checks on the pushup next
- 2DockerFastAPI backend image is built and pushedqueued
- 3Alembic / RDSSchema migrations apply to RDS Postgresqueued
- 4AWS CDKPipeline deploys the service stack to the sandbox accountqueued
- 5ECS FargateNew tasks roll in, reading secrets from AWS Secrets Managerqueued
Each click completes the next stage of the push-to-deploy flow.
Synthetic walkthrough of a protected system: the stage and system names are the real pipeline shape from this card's audited stack, but every timing is invented (seeded, deterministic). No employer code, CI logs, or client data.
Synthetic walkthrough: real pipeline shape, invented timings. No employer code or client data.
DevOps engineering for a prior employer (Sep 2024 to Jun 2025). Product internals and client data are confidential, so the card covers the stack and the platform work only.
Request accessVocadian builds voice-AI fatigue assessment for safety-critical teams; Karim was its DevOps engineer from Sep 2024 to Jun 2025, and this card covers that estate. The suite is real, multi-part software: an Expo/React Native voice app shipped to iOS and Android through EAS with over-the-air updates, a Next.js dashboard for team management and safety messaging, and a Dockerized FastAPI backend that extracts features from voice recordings and scores them with a classical ML pipeline. Everything is defined in AWS CDK and deployed by pipeline onto ECS Fargate with RDS Postgres (Alembic migrations), storage and monitoring stacks, across separate sandbox and production AWS accounts. His work focused on that platform layer: migrating secrets into AWS Secrets Manager for SOC 2 compliance, building GitHub Actions CI/CD (~50% faster deploys), and moving 10+ databases onto RDS with zero data loss. Product science and client data stay confidential, so the card sticks to the stack and the role.
- Next.js
- TypeScript
- Expo / React Native
- FastAPI
- Python
- AWS CDK
- ECS Fargate
- RDS Postgres
- GitHub Actions
- AWS Secrets Manager
- Compliance
- SOC 2 secrets migration
- Deploys
- ~50% faster (GitHub Actions)
- RDS migrations
- 10+ databases, zero data loss
What I'd improve
The cross-account story is the honest gap: deployments and humans alike leaned on a shared administrative Control Tower role, which the infra docs themselves flagged as unsustainable. Next: least-privilege per-service IAM roles with short-lived credentials, so the SOC 2 posture rests on scoped access instead of one powerful role. The release flow also still required sandbox testing coordinated by hand in team chat; folding that gate into the pipeline would remove the last manual step.