
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, Eclipse (Software), Test Case, Laboratory Testing, Test Script Development, Verification And Validation, Engineering Documentation, Microarchitecture, Debugging, Computer Architecture, Software Development
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Validation, Programming Principles, Computer Programming, Data Integrity, Data Structures, Code Reusability, File Management, Integrated Development Environments, Data Store, Memory Management, Software Documentation, Computer Science, Pseudocode, Maintainability
Beginner · Specialization · 3 - 6 Months

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

Simplilearn
Skills you'll gain: Data Structures, C (Programming Language), C and C++, Programming Principles, Data Management, Memory Management, Algorithms, Computer Programming, File I/O, File Management, Other Programming Languages, Development Environment
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Code Reusability, Memory Management, Programming Principles, Data Structures, Development Environment
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, System Programming, Cross Platform Development, System Software, Memory Management, Hardware Architecture, Peripheral Devices, Product Family Engineering, Code Reusability, Performance Tuning, Software Design, C (Programming Language), Scalability
Advanced · Course · 1 - 4 Weeks

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

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, Software Design Patterns, Debugging, Computer Programming, Programming Principles, Unit Testing, Algorithms, C (Programming Language), Program Development, Software Design, Graph Theory, Software Testing, Computer Science, Code Reusability
Intermediate · Specialization · 3 - 6 Months

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

Microsoft
Skills you'll gain: Debugging, Program Development, Software Documentation, Pseudocode, C++ (Programming Language), Programming Principles, Computer Programming, Computer Programming Tools, Memory Management
Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), C and C++, Programming Principles, Memory Management, Hardware Architecture, Computational Logic, Computer Architecture, Computer Programming, Peripheral Devices, Data Storage
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Wireless Networks, C++ (Programming Language), C and C++, Computer Programming, Control Systems, Interactive Design, Software Installation, Electronic Components, Electronic Hardware, Telecommunications, Electronic Systems, Code Reusability, Hardware Design, Electronics, Program Development, Communication Systems, Programming Principles, Display Devices
Intermediate · Specialization · 3 - 6 Months