
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, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, Software Documentation
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Programming Principles, Software Testing, Data Structures, Python Programming, Computer Programming, Development Environment, Integrated Development Environments, Debugging, Django (Web Framework), Cloud Hosting
Beginner · Course · 1 - 3 Months

Coursera
Skills you'll gain: Embedded Software, Real-Time Operating Systems, Embedded Systems, Software Architecture, Pseudocode, Systems Architecture, Software Systems, Hardware Architecture, Computer Hardware, System Programming, Computer Architecture, Software Design, Cross Platform Development, Application Design, Systems Design, Software Design Patterns, Internet Of Things, Systems Integration, Maintainability, Peripheral Devices
Intermediate · Specialization · 1 - 3 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

Logical Operations
Skills you'll gain: Data Structures, Data Processing, Virtual Machines, Verification And Validation, Program Development, Data Preprocessing, Python Programming, Debugging, Maintainability, Programming Principles, Application Development, Scripting, Scripting Languages, Computer Programming, Software Installation, Development Environment, Software Development, Computer Programming Tools, Functional Design, Cross Platform Development
Beginner · Specialization · 1 - 3 Months
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
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

Microsoft
Skills you'll gain: Web Scraping, Data Structures, Git (Version Control System), Generative AI, Version Control, Matplotlib, Devops Tools, Plotly, DevOps, Agile Methodology, Web Development, Data Ethics, Flask (Web Framework), Data Visualization, Scripting, GitHub, Debugging, Data Analysis, Automation, Cloud Computing
Beginner · Professional Certificate · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), Embedded Software, Embedded Systems, System Programming, Agile Software Development, Linux, Software Testing, Development Testing, Software Development Methodologies, Git (Version Control System), Docker (Software), Containerization, File Systems, Shell Script, Debugging, Operating Systems, Internet Of Things, Peripheral Devices, Electrical Engineering
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Program Development, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Problem Management, Data Structures, Integrated Development Environments, Debugging, Development Environment
Beginner · Course · 1 - 3 Months

Intermediate · Course · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Test Planning, Embedded Systems, Linux, Internet Of Things, Embedded Software, Network Protocols, Basic Electrical Systems, Automation Engineering, User Requirements Documents, Electronics, Functional Requirement, Operating System Administration, Electronic Components, Systems Design, Operating Systems, Requirements Analysis, Debugging, Application Programming Interface (API), TCP/IP, Python Programming
Beginner · Specialization · 3 - 6 Months