
University of Michigan
Skills you'll gain: Memory Management, C and C++, C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Structures, Software Design, Python Programming, Java, Algorithms, Performance Tuning
★ 4.5 (13) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: C (Programming Language), Game Design, Programming Principles, Video Game Development, System Programming, Program Development, Computational Logic, Data Validation, Command-Line Interface, Code Reusability, User Interface (UI), Data Structures
Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: Command-Line Interface, Linux Commands, Linux, Embedded Systems, Linux Servers, Computer Engineering, File Systems, Unix, Operating Systems, C (Programming Language), File Management, Memory Management, Computer Programming Tools, Computer Programming, Open Source Technology, OS Process Management
★ 4.7 (35) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Debugging, Code Reusability, Computational Thinking, File Management, Programming Principles, C and C++, Program Development, Data Storage, Application Design, Algorithms
Mixed · Course · 1 - 4 Weeks

Politecnico di Milano
Skills you'll gain: Application Specific Integrated Circuits, Systems Design, Computer Architecture, Functional Design, Hardware Architecture, Cloud Infrastructure, Distributed Computing, Computer Systems, Computing Platforms, System Configuration, Embedded Systems
★ 4.6 (247) · Beginner · Course · 1 - 3 Months

Universitat Autònoma de Barcelona
Skills you'll gain: Computer Architecture, Systems Design, Microarchitecture, System Design and Implementation, Technical Design, Application Specific Integrated Circuits, Digital Design, Design Software, Hardware Architecture, Computer Hardware, Simulations
★ 4.3 (858) · Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Real-Time Operating Systems, Embedded Systems, Embedded Software, System Programming, System Design and Implementation, Software Design, OS Process Management, Linux, Systems Analysis, Test Tools, Theoretical Computer Science, Verification And Validation, Algorithms
★ 4.3 (20) · Advanced · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Embedded Systems, Embedded Software, Electronic Systems, Engineering, Scientific, and Technical Instruments, Electronic Hardware, Thermal Management, Electrical and Computer Engineering, Electronics Engineering, Hardware Design, Electronics, Laboratory Experience, Electronic Components, Design Specifications, Schematic Diagrams, Development Environment, Debugging
★ 4.6 (1.2K) · Advanced · Course · 1 - 3 Months
Skills you'll gain: Hardware Design, Field-Programmable Gate Array (FPGA), Data Structures, Electronic Hardware, Computational Logic, Application Specific Integrated Circuits, Electronic Systems, System Design and Implementation, Computer Architecture, Verification And Validation, Embedded Systems, Simulation and Simulation Software, Code Reusability, Test Engineering, Data Synthesis, Analysis, Design, Process Optimization
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Linux, Linux Commands, C (Programming Language), Memory Management, System Programming, Command-Line Interface, Programming Principles, Computer Programming Tools, Computational Logic, Code Reusability, Software Installation, Program Development
Mixed · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: User Research, User Experience Design, User Experience, User Interface and User Experience (UI/UX) Design, Usability, Verification And Validation, UI/UX Research, UI/UX Strategy, Persona (User Experience), Usability Testing, User Centered Design, User Interface (UI) Design, Embedded Systems, Unified Modeling Language
★ 4.1 (17) · Intermediate · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: Computer Programming Tools, C (Programming Language), Programming Principles, Embedded Systems, Software Development Tools, Computer Engineering, Algorithms, Data Structures, Computer Programming, Computational Logic
★ 4.7 (106) · Beginner · Course · 1 - 3 Months