Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Electronics, Software Development Tools, Hardware Architecture, Data Structures, Electronic Hardware, Microarchitecture, Programming Principles, Performance Tuning, Computer Architecture, Control Systems, Computer Programming
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Program Development, Integrated Development Environments, Pseudocode, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Theoretical Computer Science, Computer Programming, Pseudocode, Algorithms, Computer Science, Formal Learning, Software Engineering, Program Development, Data Science, Analysis, Debugging, Technical Analysis
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Rust (Programming Language), Data Structures, Package and Software Management, Blockchain, Web Development, Development Environment, Programming Principles, Web Servers, Restful API, System Programming, Maintainability, Algorithms, Integrated Development Environments, Software Testing, Unit Testing, Software Design Patterns, Development Testing, Debugging
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Software, Performance Tuning, System Programming, Software Development Tools, Embedded Systems, Software Development, Hardware Architecture, Debugging, Application Security, Microarchitecture, Computer Architecture, C (Programming Language), Digital Signal Processing, System Configuration, Application Development, Security Engineering, C++ (Programming Language), System Requirements
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, Java Programming, System Programming, Computer Architecture, Performance Tuning, Unix, Computer Science, Debugging
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Verification And Validation, Systems Design, Software Design, Computational Logic, Computer Engineering, Embedded Systems, Hardware Architecture, Simulations, Test Automation
Intermediate · Course · 1 - 4 Weeks
Dartmouth College
Skills you'll gain: Command-Line Interface, C (Programming Language), Linux Commands, Linux, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Software Configuration Management, Embedded Software, Embedded Systems, Git (Version Control System), Version Control, Build Tools, Software Development Tools, C (Programming Language), Development Environment, Software Technical Review, Software Design, Hardware Architecture, Computer Architecture, Debugging
Intermediate · Course · 1 - 4 Weeks

Pearson
Skills you'll gain: System Programming, Rust (Programming Language), Data Structures, Relational Databases, Other Programming Languages, Databases, Debugging, Programming Principles, Application Development, Secure Coding, SQL, Object Oriented Programming (OOP), C++ (Programming Language), Interoperability, Software Development, File I/O, Command-Line Interface, Data Import/Export
Beginner · Specialization · 1 - 3 Months

EDUCBA
Skills you'll gain: Real-Time Operating Systems, Software Development, Software Design, Software Architecture, Embedded Systems, Configuration Management, Systems Architecture, Application Development, Extensible Markup Language (XML)
Beginner · Course · 1 - 4 Weeks
Skills you'll gain: SQL, SAS (Software), Database Management, Query Languages, Case Studies, Data Access, Program Development, Statistical Programming, Data Presentation, Scripting, Perl (Programming Language), Data Processing, Automation, Data Integration, Stored Procedure, Data Manipulation, Data Transformation, Debugging, Data Validation, Data Analysis
Build toward a degree
Intermediate · Professional Certificate · 3 - 6 Months