We may earn an affiliate commission when you visit our partners.
Course image
Enrique Gonzalez Müller, Ekaterina Rakhilina, and Vivek Sarkar

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.

Read more

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

Enroll now

Share

Help others find Specialization from Coursera by sharing it with your friends and followers:

What's inside

Three courses

Parallel Programming in Java

(0 hours)
This course teaches learners the fundamental concepts of parallel programming in the context of Java 8. By the end of this course, you will learn how to use popular parallel Java frameworks to write parallel programs for a wide range of multicore platforms including servers, desktops, or mobile devices.

Concurrent Programming in Java

(0 hours)
This course teaches learners the fundamental concepts of concurrent programming in the context of Java 8. By the end of this course, you will learn how to use basic concurrency constructs in Java such as threads, locks, critical sections, atomic variables, isolation, actors, optimistic concurrency and concurrent collections, as well as their theoretical foundations.

Distributed Programming in Java

(0 hours)
This course teaches the fundamental concepts of Distributed Programming in Java 8. By the end, you will learn how to use popular frameworks for Java programs, including Hadoop, Spark, Sockets, RMI, Multicast Sockets, Kafka, MPI, and different approaches to combine distribution with multithreading.

Save this collection

Save Parallel, Concurrent, and Distributed Programming in Java to your list so you can find it easily later:
Save
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser