Tag: caching

Description

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

 

Agenda

  • 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.)

 

Duration

  • 16 hours

 

Target Audience

  • software developers
  • technical leaders
  • software/solution architects
  • test engineers
  • business analysts with a technical background or passionate about technology

 

Attendees’ Feedback

[su_quote]Excellent course content helping me to understand a lot of things, from a very high level and abstract to a very deep and technical perspective.[/su_quote]
[su_quote]I recommend this course if you want to get in touch with real technical topics. The trainer clearly explained to them, even for less technical people.[/su_quote]
[su_quote]The trainer was very well prepared. He answered all of our questions, even if they were not really the subject of the training.[/su_quote]
[su_quote]I liked more the advanced part about how to tune an application, outside of the programming language, to get better performance.[/su_quote]
[su_quote]Interesting and informative course, presented by a trainer who knows a lot of stuff. I got a lot of ideas and techniques that I can use to build more efficient applications in my daily job.[/su_quote]

 

People from the following companies attended my courses:

 

Enroll

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.