
Coursera
Skills you'll gain: Embedded Software, Real-Time Operating Systems, Embedded Systems, Software Architecture, Code Reusability, Pseudocode, Microarchitecture, Memory Management, Systems Architecture, Computer Hardware, System Programming, Computer Architecture, Software Design, Cross Platform Development, Software Systems, Hardware Architecture, Systems Design, Software Design Patterns, Internet Of Things, Hardware Troubleshooting
Intermediate · Specialization · 1 - 3 Months
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Memory Management, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Software Development Tools, Program Development, Hardware Architecture, Systems Architecture, Eclipse (Software), Data Structures, Build Tools, C and C++, Programming Principles, Microarchitecture
★ 4.5 (274) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: File I/O, Memory Management, Debugging, C++ (Programming Language), C and C++, Software Documentation, Development Testing, Code Reusability, Vibe coding, Programming Principles, API Design, Program Development, Pseudocode, Software Architecture, Software Design, Functional Design, Performance Tuning, Generative AI Agents, Application Design, Technical Documentation
★ 4.5 (26) · Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: C and C++, C++ (Programming Language), Development Environment, Performance Tuning, Test Tools, System Programming, Docker (Software), Computer Architecture, Containerization, Development Testing, Programming Principles, Software Development Tools, Hardware Architecture, Algorithms, Computer Programming, Python Programming, Debugging, Memory Management, Software-Defined Networking, Scripting
Intermediate · Course · 1 - 3 Months

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

University of Colorado Boulder
Skills you'll gain: Field-Programmable Gate Array (FPGA), Hardware Design, Laboratory Experience, Laboratory Reports, Application Specific Integrated Circuits, System Design and Implementation, Embedded Software, Embedded Systems, Electronic Hardware, Electronic Systems, Electrical and Computer Engineering, Eclipse (Software), Electronics Engineering, Test Case, Laboratory Testing, Test Script Development, Verification And Validation, Microarchitecture, Computer Architecture, Software Development
★ 4.5 (1.7K) · Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Data Structures, Secure Coding, Algorithms, Software Design, Application Security, Other Programming Languages, Python Programming, System Programming, Computer Architecture, Computer Programming, Java, Performance Tuning, Numerical Analysis
★ 4.5 (245) · Intermediate · Specialization · 3 - 6 Months

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: Software Configuration Management, Embedded Software, Embedded Systems, Configuration Management, Git (Version Control System), Version Control, Memory Management, Build Tools, Software Development Tools, C (Programming Language), Development Environment, Program Development, Code Review, Software Technical Review, Software Design, Make.com
★ 4.5 (651) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Data Presentation, Scientific Visualization, Application Development, Object Oriented Design, Data Visualization Software, Statistical Visualization, Plot (Graphics), Application Design, Visualization (Computer Graphics), Programming Principles, Data Visualization, Graphical Tools, C and C++, Computational Thinking, Computer Graphic Techniques, Program Development, Graphic and Visual Design, Software Visualization
★ 2.8 (6) · Beginner · Specialization · 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, Linux Administration, Software Development Methodologies, Agile Project Management, Git (Version Control System), Docker (Software), Containerization, System Software, Electrical and Computer Engineering, File Systems, Shell Script, Debugging
★ 4.4 (176) · Intermediate · Specialization · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
★ 4.5 (9.6K) · Beginner · Specialization · 3 - 6 Months