
Skills you'll gain: Electronic Components, Swift Programming, Basic Electrical Systems, Internet Of Things, Electronics, Electronic Systems, PIC Microcontrollers, Embedded Software, Electronic Hardware, Test Equipment, Hardware Troubleshooting, Programming Principles, Electrical Engineering, Electrical Equipment, Embedded Systems, Wireless Networks, Semiconductors, Application Development, Display Devices, Debugging
Beginner · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Real-Time Operating Systems, Systems Architecture, Software Architecture, Embedded Software, Software Design, System Design and Implementation, Embedded Systems, Performance Tuning, Systems Analysis, Electronic Hardware, Hardware Design, Electronic Systems, Systems Design, Hardware Architecture, Electrical and Computer Engineering, Requirements Analysis, System Programming, Reliability, Operating Systems, Service Level
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Software, Embedded Systems, C and C++, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Computer Programming Tools, Code Reusability, System Configuration, Peripheral Devices, Software Installation
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, Test Case, System Programming, Systems Development Life Cycle, Computer Programming, Data Structures, C and C++, Software Engineering, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

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
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, C (Programming Language), Software Design, Program Development, Algorithms, Graph Theory, Software Testing, Computer Science, Computational Logic
Intermediate · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), Object Oriented Design, File I/O, C++ (Programming Language), C and C++, Debugging, Game Design, Computer Programming, Event-Driven Programming, Computer Programming Tools, Video Game Development, Unity Engine, Data Structures, C# (Programming Language), Data Storage, 3D Assets, Development Environment, Software Documentation, Program Development
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Real-Time Operating Systems, Embedded Software, Embedded Systems, System Software, Software Architecture, Computer Engineering, Hardware Architecture, Systems Architecture, Build Tools, Dependency Analysis, Cross Platform Development, Linux, Software Design Patterns, C++ (Programming Language)
Intermediate · Course · 1 - 4 Weeks

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

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

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
Beginner · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), C and C++, Electronic Components, Computer Hardware, Integrated Development Environments, Programming Principles, Computer Programming, Electronics Engineering, Program Development, Software Installation, Development Environment, Digital Communications, Build Tools
Mixed · Course · 1 - 4 Weeks