
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
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

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

Skills you'll gain: C and C++, C++ (Programming Language), Development Environment, Performance Tuning, Distributed Computing, Docker (Software), Development Testing, Programming Principles, Algorithms, Computer Programming, Python Programming, Debugging, Software-Defined Networking, Computer Hardware, Scripting
Intermediate · Course · 1 - 3 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 California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Program Development, Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, Software Documentation
Intermediate · 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

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 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: 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

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

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Basic Electrical Systems, Wireless Networks, C and C++, Computer Programming, Control Systems, Interactive Design, Software Installation, Electronic Components, C++ (Programming Language), Electronics, Display Devices, Embedded Software, Embedded Systems, Robotics, Computer Programming Tools, Development Environment, Integrated Development Environments, Electrical Wiring
Intermediate · Specialization · 3 - 6 Months