Building Containerized Environments in a Legacy Enterprise
Introduction
At Monks, we recently completed an exciting project for a prominent player in insurance and real estate, during which we embarked on the journey of modernizing a top enterprise's legacy platform. This customer sought to modernize operations by transitioning to a containerized environment. Our collaboration aimed to streamline their infrastructure, enhance scalability, and improve overall system performance, cementing their position as industry leaders.
When the customer contemplated launching new features, they hesitated, envisioning timelines spanning years; previous attempts had indeed dragged on due to a sluggish development process from conception to production. This hesitation was rooted in the same complicating factors that plagued their past projects—diverse challenges that required our team to address multiple areas simultaneously. Compounding these issues was a reliance on manual intervention by SMEs for infrastructure management and the absence of best practices, which continued to impede progress and prevent them from leveraging the efficiencies of infrastructure as code.
To support this initiative, Monks developed a thin, streamlined platform that made it easy to quickly spin up and deploy new applications to the cloud using Kubernetes. We created ready-to-use templates for the most common languages and frameworks used by our customer’s teams and integrated everything into continuous integration pipelines. This ensured that all standards and compliance requirements were consistently met, with everything managed within a central infrastructure project built with Terraform, which simplified the entire process.
Join us as we share how we overcame challenges, deployed strategies, and empowered developers to deploy applications more efficiently at scale.
The Challenge of Change: Overcoming Resistance and Fear
At the heart of any structural transformation for legacy enterprises lies a desire for change, often hindered by fear of the unknown.
At Monks, our approach to the technical DevOps implementation for our customer, a legacy enterprise, began with an in-depth analysis of their existing infrastructure. During the discovery phase, we meticulously examined their established systems, network architecture, and software dependencies. From there, our team identified key areas where modern DevOps practices could deliver rapid, high-impact optimizations. We targeted critical systems that formed the backbone of the customer's operations, including: team structure, workflow processes, communication channels, geographic distribution, and organizational culture, as well as specific technical implementations and legacy technologies.
A crucial aspect of our strategy was launching small, targeted POCs focused on critical systems. These served as practical demonstrations of the efficacy of containerization and modern DevOps practices, which delivered tangible results in a short time frame. Beyond validating our strategy, these POCs helped build trust with our customer, a key indicator of success as consultants.
The discovery process revealed many opportunities across a variety of areas, such as release process and infrastructure management, developer experience, and cost savings as a by-product of increased efficiency in these domains.
Streamlining Slow and Lengthy Processes
In legacy enterprises, slow and intricate approval processes often impede progress. In our work with the customer, we prioritized building strong relationships with our counterparts, ensuring we had advocates on their side to help navigate and overcome approval or process blockers smoothly.
In each phase, and with them, each change, it was imperative to understand the underlying reason(s) behind each process requirement. In some cases, what appeared to be a stringent policy was, in reality, a poorly designed process or one with a subpar user experience—often left unchallenged for years. This insight revealed significant opportunities for the customer to enhance efficiency and improve overall workflow.
By automating several processes that previously required manual interventions for approval through CI pipelines, the customer was able to significantly shorten the average time to complete tasks. This also eliminated the need for manual checks that could be performed automatically, further streamlining their approval processes and boosting operational efficiency.
What Did We Do
This customer, like many large enterprises, faced the challenge of maintaining agility during periods of growth. After thorough investigation of their challenges, we collaborated on the development of a vision and milestones necessary to achieve it. The customer had several non-negotiable goals:
- Simplify DevOps for Feature/Development Teams: Enable feature and development teams to focus on their core work without requiring deep DevOps expertise. A streamlined platform allows solutions to be deployed across various environments with only basic DevOps knowledge.
- Eliminate Direct Infrastructure Access: Establish a system where no individual needs to directly access any part of the infrastructure, ensuring a more secure and efficient environment.
- Leverage containers: Utilize containerization as a key vehicle for modernization. (This was a specific request from their new VP of Engineering!)
With these directives in mind, we immersed ourselves in the work, partnering closely with the customer to ensure a collaborative approach on a bespoke solution.
When engaging in these discussions, starting with best practices and industry standards as a foundation, then adapting these to fit the customer’s unique requirements. This process involved reorganizing, creating, and updating multiple AWS accounts, Kubernetes clusters, subnets, and other resources to meet both current and future demands.
Our team utilized 3 key repositories:
- common-ci: Consolidated CI/CD modular workflows to standardize the validation, testing, security, and delivery of applications. This repository simplified the process for application teams by providing a single, configurable workflow that delivers applications into a secure environment.
- platform-infra: A modular approach using Terraform to manage all the resources within the AWS ecosystem. This approach eliminated manual interventions in AWS accounts and provided a straightforward method for managing environments and resources.
- common-helm-charts: A collection of Helm chart configurations for various application types (API, web, worker, etc.) used within the Helm/Kubernetes ecosystem.
Finally, we developed lightweight sample applications in the various technologies (languages and frameworks) used by the customer. These samples demonstrated how easy the new platform could be leveraged for deployment.
Results and Achievements
The impact of our work was powerfully demonstrated during an organization-wide open demo. In just 30 minutes, one of our developers successfully built a demo application entirely from scratch. This process included the creation of a repository, making a first commit, and deployment of the application in an AWS environment running on a Kubernetes setup. The application was additionally configured to interact seamlessly with other services while adhering to the customer’s stringent compliance requirements, successfully passing:
- Quality standard checks
- Code scan metrics
- Linting rules
- Rigorous security checks
Shortly after the demo, development teams began to easily adopt the new platform, bypassing the complexities of DevOps world and allowing them to focus on their specific areas of expertise.
Empowering Enterprises for a Containerized Future
In conclusion, the journey with our customer went beyond mere technological transformation – it was about overcoming challenges, fostering a culture of change, and empowering an enterprise for a containerized future. At Monks, we are dedicated to guiding enterprises through transformations of all types in order to help them unlock their full potential for innovation and growth.
Introduction
At Monks, we recently completed an exciting project for a prominent player in insurance and real estate, during which we embarked on the journey of modernizing a top enterprise's legacy platform. This customer sought to modernize operations by transitioning to a containerized environment. Our collaboration aimed to streamline their infrastructure, enhance scalability, and improve overall system performance, cementing their position as industry leaders.
When the customer contemplated launching new features, they hesitated, envisioning timelines spanning years; previous attempts had indeed dragged on due to a sluggish development process from conception to production. This hesitation was rooted in the same complicating factors that plagued their past projects—diverse challenges that required our team to address multiple areas simultaneously. Compounding these issues was a reliance on manual intervention by SMEs for infrastructure management and the absence of best practices, which continued to impede progress and prevent them from leveraging the efficiencies of infrastructure as code.
To support this initiative, Monks developed a thin, streamlined platform that made it easy to quickly spin up and deploy new applications to the cloud using Kubernetes. We created ready-to-use templates for the most common languages and frameworks used by our customer’s teams and integrated everything into continuous integration pipelines. This ensured that all standards and compliance requirements were consistently met, with everything managed within a central infrastructure project built with Terraform, which simplified the entire process.
Join us as we share how we overcame challenges, deployed strategies, and empowered developers to deploy applications more efficiently at scale.
The Challenge of Change: Overcoming Resistance and Fear
At the heart of any structural transformation for legacy enterprises lies a desire for change, often hindered by fear of the unknown.
At Monks, our approach to the technical DevOps implementation for our customer, a legacy enterprise, began with an in-depth analysis of their existing infrastructure. During the discovery phase, we meticulously examined their established systems, network architecture, and software dependencies. From there, our team identified key areas where modern DevOps practices could deliver rapid, high-impact optimizations. We targeted critical systems that formed the backbone of the customer's operations, including: team structure, workflow processes, communication channels, geographic distribution, and organizational culture, as well as specific technical implementations and legacy technologies.
A crucial aspect of our strategy was launching small, targeted POCs focused on critical systems. These served as practical demonstrations of the efficacy of containerization and modern DevOps practices, which delivered tangible results in a short time frame. Beyond validating our strategy, these POCs helped build trust with our customer, a key indicator of success as consultants.
The discovery process revealed many opportunities across a variety of areas, such as release process and infrastructure management, developer experience, and cost savings as a by-product of increased efficiency in these domains.
Streamlining Slow and Lengthy Processes
In legacy enterprises, slow and intricate approval processes often impede progress. In our work with the customer, we prioritized building strong relationships with our counterparts, ensuring we had advocates on their side to help navigate and overcome approval or process blockers smoothly.
In each phase, and with them, each change, it was imperative to understand the underlying reason(s) behind each process requirement. In some cases, what appeared to be a stringent policy was, in reality, a poorly designed process or one with a subpar user experience—often left unchallenged for years. This insight revealed significant opportunities for the customer to enhance efficiency and improve overall workflow.
By automating several processes that previously required manual interventions for approval through CI pipelines, the customer was able to significantly shorten the average time to complete tasks. This also eliminated the need for manual checks that could be performed automatically, further streamlining their approval processes and boosting operational efficiency.
What Did We Do
This customer, like many large enterprises, faced the challenge of maintaining agility during periods of growth. After thorough investigation of their challenges, we collaborated on the development of a vision and milestones necessary to achieve it. The customer had several non-negotiable goals:
- Simplify DevOps for Feature/Development Teams: Enable feature and development teams to focus on their core work without requiring deep DevOps expertise. A streamlined platform allows solutions to be deployed across various environments with only basic DevOps knowledge.
- Eliminate Direct Infrastructure Access: Establish a system where no individual needs to directly access any part of the infrastructure, ensuring a more secure and efficient environment.
- Leverage containers: Utilize containerization as a key vehicle for modernization. (This was a specific request from their new VP of Engineering!)
With these directives in mind, we immersed ourselves in the work, partnering closely with the customer to ensure a collaborative approach on a bespoke solution.
When engaging in these discussions, starting with best practices and industry standards as a foundation, then adapting these to fit the customer’s unique requirements. This process involved reorganizing, creating, and updating multiple AWS accounts, Kubernetes clusters, subnets, and other resources to meet both current and future demands.
Our team utilized 3 key repositories:
- common-ci: Consolidated CI/CD modular workflows to standardize the validation, testing, security, and delivery of applications. This repository simplified the process for application teams by providing a single, configurable workflow that delivers applications into a secure environment.
- platform-infra: A modular approach using Terraform to manage all the resources within the AWS ecosystem. This approach eliminated manual interventions in AWS accounts and provided a straightforward method for managing environments and resources.
- common-helm-charts: A collection of Helm chart configurations for various application types (API, web, worker, etc.) used within the Helm/Kubernetes ecosystem.
Finally, we developed lightweight sample applications in the various technologies (languages and frameworks) used by the customer. These samples demonstrated how easy the new platform could be leveraged for deployment.
Results and Achievements
The impact of our work was powerfully demonstrated during an organization-wide open demo. In just 30 minutes, one of our developers successfully built a demo application entirely from scratch. This process included the creation of a repository, making a first commit, and deployment of the application in an AWS environment running on a Kubernetes setup. The application was additionally configured to interact seamlessly with other services while adhering to the customer’s stringent compliance requirements, successfully passing:
- Quality standard checks
- Code scan metrics
- Linting rules
- Rigorous security checks
Shortly after the demo, development teams began to easily adopt the new platform, bypassing the complexities of DevOps world and allowing them to focus on their specific areas of expertise.
Empowering Enterprises for a Containerized Future
In conclusion, the journey with our customer went beyond mere technological transformation – it was about overcoming challenges, fostering a culture of change, and empowering an enterprise for a containerized future. At Monks, we are dedicated to guiding enterprises through transformations of all types in order to help them unlock their full potential for innovation and growth.