
Skills you'll gain: Software Design Patterns, Software Design, C++ (Programming Language), Software Architecture, Programming Principles, Object Oriented Programming (OOP), Maintainability, Prototyping, Database Application
Intermediate · Course · 1 - 3 Months

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

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

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Software Design Patterns, Data Structures, File Systems, Algorithms, Maintainability, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Data Structures, Interactive Design, Other Programming Languages, Application Development, Program Development, Computer Programming, Java Programming, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

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

Peking University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Data Storage, Theoretical Computer Science, Computational Thinking, Computer Programming, C (Programming Language), C++ (Programming Language)
Mixed · Course · 1 - 3 Months

Coursera
Skills you'll gain: C++ (Programming Language), Data Structures, Data Store, Data Cleansing, Data Mapping, Data Import/Export, Data Validation, Data Integrity
Intermediate · Guided Project · Less Than 2 Hours

Duke University
Skills you'll gain: Maintainability, Program Development, C (Programming Language), Software Engineering, System Programming, Programming Principles, Software Development, Simulations, Command-Line Interface, Operating Systems, User Interface (UI), Interactive Design, Data Structures, Debugging, File Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), System Programming, Software Development
Intermediate · Guided Project · Less Than 2 Hours

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

Peking University
Skills you'll gain: C (Programming Language), Programming Principles, Data Structures, Computer Science, Theoretical Computer Science, Computer Architecture, Computer Programming, Computational Thinking, Algorithms, Emerging Technologies
Mixed · Course · 3 - 6 Months