
University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Graph Theory, Object Oriented Design, C (Programming Language), Artificial Intelligence, Algorithms, Data Structures, Memory Management, Simulations
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Embedded Software, Linux, Linux Administration, File Systems, Shell Script, Package and Software Management, Electrical Engineering
★ 4.3 (150) · Advanced · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, File I/O, Computer Programming, Microsoft Visual Studio, Computer Programming Tools, Integrated Development Environments, System Programming, Programming Principles, Apple Xcode, Code Reusability, Development Environment, Algorithms, File Systems, Software Design Patterns, Data Structures, Performance Tuning, Debugging, File Management
★ 4.4 (27) · Intermediate · Specialization · 3 - 6 Months

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

University of California, Santa Cruz
Skills you'll gain: C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Memory Management, C (Programming Language), Algorithms, File I/O, Graph Theory, Data Structures, Secure Coding, Scaled Agile Framework
Intermediate · Course · 1 - 3 Months

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

Skills you'll gain: Embedded Software, Debugging, Embedded Systems, Memory Management, Integrated Development Environments, C (Programming Language), Computer Programming Tools, Development Environment, C and C++, Software Development Tools, System Programming, Eclipse (Software), Build Tools, Programming Principles, Data Storage
★ 4.8 (71) · Intermediate · Course · 1 - 4 Weeks

EDUCBA
Skills you'll gain: C (Programming Language), Embedded Systems, Embedded Software, Debugging, System Programming, Systems Architecture, Hardware Architecture, Microarchitecture, Data Structures, Peripheral Devices, Memory Management, Computational Logic
★ 4.1 (133) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Graph Theory, Algorithms, Game Theory, Data Structures, Computer Programming, Computational Thinking, Problem Solving
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Game Design, Programming Principles, Debugging, Code Reusability, Data Modeling, Video Game Development, Computational Thinking, File Management, System Programming, Data Integrity, C and C++, Program Development, Application Development, Data Storage, Computational Logic, Data Maintenance, Animation and Game Design
Beginner · Specialization · 1 - 3 Months

Simplilearn
Skills you'll gain: Data Structures, C (Programming Language), C and C++, Programming Principles, Data Management, Memory Management, Algorithms, Computer Programming, File I/O, File Management, Other Programming Languages, Development Environment
★ 4.5 (24) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, System Programming, Cross Platform Development, System Software, Memory Management, Hardware Architecture, Peripheral Devices, Product Family Engineering, Code Reusability, Performance Tuning, Software Design, C (Programming Language), Scalability
Advanced · Course · 1 - 4 Weeks