University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, C (Programming Language), C and C++, Programming Principles, Object Oriented Programming (OOP), Debugging, C++ (Programming Language), Computer Programming, Unit Testing, Program Development, Computational Thinking, Integrated Development Environments, Computer Science, Pseudocode, Command-Line Interface, Software Testing, Algorithms, Integration Testing
Intermediate · Specialization · 3 - 6 Months

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

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

University of Washington
Skills you'll gain: Software Installation, Programming Principles, Other Programming Languages, Functional Design, Computer Programming, Ruby (Programming Language), Theoretical Computer Science, Software Design, Computational Thinking
Intermediate · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), Python Programming, Programming Principles, System Programming, Computer Programming, Unix, Computer Science
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, System Programming, Cross Platform Development, Hardware Architecture, Peripheral Devices, Performance Tuning, Software Design, Real Time Data, Technical Design, C (Programming Language), Debugging, System Configuration, Maintainability, Scalability, Data Mapping
Advanced · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Programming Principles, Embedded Systems, Program Development, Computer Engineering, Algorithms, Data Structures, Computer Programming, Debugging
Beginner · Course · 1 - 3 Months

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

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, System Programming, Computer Programming, Computer Programming Tools, Data Structures, Debugging, Linux, Data Storage
Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: C (Programming Language), Data Structures, Program Development, Algorithms, Computational Thinking, Computer Programming, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Programming Principles, Maintainability, Prototyping
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Systems, C (Programming Language), Embedded Software, Data Structures, Programming Principles, Data Management, Performance Tuning, Software Development
Intermediate · Guided Project · Less Than 2 Hours