
Duke University
Skills you'll gain: Debugging, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Pseudocode, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Object Oriented Design, Algorithms, Data Structures, Pseudocode, Command-Line Interface, Graph Theory, Artificial Intelligence, File Systems, Game Design
Beginner · Specialization · 3 - 6 Months
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Integrated Development Environments, Development Environment, Electronic Hardware, System Programming, Electronics, Software Development Tools, Program Development, Hardware Architecture, Data Structures, Microarchitecture, System Configuration, Programming Principles, Performance Tuning, Computer Architecture, Computer Programming
Intermediate · 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, System Programming, Computer Architecture, Java, Performance Tuning, Unix, Computer Science, Debugging
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Microsoft Visual Studio, System Programming, Programming Principles, Apple Xcode, Software Installation, Development Environment, Algorithms, File Systems, Software Design Patterns, Data Structures, Performance Tuning, Debugging, File Management
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Software, Embedded Systems, System Programming, Cross Platform Development, Hardware Architecture, Peripheral Devices, Serial Peripheral Interface, Performance Tuning, Software Design, Real Time Data, Technical Design, C (Programming Language), Debugging, System Configuration, Maintainability, Scalability, Data Mapping
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: Software Design, Programming Principles
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Programming Principles, Maintainability, Data Validation
Intermediate · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: C++ (Programming Language), API Design, Software Architecture, Software Design, Maintainability, Data Structures, Data Validation, Performance Tuning, Generative AI, File Management, Debugging
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), Data Structures, Application Security, System Programming, Programming Principles, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Data Structures, Software Design Patterns, Programming Principles, File Management, Algorithms, Simulations
Advanced · Course · 1 - 4 Weeks

Infosec
Skills you'll gain: Secure Coding, Application Security, Computer Programming Tools, System Programming, C++ (Programming Language), C (Programming Language), Software Development Tools, Exploit development, Debugging, Programming Principles, Embedded Systems, Interoperability, Unix, Vulnerability Assessments, Unix Commands, Operating Systems, Data Security, Linux, Microsoft Windows, Data Validation
Intermediate · Specialization · 3 - 6 Months