
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

Microsoft
Skills you'll gain: File I/O, Memory Management, C and C++, C++ (Programming Language), Code Reusability, Vibe coding, API Design, Software Architecture, Software Design, Functional Design, Maintainability, Data Import/Export, Data Structures, AI literacy, AI Integrations, Data Validation, Performance Tuning, Secure Coding, Build Tools, Package and Software Management
Beginner · Course · 1 - 3 Months

Skills you'll gain: Command-Line Interface, C# (Programming Language), .NET Framework, Performance Tuning, Development Environment, Maintainability, Microsoft Development Tools, Application Programming Interface (API), Software Design, Restful API, Software Development Tools, File I/O, Authentications, Application Security, Software Testing, Unit Testing, Package and Software Management
Beginner · Course · 3 - 6 Months

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Code Reusability
★ 4.9 (463) · Mixed · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, Software Testing, Program Development, Test Planning, Simulations, Test Case, Computer Programming, Programming Principles, Algorithms, C (Programming Language), Build Tools
★ 4.3 (827) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, C and C++, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Computer Programming Tools, Code Reusability, System Configuration, Peripheral Devices, Software Installation
Intermediate · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: Memory Management, C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, Embedded Software, System Programming, Computer Programming, Data Structures, Linux
★ 4.7 (65) · Beginner · Course · 1 - 3 Months

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

University of Colorado Boulder
Skills you'll gain: Semiconductors, Power Electronics, Electronic Components, Electronic Systems, Electronics Engineering, Electronics, Electrical Power, Electrical Engineering, Thermal Management, Simulation and Simulation Software
★ 3.5 (8) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Memory Management, Computational Thinking
Intermediate · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Software Documentation, Programming Principles, Computer Programming, Embedded Software, Computer Programming Tools, Computational Logic, Linux
★ 4.6 (265) · Beginner · Course · 1 - 3 Months

Xi'an Jiaotong University
Skills you'll gain: Operating Systems, System Software, Computer Networking, Computer Architecture, OS Process Management, Microsoft Office, Network Architecture, TCP/IP, Hardware Architecture, General Networking, Computer Systems, Theoretical Computer Science, Computer Hardware, Information Technology, Network Protocols, Memory Management, Computer Literacy, Programming Principles, Computing Platforms, Computational Logic
★ 3.9 (35) · Mixed · Course · 1 - 3 Months