
Coursera
Skills you'll gain: Embedded Software, Real-Time Operating Systems, Embedded Systems, Software Architecture, Pseudocode, Systems Architecture, Software Systems, Hardware Architecture, Computer Hardware, System Programming, Computer Architecture, Software Design, Cross Platform Development, Application Design, Systems Design, Software Design Patterns, Internet Of Things, Systems Integration, Maintainability, Peripheral Devices
Intermediate · Specialization · 1 - 3 Months

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

University of Colorado Boulder
Skills you'll gain: Field-Programmable Gate Array (FPGA), Hardware Design, Electronic Hardware, Laboratory Experience, Application Specific Integrated Circuits, Embedded Software, Systems Design, Embedded Systems, Electronics Engineering, Electronic Systems, Electrical and Computer Engineering, Test Case, Verification And Validation, Engineering Documentation, Debugging, Computer Architecture, Software Development, Software Development Tools, Integrated Development Environments, Hardware Architecture
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Debugging, C++ (Programming Language), Software Documentation, API Design, Program Development, Pseudocode, Software Architecture, Software Design, Maintainability, Computational Thinking, System Programming, Data Structures, Programming Principles, Object Oriented Programming (OOP), Computer Programming, Generative AI Agents, Integrated Development Environments, Technical Documentation, Generative AI, Application Development
Beginner · Professional Certificate · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), Embedded Software, Embedded Systems, System Programming, Agile Software Development, Linux, Software Testing, Development Testing, Software Development Methodologies, Git (Version Control System), Docker (Software), Containerization, File Systems, Shell Script, Debugging, Operating Systems, Internet Of Things, Peripheral Devices, Electrical Engineering
Intermediate · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Real-Time Operating Systems, Systems Architecture, Embedded Software, Software Design, System Design and Implementation, Embedded Systems, System Programming, Software Systems, Electronic Systems, Systems Design, Hardware Architecture, Software Architecture, Requirements Analysis, Real Time Data, Linux, Service Level, OS Process Management, System Requirements, Debugging, Algorithms
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

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

Duke University
Skills you'll gain: Debugging, File I/O, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Graph Theory, Debugging, Artificial Intelligence, Data Structures, Game Design, Software Documentation
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Systems, Embedded Software, Robotics, Electronic Systems, PIC Microcontrollers, Computer Systems, Internet Of Things, Automation, Control Systems, C (Programming Language), Peripheral Devices, Wireless Networks, Medical Devices, Electric Power Systems, Computer Architecture, Civil Engineering, Cybersecurity, Public Works, Cloud Computing, Electronic Hardware
Intermediate · Specialization · 3 - 6 Months