Many organizations want to adopt DevOps to work their way through digital transformation. This case study of Capital One's journey of adopting DevOps and what distinctive tools and methods they introduced to stay ahead of the competition.
2. DevOps Journey of Capital One: The When and The Why
Changes Made by Capital One From 2012 to 2020
The Success Story: The How
Lessons to Learn From Capital One DevOps Strategy
Simform’s Solution
1.
2.
3.
4.
5.
Agenda
3. The DevOps Journey of Capital
One: The When and The Why
In 2010, the senior management decided to develop the
company’s technical infrastructure and set up a culture to
attract and retain talented people.
Soon, the company adopted agile software development,
laying the foundation of the DevOps implementation.
DevOps was a natural choice for the concerned teams to
achieve faster development and deployment cycles.
4. What Changes Capital One Has Undergone
From 2012 to 2020
All the above changes led the bank to become an open source-first organization.
Not to mention, in 2020, Capital became the first U.S. bank to announce the
movement of its legacy on-premises data centers to the public cloud.
Adoption of agile practices Building automated test cases
Automating deployments and tests Migration to the public cloud
5. The Success Story:
The How
Though Capital One had a small team in their early
days of adopting DevOps, they wanted to implement
an enterprise-wide strategy. Eventually, the company
approached its DevOps initiatives in three phases, as
shown in the image.
6. DevOps Implementation Steps (The How)
Creating cross-functional SWAT teams
Leveraging microservices architecture
Pipeline Execution Stages Introduced by Capital One Team
The Benefits of Microservices From Implementation
Building an on-demand infrastructure on AWS
AWS Tools Used by Capital One Development Team
Automating delivery pipelines using Jenkins
Governance with “Clean Rooms”
Introducing chaos engineering into DevOps practices
Enforcing security in DevOps
7. The How
Creating Cross-Functional SWAT Teams
Capital One initiated the transition towards DevOps by assigning dedicated and
cross-functional “SWAT” teams to two of its legacy applications.
These teams successfully implemented configuration management, automated
critical processes, and improved the workflow of each app.
Having a cross-functional SWAT team from the early stages helped Capital One
create shared goals.
8. The How
Leveraging Microservices Architecture
The bank started investing more time and effort in studying the microservices
architecture and its relevance to their company.
The development team decided to leverage automated deployments compliant
with their general quality standards.
They created rigorous and explicit guidelines for software delivery and changes in
production.
9. The How
Pipeline Execution Stages Introduced by
Capital One Team
Source control mechanisms
Secure storage of application binary
Access-controlled application environment
Quality and security checks.
10. The How
The Benefits of Microservices From
Implementation
Asymmetric service scaling,
Intelligent deployment,
Zero downtime
Separation of logic and responsibilities
Error handling
Resiliency design patterns
11. The How
Building an On-demand Infrastructure on
AWS
Based on user feedback at this point, product managers at Capital One focused on
upgrading the banking and financial services to a top-notch experience. That’s
precisely why the company had a cloud-first policy and architects deployed the new
applications on the cloud.
12. The How
AWS Tools Used by Capital One
Development Team
Amazon Virtual Private Cloud (Amazon VPC)
Amazon Simple Storage Service (Amazon S3)
Amazon Elastic Compute Cloud (Amazon EC2)
Amazon Relational Database Service (Amazon RDS)
13. The How
Automating Delivery Pipelines Using Jenkins
Capital One uses a variety of pipelines to scan and run tests on its code to
achieve a company-wide quality as well as faster delivery.
Every code update undergoes a series of rigorous automated tests, including
integration tests, unit tests, security scanning, and quality checks.
The pipeline automatically deploys a release once the code passes all the tests.
This way, users do not experience downtime, and teams can release updates
without any disruption.
14. The How
Governance With “Clean Rooms”
The renowned Strategist and DevOps Evangelist, Tapabrata “Topo” Pal and his
team borrowed this “clean room” concept for Capital One.
They adapted it for the software development lifecycle to brace this combination
of fearlessness and accountability.
15. The How
Introducing Chaos Engineering into DevOps Practices
In 2017, Capital One followed the example of Netflix and implemented its own
version of chaos engineering.
The company introduced a disruption tool called “Cloud Detour” to test the
resilience of the applications they build.
16. The How
Enforcing Security in DevOps
Initially, Capital One followed a manual and a lengthy security certification
process. However, the company soon realized the importance of securing
container environments to boost its business encryption in all its services.
As a result, Capital One embedded automated security checks into its DevOps
pipeline.
The DevOps team soon had API access to vulnerability management and policy
compliance tools. It enabled them to run necessary tests, obtain reports, and
start rectifications without involving the security team.
17. Lessons to Learn From Capital
One DevOps Strategy
Speed is the new currency essential for responding to
evolving user demands. Collaboration between
internal teams and automation of various processes
help you achieve just that.
DevOps practices and team collaborations encourage
you to keep trying new ideas. So, embrace a fail-fast
mindset, and you’ll soon find a solution that works.
Adopting continuous monitoring practices leads your
organization to obtain quality results and achieve
scalability even if your processes had a slow-paced
start.
1.
2.
3.
18. Lessons to Learn From Capital
One DevOps Strategy
The centralization of delivery tooling eliminates the
need to develop and manage each team’s tech stack
in different silos. In turn, it reduces duplicate efforts
and increases the reuse of resources.
Cloud infrastructure enables flexible use of resources.
Subsequently, you can avoid the scarcity of
possibilities and scale with ease when the need arises.
Analyze all the existing development processes, and
then set a quality bar to achieve maximum results.
Then, automate quality control-based processes to
minimize human error to simplify necessary DevOps
compliance.
4.
5.
6.
19. Simform’s Solution
Yes, DevOps implementation can undoubtedly boost your
business by enhancing the productivity of your developers
and operation teams.
However, DevOps is also one of the most challenging
fields today, given the depth of collaboration it requires.
And, the desired results may not be achieved when an
organization rushes into the implementation without
knowing how DevOps work.
20. Thank You
www.simform.com
contactus@simform.com
Simform is a custom software development powerhouse.
Let's get in touch to discuss your next project!
We are Simform!
twitter.com/simform
linkedin.com/company/simform/
facebook.com/simform