ACCELERATING SPEED OF DELIVERY

WITH CLOUD DEVOPS

Implementing a fully automated AWS infrastructure and introducing modern, streamlined CI/CD processes that provided Herff Jones increased productivity, improved development ramp-up time, and accelerated speed to delivery.

Herff Jones is a nationally recognized marketer and manufacturer of student achievement products, including yearbooks, class rings, graduation accessories, and more. All meaningful items that create memorable experiences for young people. Over the last century, Herff Jones has successfully built a sprawling network of manufacturing facilities, sales representatives, and school partnerships. However, aging legacy technologies and applications jeopardized operations and revenue. They needed to take immediate and profound action.

challenges

Inconsistent Development Environments

The development teams had to build and develop in a local environment and deploy code to a separate development environment – different from QA and production. The development teams needed more flexibility in the types of environments used and more consistent infrastructure to ensure the code was running in a quality way.

Aging & Low Flexibility with Infrastructure

The existing infrastructure was old, aging, and failure prone. The development environment could only be refreshed once every 6 months. 

Difficulty with Pipeline Automation

The standard application build, deploy, and promotion flows had yet to be established, making automation difficult, and the code quality needed to be improved with no automation or checks.  

Lack of CI/CD Practices

The build and deployment processes lacked standard validation steps for code quality and deployment success. When the systems would fail, staff would find out from the customers, and these outages/performance issues were hard to track.   

Long Deploy to Production Time

There was a specific configuration required for each application and environment, and the client was only able to deploy to production every 6 months. The variances and human intervention here introduced errors.  

Solutions

Implementation of a Fully Automated AWS Infrastructure

CleanSlate built a fully automated and scalable AWS infrastructure for development, testing, performance, staging, and production. The development environments were automated and could scale to as many development teams as we wanted – maxing out at 12 for this project. From there, all other environments had the consistent infrastructure and resources at the scale needed to ensure the quality of the environment as code was pushed from Dev through production. The flexibility and consistency of environments have allowed teams to scale up and down and continually provide quality code.

Implementation of Automated Deployment Processes

CleanSlate automated the deployment processes for each application suite. This included post-deployment validation to ensure applications were deployed and functional. Deployment automation was integrated with operations to provide monitoring and alerting notifications.

Introduction of Modern, Streamlined CI/CD Processes

The build & deploy processes were defined and integrated with the appropriate tools in standard and non-standard flows. They were implemented for each application type. The build process introduced quality controls – including static code analysis for code quality and security compliance.

Implementation of Code Quality Processes and Analyzers

All applications were refactored to leverage configurable lightweight, standardized Docker containers. The design ensured that applications contained dependencies required to operate, and hardcoded configuration was removed. This made applications portable from desktop to cloud. CleanSlate also provided a self-service website where development teams could launch code builds and deployments on demand and troubleshoot build issues.

Results

CleanSlate implemented the standard application container model allowing developers to run applications locally and in the cloud without concern about installing all necessary dependencies. Deployment issues that stemmed from environmental differences were virtually eliminated, and as a result, development ramp-up time improved while also increasing productivity. The self-service provided deployment teams the means to build and deploy at will. With autonomy, deployments were streamlined from hours to minutes. Since the deployments were automated, infrastructure teams ensured the environments were protected from unauthorized activities.

The standardized and automated CI/CD processes made the build and deployment status transparent. Productivity metrics provide insight into continued process improvement. With Jenkins running inside AWS, additional CI/CD tools were migrated to centralize services to ensure high availability. New container-based applications run in AWS Elastic Container Service (ECS), which enabled the CI/CD process.

More Success Stories

Let’s talk

Thinking about moving to the cloud or assessing your current cloud environment? You probably have questions. We’ll get you the answers you need to help you make the right decision.