The goal of the course is to outline key concepts, principles and approaches used to design applications where high-performance, scalability, and resiliency are first-class quality attributes.
By the end of this course, the candidates will have acquired in-depth knowledge about how to design, implement high-performance, scalable, and resilient applications, and how to create a proper testing plan.
Key concepts covered in this course
- Different metrics are used to quantify performance, scalability, and resilience, such as response time, latency, throughput, percentiles, availability, etc.
- Architectural tactics and patterns to support high-performance, scalability, and resiliency (e.g. synchronous vs asynchronous, data push vs. data pull, caching, circuit breaker, bulkheads, back pressure, throttling, etc.)
- Modern architectural styles that might be used while designing high-performance, scalable, and resilient applications, with their pros and cons (e.g. microservices, event-driven, event-sourcing, reactive, serverless, lambda, etc.).
- Networking assets used to complement the architectural styles (e.g. API Gateway, load balancer, service discovery, content delivery network)
- Advanced high-performance development techniques such as NUMA, large pages, C-states, CPU Governors, RamFS/TmpFS, SSD I/O Scheduler, Kernel TCP Buffers, etc.
- How to elaborate a test plan with a focus on load testing
- Architectural concepts pertaining to high-performance, scalable, and resilient applications. Quality attributes metrics
- Architectural tactics, patterns, and styles for high-performance, scalability, and resiliency
- Advanced performance optimizations techniques
- Application load testing
- Examples of modern systems (e.g. Linkedin use case, etc.)
- 16 hours
- software developers
- technical leaders
- software/solution architects
- test engineers
- business analysts with a technical background or passionate about technology
People from the following companies attended my courses:
Note: At the moment this course is available only for companies, teams, or groups of students. The individual subscription (i.e. single person) is not an option at the moment.