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, 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 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: Debugging, C++ (Programming Language), Software Documentation, API Design, Program Development, Pseudocode, Software Architecture, Software Design, Maintainability, Computational Thinking, System Programming, Data Structures, Programming Principles, Computer Programming, Generative AI Agents, Integrated Development Environments, Technical Documentation, Generative AI, Application Development, Data Validation
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Game Design, Programming Principles, Debugging, Data Modeling, Computational Thinking, Data Integrity, Program Development, Application Development, Data Maintenance, Computational Logic, Data Validation, Command-Line Interface, Application Design, Animation and Game Design, User Interface (UI), Algorithms, Data Structures
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Application Development, Object Oriented Design, Data Visualization Software, Visualization (Computer Graphics), Programming Principles, Computer Graphics, Solution Design, Computational Thinking, Graphing, Verification And Validation, Development Environment, Software Visualization, Graphic and Visual Design, Data Presentation, Application Design, Data Validation, C and C++, Program Development
Beginner · 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 California, Irvine
Skills you'll gain: Test Planning, Embedded Systems, Linux, Internet Of Things, Embedded Software, Basic Electrical Systems, Automation Engineering, User Requirements Documents, Electronics, Functional Requirement, Operating System Administration, Electronic Components, Systems Design, Operating Systems, Requirements Analysis, Network Protocols, Debugging, Application Programming Interface (API), TCP/IP, Python Programming
Beginner · Specialization · 3 - 6 Months

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, Linux Administration, Operating Systems, Bash (Scripting Language), Shell Script, C++ (Programming Language), Debugging, Internet Of Things
Intermediate · Specialization · 1 - 3 Months

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

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

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), Electronic Components, Computer Hardware, Integrated Development Environments, Computer Programming, Electronics Engineering, Network Protocols, Development Environment, Digital Communications, Open Source Technology
Mixed · Course · 1 - 4 Weeks