
University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), Statistical Analysis, Automation, Program Development, Data Structures, Programming Principles, Algorithms, Computer Programming, Theoretical Computer Science, Data Storage, Descriptive Statistics, Data Visualization Software, Debugging
Beginner · Specialization · 3 - 6 Months

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

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Interactive Design, Program Development, File I/O, Command-Line Interface, Control Panels, Development Environment, Debugging
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Vanderbilt University
Skills you'll gain: File I/O, Matlab, Computer Programming, Programming Principles, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), Data Structures, Engineering Calculations, Plot (Graphics), Problem Solving
Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Software Design Patterns, Peripheral Devices, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Debugging, Embedded Systems, Integrated Development Environments, C (Programming Language), Computer Programming Tools, Development Environment, Electronic Hardware, Electronics, Software Development Tools
Intermediate · Course · 1 - 4 Weeks

University of Alberta
Skills you'll gain: Computational Thinking, Video Game Development, Game Design, Programming Principles, Animation and Game Design, Software Quality (SQA/SQC), Problem Solving, Computer Programming, Theoretical Computer Science, Program Development, Software Engineering, Python Programming, Algorithms, Pseudocode, Data Structures, Application Design, Debugging, Problem Management, Computer Science, Functional Testing
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Software Configuration Management, Embedded Software, Embedded Systems, Git (Version Control System), Version Control, Build Tools, Software Development Tools, C (Programming Language), Development Environment, Software Technical Review, Software Design, Hardware Architecture, Computer Architecture, Debugging
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Programming Principles, Data Structures, Computer Programming Tools, Development Environment, Debugging
Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Software Documentation, Programming Principles, Computer Programming, Debugging, Development Environment, Engineering Calculations
Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, Computer Hardware, Hardware Architecture, Internet Of Things, Peripheral Devices, C (Programming Language), Software Architecture, Simulations, Debugging, Systems Integration
Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: File I/O, Embedded Software, C (Programming Language), Linux, Embedded Systems, Build Tools, Command-Line Interface, Operating Systems, Program Development, Software Installation, Development Environment, Application Development, Computer Programming
Beginner · Course · 1 - 3 Months