Fundamentals of Software Architecture for Big Data
- Software Engineering Overview
- In this module you will learn the basics of modern software engineering. You will learn how our industry progresses over time, practice test driven development, and implement widely used data structures.
- Fundamentals of Software Architecture
- In this module you will learn the fundamentals of software architecture. You will learn how to evolve an architecture over time, how to work within a large codebase, and a bit about blockchain.
- Fundamentals of Production Software
- In this module you will learn the fundamentals of monitoring software in production. You will learn how to create reliable background jobs, how to calculate and communicate service availability, and how to implement production metrics and monitoring.
- Fundamentals of Software Architecture for Big Data
- In this module you will learn the fundamentals of production quality databases and messaging systems. You will learn to understand the tradeoffs between consistency and availability, how to implement database transactions to improve consistency, and how to implement messaging systems to improve availability.