
University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Computer Programming, Unit Testing, Programming Principles, Algorithms, C (Programming Language), Program Development, Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, System Design and Implementation
Intermediate · Specialization · 3 - 6 Months

Simplilearn
Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Computer Programming, Programming Principles, Algorithms, Data Structures, Data Manipulation
Beginner · Course · 1 - 4 Weeks

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

Peking University
Skills you'll gain: Data Structures, C++ (Programming Language), Algorithms, Object Oriented Programming (OOP), C (Programming Language), File I/O, Computational Thinking, Graph Theory, Program Development, Programming Principles, Theoretical Computer Science, Computer Science, Computer Programming, Data Storage, Computer Architecture, Database Systems, Computer Hardware, Computational Logic, Software Engineering, Query Languages
Beginner · Specialization · 3 - 6 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Functional Design, Java Programming, Other Programming Languages, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Theoretical Computer Science, Data Structures, Computer Science, Computer Architecture, Algorithms, Programming Principles, Computational Logic, Java Programming, Computer Hardware, Scalability
Intermediate · Course · 1 - 3 Months

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

Skills you'll gain: C++ (Programming Language), Maintainability, Software Design Patterns, Programming Principles, Algorithms, Data Structures, Performance Tuning, Debugging
Advanced · Course · 1 - 3 Months

Skills you'll gain: Software Design, Programming Principles, Debugging
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: File I/O, C and C++, Communication Systems
Advanced · Course · 1 - 3 Months

Coursera
Skills you'll gain: Scalability, Performance Tuning, C++ (Programming Language), System Programming, Computer Architecture, Cross Platform Development, Hardware Architecture, C (Programming Language), Application Performance Management, Build Tools
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Performance Tuning, Spring Framework, Application Performance Management, Algorithms, JUnit, OS Process Management, Application Frameworks, Programming Principles, Performance Testing, Spring Boot, Computer Architecture
Beginner · Course · 1 - 3 Months