Курс от CourseraDevelop the foundational practices of building reliable and resilient software systems through this applied course in the Software Development Skill Path. You will build critical competencies in diagnosing software failures, applying defensive coding techniques, implementing Test-Driven Development, and constructing thorough test suites that validate functionality across normal, edge, and failure scenarios. You will also learn how to manage runtime exceptions gracefully, design retry and fallback mechanisms, and interpret logs, metrics, and traces to understand system behavior in production environments. Created in partnership with Google and IBM, this course integrates real-world troubleshooting strategies with industry-aligned testing and observability practices. You will progress from understanding the fundamentals of debugging and problem isolation, to applying structured testing workflows, to mastering advanced TDD methodologies, and finally to exploring logging and monitoring concepts that support resilient system design. Through hands-on labs and guided exercises, you will gain the skills needed to identify root causes, prevent recurring issues, and contribute robust, maintainable, and fault-tolerant code to software projects. Perfect for emerging software developers and reliability-minded learners seeking to strengthen their debugging, testing, and resilience engineering capabilities.
11 модулей · 107 учебных материалов

Преподаватель курса