DevOps helps us ship and operate the Agile way
DevOps principles and practices underlie everything we do
Whether the team is undertaking new development, making application updates or developing new tests, DevOps is there. That starts with automating the build and letting the (cloud) machines do the work. This takes the “one person who knows how to build that app” out of the equation and guarantees a consistent and reliable build process.
Next comes software deployment through automated pipelines (initiated by a successful build!) and testing. Discrete rules mark acceptance at gates, subsequently passing or failing the pipeline. That means the adoption of mainline development in a distributed repo and active use of feature flags to separate deployment from release.
Our key DevOps elements
DevOps encompasses a broad range of specialties while fitting into value chains of software development and business planning. The following are the core components MercuryWorks applies when building software.
Cloud resource engineering, IaaS vs PaaS strategy, choosing the ideal cloud, infrastructure sizing and high availability (HA) planning
Implementing infrastructure as code with versioned scripts, automating software builds and implementation of data migration scripts
Automated testing built into the deployment pipeline, unit, integration and functional testing, quality checks and conditional/gate failures
Where the continuous delivery rubber meets the road, on a successful build then an actual automated deploy to cloud infrastructure along with verification
Ongoing monitoring, automated monitoring with triggered alerts, auto-failovers, auto-scaling and consumption observation to feed right back into the next Plan
Make Agile real, continuously deliver working software.
DevOps-driven continuous delivery makes it possible to gain frequent feedback from users during development. Continuous deployment of each vertical slice user story lets our clients and their users view and guide incremental Agile work.
Continuous delivery enables MercuryWorks Scrum teams to truly develop and refine against user intent and not just a static set of requirements.
With DevOps MercuryWorks teams bring these three core Agile principles to life:
- Satisfy the customer through early and continuous delivery of valuable software
- Develop working software frequently
- Business people and developers must work together daily
MercuryWorks DevOps in the real world
In multiple applications for Coca-Cola MercuryWorks staff automated cloud asset creation, web and native app builds and automated releases.
The One World Site Alliance application posed the need to serve a global audience – so we deployed to multiple global cloud locations for maximum performance and availability.
Franklin Street’s enterprise software serves a large user base with rapidly-changing features. We applied feature flags to separate release from deployment and control feature access.