
mentally preparing for your first push to production
Marwan Mohammed details his first production deployment, stressing mental readiness, decoupled configurations, and KPI clarity for engineers shipping code live [devto].
Marwan Mohammed recounts his first production deployment, framing it as both a technical and psychological milestone [devto]. He stresses that engineers must decouple container configurations, environment variables, dependencies, and artifacts from their local machines to ensure portability and reproducibility. A senior engineer should supervise the rollout to handle unforeseen failures, especially when deploying machine learning models, which introduce new attack surfaces and demand explainability and observability [devto].
Mohammed recommends starting with isolated, well-bounded services to safely learn the deployment pipeline. Before hitting merge, engineers must understand the service’s real-world application and its true KPIs—not vanity metrics like request volume, but outcomes tied to user impact or business goals. He notes that confusion over these metrics leads to misaligned systems and reactive firefighting.
The article stands out by treating mental preparation as non-negotiable. Shipping to production isn’t just about passing tests; it’s about accepting that real users, infrastructure quirks, and cascading failures are now in play. That shift demands discipline in documentation, rollback planning, and emotional resilience. One misconfigured environment variable in production can cascade into downtime—something local testing rarely catches.
His experience underscores a broader gap in engineering onboarding: teams train developers to write code but not to ship it. Production isn’t an extension of staging—it’s a different environment with different stakes. Assuming otherwise is a recipe for stress and outages [devto].
Subscribe to the broadcast.
Daily digest of the day's most important tech news. No fluff. Engineering signal only.
// delivered via substack · double-opt-in confirmation


