University of Michigan
Skills you'll gain: Data Structures, Data Analysis, Python Programming, Data Manipulation, Software Installation, File Management, Development Environment, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Java Programming, Object Oriented Design, Linux Commands
Intermediate · Specialization · 1 - 3 Months

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Graph Theory, Computational Thinking, Programming Principles, Database Design, Query Languages, Computer Programming, Theoretical Computer Science, Computer Science
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Functional Design, Application Programming Interface (API)
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: JUnit, Test Driven Development (TDD), Version Control, Git (Version Control System), GitHub, Performance Tuning, Unit Testing, Data Structures, Java Programming, Development Testing, Algorithms, Program Development, Software Testing, Java, Computer Programming, Software Development, Programming Principles, Debugging, Scalability
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Data Wrangling, Data Import/Export
Intermediate · Course · 1 - 3 Months

Amazon
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Java, File Management, Data Import/Export, Maintainability, Debugging, Software Development
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Data Import/Export, Java Programming, Java, Computer Programming, Data Structures, Object Oriented Programming (OOP), File Management, Integrated Development Environments, Computer Science
Beginner · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Data Structures, Algorithms, Java, Performance Testing, Computer Programming, Java Programming, Theoretical Computer Science, Object Oriented Programming (OOP)
Intermediate · Course · 3 - 6 Months

Princeton University
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Theoretical Computer Science, Computational Thinking, Computer Programming, Network Routing, Cryptography, Java Programming, Linear Algebra
Intermediate · Course · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Data Structures, Algorithms, Pseudocode, Computational Thinking, Analysis, Big Data, Probability & Statistics, Computer Programming, Python Programming
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Unit Testing, Data Structures, Java, Performance Tuning, Debugging, Programming Principles, Algorithms, Object Oriented Programming (OOP), Theoretical Computer Science
Intermediate · Course · 1 - 3 Months