Chapter 21Delivering production-grade digital solutions
Until we have established reliability, there is no sense at all in wasting time trying to make the thing go faster.
—Carroll Smith
Transformative data products, AI models, and digital user journeys have got to be deployed to the people or applications that use them in a setting where it counts, like sales transactions, supplier management, and pricing decisions. Production environments need to be reliable and available. The reliability of this production environment is far more important than a discovery and development environment.
The platform engineering team is the one that creates this environment for all agile pods to deploy their products to. The team is responsible for the design, building, and governance of the infrastructure, the underlying tech stack, and the services, including integration with downstream systems. The environment conforms to the standards set out by the enterprise architecture team and should not be created manually but follow standard engineering practices. Whatever code agile pods want to deploy into a production environment must be deployed via the strict continuous deployment process.
There are three important aspects to creating a reliable and effective production environment, as discussed next.
Aim for a high degree of control and auditability
Given that the production environment serves business-critical applications, there needs to be a high degree of control and auditability. This ...
Get Rewired now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.