Context
Short engagement at a consultancy. The client had a growing Kotlin microservices footprint on EKS deployed via hand-crafted shell scripts in CI. No rollback story, no drift detection.
What I did
- Introduced ArgoCD with Application-of-Applications pattern for managing all services from a single GitOps repo
- Instrumented services with Datadog APM — traces, logs, and JVM metrics correlated in a single pane
- Wrote Helm chart templates for the Kotlin services, standardizing resource limits, probes, and environment injection
Datadog integration
The JVM agent via JAVA_TOOL_OPTIONS env var into the container spec, Datadog Agent as a DaemonSet with log collection enabled. Service map came up automatically once a few services were instrumented.
Outcome
Deployments went from a 20-minute CI process with manual approvals to sub-3-minute ArgoCD syncs with automatic rollback on health check failure.