The environment manager’s job
As companies grow and change, moving away from top-down structures to empower cross-functional, independent teams, we see a shift in traditional roles. This includes the environment manager's role, which is adapting to these more modern and flexible ways of working.
Originally, environment managers handled everything about a system’s environment, assigned to specific projects or departments. However, as companies shift from project-based work to product or value stream-focused models, the duties of an environment manager are also changing.
Even though this is the case, the need for managing environments, understanding dependencies, and mitigating risks and exceptions hasn't disappeared. Here's how the role of the environment manager is evolving:
Then vs. Now
Managing Environments:
Then: The environment manager handled all environments.
Now: They guide teams in managing various environments within a value stream.
Provisioning Environments:
Then: They coordinated the provisioning of environments.
Now: Teams take charge, provisioning their own environments using Infrastructure as Code (IaC) in the cloud.
Environment Availability:
Then: The environment manager was responsible for ensuring environment availability.
Now: Teams manage their environments and use Site Reliability Engineering to maintain availability.
Coordinating Deployments:
Then: They coordinated all deployments.
Now: They're involved in or facilitate deployments at the team level.
Management Tools:
Then: Management was done through spreadsheets, emails, and in-person.
Now: The role requires CICD and additional technical skills.
Infrastructure:
Then: Primarily on-premise, occasionally using third-party services.
Now: Utilizing cloud, hybrid, and SaaS solutions.
Software Architecture:
Then: Monolithic and tightly coupled.
Now: Microservices-based and loosely coupled.
Team Structure:
Then: Centrally managed by a dedicated team.
Now: The role is integrated into teams, although there's still a central overview.
Release Frequency:
Then: Infrequent releases.
Now: Frequent and accelerated releases.
Testing:
Then: Primarily manual testing.
Now: A significant move towards automated testing.
In this evolving landscape, the environment manager's role is becoming more about guidance and support, helping teams to become self-sufficient in managing their environments, ensuring faster and more efficient workflows.