Microservices architecture offers IT organizations myriad benefits and advantages over traditional monolithic application development, including a hand-in-glove match for cloud environments that more and more companies are adopting. So it’s no mystery that so many organizations are transitioning their application development strategies to a microservices mindset. But even in the realm of microservices, building and operating an application at scale can be daunting. Problems can include something as fundamental as having too few resources and time to continue developing and operating your application, to underestimating the needs of your rapidly growing customer base. At its best, failure to build for scale can be frustrating. At its worst, it can cause entire projects—even whole companies—to fail.
Realistically, we know that it’s impossible to remove all risk from an application. No one has invented a functional crystal ball yet, so risk will always be a part of the development process, and technical debt will continue to be a burden to you and your application. But, we certainly can learn to manage and minimize that risk and lessen the impact of scale-related problems that do arise.
In this video course, designed for application planners and architects—even those without coding or code development experience—and based on content from the first edition of Architecting for Scale, by Lee Atchison (available on Safari), you’ll learn how to build, maintain, and operate a large, complex, modern application at scale. You’ll examine how to measure risk and the importance of doing so. You’ll also explore the Risk Matrix and learn how to create one for you project. Then, you’ll look at mitigation strategies, such as anticipating and handling service failures and using service tiers, that you can apply to avoid some of the more obvious development pitfalls. When you’ve completed this video course, you’ll have a deeper understanding of how to build and maintain high-availability applications at scale.
This video course includes material from the following chapters in Architecting for Scale:
- Chapter 5. What Is Risk Management?
- Chapter 6. Likelihood Versus Severity
- Chapter 7. The Risk Matrix
- Chapter 8. Risk Mitigation
- Chapter 13. Dealing with Service Failures
- Chapter 16. Service Tiers
- Chapter 17. Using Service Tiers
- Chapter 18. Service-Level Agreements
- Chapter 9. Game Days
- Chapter 10. Building Systems with Reduced Risk
What you’ll learn—and how you can apply it
- What risk is, how you measure it, and why is it important to measure
- The Risk Matrix and how you can create it
- Risk mitigation strategies
- Risk and availability: service tiers; Service-Level Agreements; and building systems with reduced risk
This video course is for you because…
- You’re a senior technical leader who is in charge of building and operating an application at scale
- You’re an architect who is responsible for building and maintaining services with high availability at scale
- You’re a technical leader and want to learn techniques to pass on to your team to help them build and operate their services and applications
- You’re an operations leader, and you want to learn how to keep the applications you are responsible for performing with the available resources
- You’re a developer who wants to learn and expand your skill set to grow your career into technical leadership
- You should have experience managing a software or IT operations team, or be a technical member of a software or IT operations team and want to learn new skills
- You should have a general understanding of modern software development practices (DevOps, Continuous Deployment, etc.)
- You should be familiar with 12-factor applications (12factor.net)
- You should have experience building and operating web-based applications at scale
Many of the techniques you learn in this video course can be applied to areas other than building scalable applications. So if you don’t meet these prerequisites, you might still find value in this video course. However, understanding these concepts will help you follow along in the topics discussed.
Materials or downloads needed in advance:
- Sample risk matrices and risk matrix templates, many of these already exist at www.architectingforscale.com
- Site Reliability Engineering. This is the bible on operating modern software applications using proven techniques developed and implemented at Google. These techniques are useful when putting risk management techniques to practical use.
- DevOps: Implementing Modern DevOps. This video course gives an overview of implementing modern DevOps practices into your organization. These techniques go hand-in-hand with modern risk management techniques applied to your application.