I wrote the book on developer marketing. Literally. Picks and Shovels hit #1 on Amazon.

Get your copy
Engineering and DevOps

Production

proh-DUK-shun

The live environment where real users interact with the application.

Production (often called "prod") is the live environment where real users access the application with real data and real consequences. Every other environment (development, staging, testing) exists to protect production from bad code.

What happens in production matters most. Development bugs are inconveniences. Staging bugs are caught in time. Production bugs affect users, revenue, and reputation. This is why engineering teams build elaborate systems of testing, review, and gradual rollout: to minimize the chance that broken code reaches production.

"Works in production" is the only standard that counts. Code that passes every test but breaks in production is broken. Code that looks ugly but works reliably in production is correct. Production is the ultimate judge of software quality.

Examples

A deployment introduces a bug in production.

Error rates spike 5 minutes after deployment. The monitoring system alerts the on-call engineer. They check the dashboard, confirm the new deployment is the cause, and trigger a rollback. Production returns to the previous stable version within 3 minutes.

A team does production debugging.

A customer reports that searches are slow. The engineer checks production metrics and sees that p99 latency for the search endpoint is 8 seconds (normally 200ms). They trace the issue to a missing database index that was not caught in staging because staging had less data.

A feature flag controls production rollout.

A new recommendation engine is deployed to production but only enabled for 5% of users. The team monitors performance, accuracy, and user engagement for a week. Results are positive, so they increase to 25%, then 50%, then 100% over three weeks.

In practice

Read more on the blog

Frequently asked questions

What is the difference between production and staging?

Production serves real users with real data. Staging is a testing environment that mimics production. Changes go to staging first for verification, then to production. If something breaks in staging, no users are affected. If something breaks in production, users are affected.

Who has access to production?

Access should be limited. Most developers can deploy to production through CI/CD but should not have direct access to production databases or servers. Direct production access is typically restricted to on-call engineers and senior staff for incident response.

Related terms

Picks and Shovels: Marketing to Developers During the AI Gold Rush

Want the complete playbook?

Picks and Shovels is the definitive guide to developer marketing. Amazon #1 bestseller with practical strategies from 30 years of marketing to developers.