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

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

Skills you'll gain: Embedded Software, Embedded Systems, Pseudocode, Hardware Architecture, Computer Architecture, Software Design, Systems Design, Software Design Patterns, Systems Integration, Programming Principles, Event-Driven Programming, Program Development, Real Time Data, Peripheral Devices
Beginner · Course · 1 - 4 Weeks

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

University of Colorado Boulder
Skills you'll gain: Field-Programmable Gate Array (FPGA), Hardware Design, Verification And Validation, Electronic Systems, Embedded Systems, Electronics Engineering, Application Specific Integrated Circuits, Electronic Hardware, Electronics, Systems Design, Software Design, Program Development, Integrated Development Environments, System Design and Implementation, Computer Architecture, Eclipse (Software), Computational Logic, Hardware Architecture, Software Development, Computer Engineering
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Real-Time Operating Systems, Embedded Systems, Reliability, Software Systems, Performance Tuning, Embedded Software, Control Systems, Hardware Architecture, Systems Architecture, Software Design, Debugging, Software Architecture, Verification And Validation, Hardware Design, System Design and Implementation, Linux, System Programming, Code Review, Systems Engineering, Real Time Data
Build toward a degree
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

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

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: Scenario Testing, Test Planning, Unit Testing, Functional Testing, Test Case, Hardware Troubleshooting
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), System Programming, Embedded Software, Software Testing, Embedded Systems, Linux, Agile Software Development, Docker (Software), Git (Version Control System), File I/O, Linux Commands, Linux Servers, System Software, Linux Administration, Operating Systems, Bash (Scripting Language), Shell Script, C++ (Programming Language), Real-Time Operating Systems
Intermediate · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, Data Structures, System Programming, Microarchitecture, C (Programming Language), Hardware Architecture, Computer Architecture, Software Design, System Configuration, Development Environment, Peripheral Devices
Intermediate · Course · 1 - 4 Weeks