
University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Debugging, Software Design Patterns, Programming Principles, Object Oriented Design, Data Structures, Computer Programming, Algorithms, Command-Line Interface, Data-oriented programming, Maintainability, Graph Theory, Artificial Intelligence, Game Design, Data Management, File Management
Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: C (Programming Language), C++ (Programming Language), Object Oriented Programming (OOP), Data Structures, Programming Principles, Algorithms, Computer Programming, Software Design, Application Security, Python Programming, System Programming, Computer Architecture, Java, Performance Tuning, Numerical Analysis, Unix, Computer Science, Debugging
Intermediate · Specialization · 3 - 6 Months

Microsoft
Skills you'll gain: Debugging, Program Development, Software Documentation, Pseudocode, C++ (Programming Language), Computational Thinking, Programming Principles, Computer Programming, Integrated Development Environments, Computer Programming Tools, Development Environment, Algorithms, Data Validation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Linux, Linux Commands, C (Programming Language), System Programming, Command-Line Interface, Programming Principles, Development Environment, Computer Programming Tools, Data Structures, Program Development, Debugging
Mixed · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Programming Principles, Maintainability, Data Validation
Intermediate · Course · 1 - 4 Weeks
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Integrated Development Environments, Development Environment, System Programming, Program Development, Hardware Architecture, Data Structures, Microarchitecture, System Configuration, Programming Principles, Performance Tuning, Computer Architecture, Data Storage, Computer Programming, Software Installation
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C++ (Programming Language), Algorithms, Data Structures, System Programming, Numerical Analysis
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Debugging, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Pseudocode, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Data Structures, Development Environment, C++ (Programming Language), Debugging, Computational Thinking, Integrated Development Environments, Computer Programming
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: C (Programming Language), Data Structures, Application Security, System Programming, Programming Principles, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Microsoft Visual Studio, System Programming, Programming Principles, Apple Xcode, Software Installation, Development Environment, Algorithms, File Systems, Software Design Patterns, Data Structures, Performance Tuning, Debugging, File Management
Intermediate · Specialization · 3 - 6 Months

Microsoft
Skills you'll gain: C++ (Programming Language), API Design, Software Architecture, Software Design, Maintainability, Data Structures, Data Validation, Performance Tuning, Generative AI, File Management, Debugging
Beginner · Course · 1 - 3 Months