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.
This course is part of the Software Architecture for Big Data Specialization

About this Course
Software engineering or big data experience
Could your company benefit from training employees on in-demand skills?
Try Coursera for BusinessWhat you will learn
Practice software engineering fundamentals; test first development, refactoring, continuous integration, and continuous delivery.
Architect and create a big data or distributed system using rest collaboration, event collaboration, and batch processing.
Create a performant, scalable distributed system that handles big data.
Skills you will gain
- Real-time Systems
- Big Data
- Microservices
- Software Engineering
- Distributed Computing
Software engineering or big data experience
Could your company benefit from training employees on in-demand skills?
Try Coursera for BusinessOffered by
Start working towards your Master's degree
Syllabus - What you will learn from this course
Software Engineering Overview
Fundamentals of Software Architecture
Fundamentals of Production Software
Fundamentals of Software Architecture for Big Data
About the Software Architecture for Big Data Specialization

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
More questions? Visit the Learner Help Center.