Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of Colorado Boulder

Fundamentals of Software Architecture for Big Data

University of Colorado Boulder via Coursera

Overview

The course is intended for individuals looking to understand the basics of software engineering as they relate to building large software systems that leverage big data. You will be introduced to software engineering concepts necessary to build and scale large, data intensive, distributed systems. Starting with software engineering best practices and loosely coupled, highly cohesive data microservices, the course takes you through the evolution of a distributed system over time.

Fundamentals of Software Architecture for Big Data can be taken for academic credit as part of CU Boulder’s Master of Science in Data Science (MS-DS) degree offered on the Coursera platform. The MS-DS is an interdisciplinary degree that brings together faculty from CU Boulder’s departments of Applied Mathematics, Computer Science, Information Science, and others. With performance-based admissions and no application process, the MS-DS is ideal for individuals with a broad range of undergraduate education and/or professional experience in computer science, information science, mathematics, and statistics. Learn more about the MS-DS program at https://www.coursera.org/degrees/master-of-science-data-science-boulder.

Syllabus

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

Taught by

Tyson Gern and Mike Barinek

Reviews

Start your review of Fundamentals of Software Architecture for Big Data

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.