Release Managers — The Unicorns of Continuous Delivery
Good release managers are elusive, special and have magical management powers. However, like unicorns, good release managers can often be hard to find. So how exactly can companies looking to hire a magical release manager to ensure they find the right person and give them the environment and tools to work best? Let’s start with the basics.
What Is a Release Manager?
Release managers are generally responsible for herding the various groups of developers, operations, and projects together into one cohesive schedule that takes resources, end goals and companywide timelines into consideration. Specifically, they own the release management lifecycle, including scheduling, coordinating and overall general management of application delivery starting from project inception all the way into production. They must do this across the entire enterprise portfolio. In the enterprise, each release is comprised of a few hundred concurrently running projects with a mix of vendor teams, geographically dispersed development and test, development methodologies, hybrid cloud, and a mix of virtualized and physical infrastructure. They have to work collaboratively with all participants, coordinating dependencies between projects and schedules with related preproduction environments for development and testing efforts.
And as if this wasn’t quite enough, beyond the lifecycle itself, release managers are responsible for reporting to and updating higher-ups in the company, such as IT senior leadership, CIOs and CTOs, as well as business leaders outside of the IT organization. Now imagine their world of what happens when there are the inevitable project delays, scope changes, environment outages, or critical bugs.
What this boils down to is an effective release manager must have an in-depth technical knowledge and be a master of the organization — see, a total unicorn. The combination of these skills will enable them to work with a variety of teams and people while also overseeing technical aspects of the release lifecycle. Additionally, they need to be capable of up-leveling all this information into a presentation or report for both IT and business senior team members.
Once you’ve found your unicorn, how do you ensure the process is running smoothly and providing real business benefits?
Release Management Best Practices
The release management process is a critical bridge between development and testing/production that’s in place to ensure capabilities of the service expected by stakeholders are achieved. The itSMF ITIL V3 framework provides a general outline of best practices for release management, which can then be tailored and adjusted to meet a specific organization’s needs, including:
- Release planning: Release managers design and formally approve release policy guidelines that not only contain the governance aspects, but also the detailed process designs for implementing releases across the organizations.
- Build and configure releases: In this phase, release managers oversee the major aspects of the coding side of the story — everything from the building of the code, to initial testing to ensure build integrity, and finally delivering it in target environments. Release managers are there to make sure all the teams are on the same page and staying on track to meet the agreed upon goals. Project challenges often arise when applications are tested against test environments that don’t match the target production — don’t skip this step.
- Quality review: Release managers need to ensure that QA teams review the quality of the release, making sure that it meets minimum acceptable standards and business requirements. They typically assess historical track records of projects cross-referenced with the criticality of the functionality to decide where to focus their time.
- Rollout plan: Once a release has been accepted by the QA team, it is ready for deployment in the production environment, where end-users or customers will be able to access the new capabilities released. Release managers are here to ensure a smooth rollout from internal to customer-facing. Cutover and go-live planning should include approvals.
- Implement release: In this phase, the release units that were tested in the testing stage of SDLC are deployed in Production environments for live or real-time usage. Release managers, again, are here to ensure a smooth transition to live usage and help monitor the release and make sure all continue running smoothly and bug-free.
By implementing the above — and other — best practices and guidelines, organizations can maximize the efficiency of the release process, as well as save money and improve the business value of services.
If you don’t have a true understanding of what a unicorn is, you may mistake it for a horse, or vice versa. The same idea applies to release managers. Many organizations aren’t hiring the right people as they don’t understand what exactly the role responsibilities are. When used correctly, though, release managers are wonderful, magical creatures that are crucial to an organization’s success.
Feature image via Pixabay.