Master parallel programming concepts using Scala, from task parallelism to data-parallel algorithms and collections.
Master parallel programming concepts using Scala, from task parallelism to data-parallel algorithms and collections.
This course cannot be purchased separately - to access the complete learning experience, graded assignments, and earn certificates, you'll need to enroll in the full Functional Programming in Scala Specialization program. You can audit this specific course for free to explore the content, which includes access to course materials and lectures. This allows you to learn at your own pace without any financial commitment.
4.4
(1,839 ratings)
59,964 already enrolled
Instructors:
English
پښتو, বাংলা, اردو, 4 more
What you'll learn
Implement efficient parallel algorithms and data structures
Optimize program performance through benchmarking
Design and use parallel collections effectively
Understand task and data parallelism concepts
Develop scalable parallel applications
Skills you'll gain
This course includes:
5.21 Hours PreRecorded video
Access on Mobile, Desktop, Tablet
FullTime access
Shareable certificate
Closed caption
Get a Completion Certificate
Share your certificate with prospective employers and your professional network on LinkedIn.
Created by
Provided by

Top companies offer this course to their employees
Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.





There are 4 modules in this course
This comprehensive course covers parallel programming fundamentals using Scala. Students learn to implement both task and data parallel programs, optimize performance through benchmarking, and work with parallel collections. The curriculum includes practical examples like parallel merge sort, k-means clustering, and Barnes-Hut simulation, providing hands-on experience with real-world parallel computing challenges.
Parallel Programming
Module 1 · 11 Hours to complete
Basic Task Parallel Algorithms
Module 2 · 7 Hours to complete
Data-Parallelism
Module 3 · 6 Hours to complete
Data Structures for Parallel Computing
Module 4 · 6 Hours to complete
Fee Structure
Instructors
Principal researcher
Dr. Aleksandar Prokopec is a software developer and a concurrent and distributed programming researcher, working at Oracle Labs. He obtained a PhD in Computer Science from the Ecole Polytechnique Federale de Lausanne, Switzerland. As a doctoral assistant and member of the Scala team at EPFL, he actively contributed to the Scala programming language, and has worked on programming abstractions for concurrency, data-parallel programming support, and concurrent data structures for Scala. He created the Scala Parallel Collections framework, which is a library for high-level data-parallel programming in Scala, and participated in working groups for Scala concurrency libraries. He previously worked at Google.
Associate Professor
Viktor Kuncak is an associate professor at the École Polytechnique Fédérale de Lausanne (EPFL), where he has been leading the Laboratory for Automated Reasoning and Analysis since 2007. His research focuses on formal methods, particularly in developing algorithms and tools for program verification and synthesis, including the Leon tool for Scala programs. Kuncak has contributed significantly to the academic community, co-chairing several key conferences and leading initiatives to standardize verification formats. He holds a PhD from the Massachusetts Institute of Technology (MIT) and has received funding from the European Research Council for his work on Implicit Programming, which aims to align human goals with computational processes.
Testimonials
Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.
4.4 course rating
1,839 ratings
Frequently asked questions
Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.