Split deploy config out of the service binary into a runtime datastore, so teams change project settings without shipping a build — validation and review still in place.
Operational config shouldn't need a redeploy. At Credit Karma I split deploy configuration out of the service binary so teams could change project settings at runtime, with validation and review still in the loop.
Before this, config was baked into the binary. Flipping which projects showed in test versus production meant shipping a build. I moved that into a key-value datastore with a local cache and live watchers, so a running service picks up a change without restarting. Edits still go through git — a CI job diffs the change, validates it, and opens a change request — so every flip has a trail.
Highlights
- Config moved out of the binary into a key-value datastore with a local cache and watchers
- CI job that diffs each change, validates it, and opens an auditable change request
- Runtime cache refresh, so a change propagates without a redeploy
Why it mattered
"Hide this project in test, show it in prod" stopped being a deploy and became a reviewed one-line change. The redeploy toil went away, and because everything routed through git and CI, each change kept a validated, auditable trail instead of becoming untracked drift between environments. It was part of the Frontend Platform tooling at Credit Karma.