Back to Parallel, Concurrent, and Distributed Programming in Java

Parallel, Concurrent, and Distributed Programming in Java

Parallel, concurrent, and distributed programming underlies software in multiple domains, ranging from biomedical research to financial services. This specialization is intended for anyone with a basic knowledge of sequential programming in Java, who is motivated to learn how to write parallel, concurrent and distributed programs. Through a collection of three courses (which may be taken in any order or separately), you will learn foundational topics in Parallelism, Concurrency, and Distribution. These courses will prepare you for multithreaded and distributed programming for a wide range of computer platforms, from mobile devices to cloud computing servers. To see an overview video for this Specialization, click here! For an interview with two early-career software engineers on the relevance of parallel computing to their jobs, click here. Acknowledgments The instructor, Prof. Vivek Sarkar, would like to thank Dr. Max Grossman for his contributions to the mini-projects and other course material, Dr. Zoran Budimlic for his contributions to the quizzes, Dr. Max Grossman and Dr. Shams Imam for their contributions to the pedagogic PCDP library used in some of the mini-projects, and all members of the Rice Online team who contributed to the development of the course content (including Martin Calvi, Annette Howe, Seth Tyger, and Chong Zhou).

Status: Application Frameworks
Status: Functional Design
IntermediateSpecialization

Top reviews across Parallel, Concurrent, and Distributed Programming in Java

V

Reviewed Nov 6, 2017

Very useful course about parallel programming theory and practice.Could be less examples with custom libraries instead of standard java features looking to practical usage at work.

GA

Reviewed Sep 19, 2020

Very good explanation of the concepts of locks, and how important data-structures example HashMap are optimized to improve performance

SA

Reviewed Apr 27, 2020

A very good course, I learnt a lot from it, thank you Coursera.

SV

Reviewed Aug 27, 2017

Great course. Introduces Parallel Programming in Java in a gentle way.Kudos to Professor Vivek Sarkar for simplifying complex concepts and presenting them in an elegant manner.

HK

Reviewed Dec 8, 2024

Teach clear and concise. Good to know more about java concurrency. It is interesting to hand on programming such as actors which linked as list.

AG

Reviewed Nov 24, 2019

Amazing course to learn about distributed Progrmaming

JL

Reviewed Dec 13, 2019

It was actually quite fun. I particularly enjoyed the Two Sigma interviews, which gave me a better understanding about how the course concepts are applied in business.

AM

Reviewed May 30, 2020

Very well structured and presented course! Very useful material with good relevant examples! Thank you, Prof. Sarkar for this Concurrent Programming in Java course!

NK

Reviewed Sep 4, 2017

It forced me to recall OpenMP and MPI. Thought it's already dead in favor to IMDG, spark, upc and so on.Practical tasks - miniprojects - was too easy to implement. Need more complex tasks.

SC

Reviewed Apr 5, 2023

Excellent course, explained difficult topics very well! Would recommend to anyone that needs to understand how to improve complex workflows in Java

EE

Reviewed Jul 29, 2018

A lot of my time has been wasted due to a very poor explanation of actors. All it takes is "Actors have their own threads and that is how they are concurrent.

SN

Reviewed May 1, 2020

The concepts taught were clear and precise which helped me with an ongoing project. It would have been really better if the mini-projects were a bit more complicated.

Learner reviews across Parallel, Concurrent, and Distributed Programming in Java

Showing: 20 of 265

Felipe
Course: Parallel Programming in Java
2.0
Reviewed Mar 11, 2018Course: Parallel Programming in Java
Oleksandr
Course: Parallel Programming in Java
2.0
Reviewed Mar 15, 2019Course: Parallel Programming in Java
Pavel
Course: Parallel Programming in Java
2.0
Reviewed Nov 18, 2017Course: Parallel Programming in Java
Rongpeng
Course: Parallel Programming in Java
4.0
Reviewed Nov 12, 2018Course: Parallel Programming in Java
Roman
Course: Parallel Programming in Java
5.0
Reviewed Oct 24, 2021Course: Parallel Programming in Java
Brij
Course: Parallel Programming in Java
5.0
Reviewed Jul 20, 2020Course: Parallel Programming in Java
RAHUL
Course: Parallel Programming in Java
3.0
Reviewed Jul 20, 2021Course: Parallel Programming in Java
Pratik
Course: Parallel Programming in Java
5.0
Reviewed Apr 15, 2021Course: Parallel Programming in Java
Talgat
Course: Parallel Programming in Java
5.0
Reviewed Apr 21, 2018Course: Parallel Programming in Java
Samujjal
Course: Parallel Programming in Java
5.0
Reviewed Sep 2, 2020Course: Parallel Programming in Java
Julie
Course: Parallel Programming in Java
5.0
Reviewed Dec 14, 2019Course: Parallel Programming in Java
Nikita
Course: Parallel Programming in Java
4.0
Reviewed Mar 4, 2022Course: Parallel Programming in Java
Pushkar
Course: Parallel Programming in Java
4.0
Reviewed May 3, 2021Course: Parallel Programming in Java
Anton
Course: Parallel Programming in Java
3.0
Reviewed Apr 18, 2020Course: Parallel Programming in Java
Manmeet
Course: Parallel Programming in Java
3.0
Reviewed Jan 30, 2022Course: Parallel Programming in Java
Vladislav
Course: Parallel Programming in Java
3.0
Reviewed Mar 18, 2021Course: Parallel Programming in Java
Jakob
Course: Parallel Programming in Java
2.0
Reviewed Mar 14, 2021Course: Parallel Programming in Java
Riccardo
Course: Parallel Programming in Java
2.0
Reviewed Jul 26, 2019Course: Parallel Programming in Java
David
Course: Parallel Programming in Java
5.0
Reviewed Aug 27, 2017Course: Parallel Programming in Java
Ryan
Course: Parallel Programming in Java
5.0
Reviewed Sep 18, 2017Course: Parallel Programming in Java