
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

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, Test Case, System Programming, Systems Development Life Cycle, Computer Programming, Data Structures, C and C++, Software Engineering, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

L&T EduTech
Skills you'll gain: Embedded Systems, Embedded Software, Automation Engineering, Machine Controls, Control Systems, Robotics, Cyber Engineering, Internet Of Things, C (Programming Language), Automation, Engineering, Scientific, and Technical Instruments, Simulation and Simulation Software, Systems Integration, Cloud Computing, Integrated Development Environments, Electronic Components, Computer Hardware, Matlab
Intermediate · Course · 1 - 4 Weeks

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 Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), C and C++, Statistical Analysis, Data Presentation, Automation, Program Development, Algorithms, Microsoft Development Tools, Programming Principles, Integrated Development Environments, Computer Programming, Data Structures, Data Storage, Code Reusability
Beginner · Specialization · 3 - 6 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
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C and C++, Data Structures, Secure Coding, Application Security, System Programming, Programming Principles
Intermediate · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Graph Theory, Object Oriented Design, C (Programming Language), Artificial Intelligence, Algorithms, Data Structures, Memory Management, Simulations
Intermediate · Course · 1 - 3 Months

Skills you'll gain: AI Workflows, Agentic Workflows, AI Orchestration, Agentic systems, Generative AI Agents, Prompt Patterns, OpenAI, LLM Application, Artificial Intelligence and Machine Learning (AI/ML), Tool Calling, OpenAI API, Software Design Patterns, Development Environment, Application Programming Interface (API), Large Language Modeling
Intermediate · Course · 1 - 3 Months

Dassault Systèmes
Skills you'll gain: Computer-Aided Design, Design Software, Technical Design, 3D Modeling, Mechanical Engineering
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Software Design Patterns, Software Engineering, Java, Unified Modeling Language, Software Design, Java Programming, Software Architecture, Model View Controller, Conceptual Design
Build toward a degree
Intermediate · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C and C++, C++ (Programming Language), Algorithms, Memory Management, Data Structures, Other Programming Languages, Numerical Analysis
Intermediate · Course · 1 - 4 Weeks