The University of California San Diego is launching an online series of courses designed to help students master the algorithmic programming techniques they may need to land a top software engineering job.
The 8-part Algorithms and Data Structures series is part of a MicroMasters® program on edX, the leading nonprofit online learning platform for massive open online courses (MOOCs). The MicroMasters program offers learners a credential for career advancement after successful completion of the seven MOOCs and one Capstone Project course.
The Algorithms and Data Structures coursework covers topics in computer science, math, biology and the life sciences. “Students learn algorithmic techniques for solving various computational problems by implementing over 100 algorithmic coding problems in a programming language of their choice,” said Pavel Pevzner, a professor of Computer Science and Engineering (CSE) in UC San Diego’s Jacobs School of Engineering. “No other online course in algorithms comes close to offering students a wealth of programming challenges of the kind posed by employers looking to recruit top software engineers.”
“Compared to traditional offline classes that tend to focus on theoretical aspects of algorithms and often ignore applications,” added Pevzner (at left), “the new program will teach students how to transform real-life problems in areas ranging from genomics to Big Data analysis into algorithmic challenges.”.
“In addition,” said CSE visiting professor Alexander Kulikov, “students will learn how to implement software to solve these applied problems, exactly the kind of skills various high- tech companies are looking for.” Kulikov implemented most of the software challenges for the online courses.
The new offering, which launches January 31 PST / February 1 UTC, is particularly attractive because of the participation of the Rochester Institute of Technology (RIT), which will offer credit for students who complete the MicroMasters Credential in Algorithms and Data Structures. For students who apply for admission to RIT’s M.S. in Professional Studies as part of the university’s School of Individualized Study (SOIS), the edX credential will count toward fully 25% of the coursework required for the M.S. degree at RIT.
“The MicroMasters program offers a modular credential with a pathway to credit and it is designed for learners looking to advance their careers or to follow a path to an accelerated on-campus program at RIT,” noted Karen Flammer, director of UC San Diego’s Center for Digital Learning, part of the university’s Teaching + Learning Commons. “The UC San Diego-edX partnership aims to bridge the gap between higher education and the workplace, particularly in software engineering and data science.”
In addition to Kulikov and Pevzner, other online instructors affiliated with UC San Diego include: CSE and Mathematics professor Daniel Kane and CSE alumnus Neil Rhodes (B.S., M.S. ’82, ’87), a retired software engineer at Google and former lecturer in CSE. Rounding out the team of six instructors are Pevzner’s former postdoctoral researcher, Phillip Compeau, who is now an assistant department head for education in the Computational Biology Department in the School of Computer Science at Carnegie Mellon University; and Michael Levin, a guest scholar at UC San Diego and Chief Data Scientist at Yandex Market, the price-comparison online shopping subsidiary of Russia’s leading Internet company, Yandex.
Enrollment in the 8-part program culminating in a MicroMasters Credential costs $1,080, a 10% discount from the price for admission to each course individually. Executives at edX say there has been substantial advance interest ahead of the January 31 launch of the first course in the series – Algorithmic Design and Techniques. The self-paced course teaches students how to design algorithms, solve computational problems and implement solutions efficiently. (For the complete syllabus, click here.)
The seven other courses will become available between March and the end of November – making it possible to complete the MicroMasters Credential in Algorithms and Data Structures in calendar 2018. All eight courses and their launch dates this year include:
Algorithmic Design and Techniques (January 31)
Data Structures (March 31)
Graph Algorithms (May 31)
NP-Complete Problems (to be announced)
String Processing and Pattern Matching Algorithms (August 31)
Dynamic Programming: Applications in Machine Learning and Genomics (September 30)
Graph Algorithms in Genome Sequencing (October 31)
Capstone Project (November 30)
The Capstone Project course involves building a fully-fledged algorithm to assemble genomes from DNA fragments of a real dataset. “It’s an enormous challenge and knowing how to build algorithms for this purpose is in major demand in the multi-billion dollar biotech industry,” explained UC San Diego’s Pevzner, one of the world’s leading experts in bioinformatics. “The capstone project is a challenge based on Big Data derived from real-world genome sequencing machines. The goal is to design your own software for sequencing genomes – and it draws on everything that students will learn from the entire Algorithms and Data Structures program.”
Added Pevzner: “We believe in learning through doing, especially when it comes to learning algorithms. That’s why we invested thousands of hours in designing challenges as an alternative to the multiple-choice questions that you would usually find in other online courses, which often barely check whether a student fell asleep.”
“We are honored to work with UC San Diego to launch a MicroMasters program in Algorithms and Data Structures,” said MIT professor Anant Agarwal, CEO at edX. “It’s an exciting step toward furthering our shared mission to expand access to high-quality education while meeting the needs of universities and employers by providing students with the knowledge and skills for success in today’s rapidly-evolving tech industry.”
According to CSE’s Kulikov and former UC San Diego postdoc and alumnus Phillip Compeau (Ph.D. ’14), the challenges were designed to check the correctness and running time (ideally under one second) for each algorithm a student develops and implements. “Although we provide test datasets for introductory problems, students will have to later debug their programs without knowing what the tests are,” said Compeau. “It may sound difficult, but we believe it’s the only way to truly understand how algorithms work, and without that, they wouldn’t be able to master the art of programming.”
The MicroMasters program in Algorithms and Data Structures was developed to enhance the career prospects of students interested in becoming software developers and engineers, as well as for those pursuing careers in data science or site reliability engineering. According to the Bureau of Labor Statistics, the median salary in the U.S. for jobs in software development tops $100,000 per year, and for data scientists, the media exceeds $110,000 annually.