
Skills you'll gain: C++ (Programming Language), Application Development, Computer Programming, Programming Principles, File I/O
Beginner · Guided Project · Less Than 2 Hours

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: Data Structures, Algorithms, Computer Programming, Computational Thinking, Program Development, Technical Design, Debugging, Problem Solving, Performance Tuning
Intermediate · Course · 3 - 6 Months

Skills you'll gain: C# (Programming Language), Object Oriented Programming (OOP), Microsoft Visual Studio, Debugging, .NET Framework, Object-Relational Mapping, Full-Stack Web Development, Development Environment, Software Testing, Application Development, Command-Line Interface, Data Structures
Intermediate · Course · 1 - 3 Months
Dartmouth College
Skills you'll gain: Command-Line Interface, C (Programming Language), Linux Commands, Linux, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 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
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Electronics, Software Development Tools, Hardware Architecture, Data Structures, Electronic Hardware, Microarchitecture, Programming Principles, Performance Tuning, Computer Architecture, Control Systems, Computer Programming
Intermediate · Specialization · 3 - 6 Months

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

EDUCBA
Skills you'll gain: C (Programming Language), Embedded Systems, Embedded Software, Debugging, System Programming, Hardware Architecture, Microarchitecture, Computer Architecture, Data Structures, Peripheral Devices
Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Software Documentation
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Program Development, Bioinformatics, Data Storage, Development Testing, Theoretical Computer Science, Computational Thinking, Network Analysis, Test Case, Programming Principles, Computer Programming, Python Programming, C and C++, Java, Rust (Programming Language), Javascript, Software Testing, Debugging
Intermediate · 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, Other Programming Languages, Python Programming, Java Programming, System Programming, Computer Architecture, Performance Tuning, Unix, Computer Science, Debugging
Intermediate · Specialization · 3 - 6 Months