Chaos & Resiliency Engineering
Enterprise Resiliency Engineering
Engineering solutions for testing application resilience across private, public, and hybrid cloud environments.
- Type
- Professional
- Company
- JPMorgan Chase
- Period
- 2022 – Present
- Availability
- Internal enterprise work. No source code or internal details are shared.
Sanitized, publicly shareable description. It contains no confidential information, and the diagram is an illustrative model of chaos engineering in general, not JPMorgan Chase's production architecture.
Overview
At JPMorgan Chase I work in resiliency engineering, building a chaos engineering framework that tests how applications behave when the infrastructure they depend on fails, across private, public and hybrid cloud environments.
Problem
Applications in a large enterprise depend on many services and run across several kinds of cloud environment. Teams need a safe, repeatable way to find out how those applications respond to failure before a real incident does it for them.
Solution
A chaos engineering framework with backend services and REST APIs for defining and running resilience experiments against applications, built as microservices, with automation and observability so the impact of each experiment can be seen.
What exists today
- Implemented
Chaos experiments across private, public and hybrid cloud
- Implemented
Backend services and REST APIs (Python, Django, DRF)
- Implemented
Workflow automation with Linux and shell scripting
Architecture
Users
- Application teams
- CI/CD pipelines
Platform API
- REST APIs for experiments
- Scheduling and approvals
Execution
- Experiment runners
- Failure injection
Targets
- Private cloud
- Public cloud
- Hybrid environments
Feedback
- Metrics and dashboards
- Experiment reports
Technology stack
- Backend
- Python
- Django
- Django REST Framework
- REST APIs
- Microservices
- Infrastructure
- Linux
- Shell scripting
- Private, public and hybrid cloud
- Operations
- Observability
My contribution
- Develop the chaos engineering framework used to test application resilience across private, public and hybrid cloud environments.
- Build backend services and REST APIs with Python, Django and Django REST Framework in a microservices architecture.
- Automate engineering workflows with Linux and shell scripting, with a focus on observability.
Engineering challenges
Many kinds of environment
The same experiment has to work against applications in private, public and hybrid cloud.
Seeing the impact
An experiment is only useful if its effect on the application can be observed and understood.
Source and demo
Internal enterprise work. No source code or internal details are shared.
Next case study
PrepForge