
University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Software Design, Data Structures, Visualization (Computer Graphics), Interactive Design, Programming Principles, Computer Graphic Techniques, Python Programming, Graphic and Visual Design, Event-Driven Programming, Digital Design, Simulations, Computer Graphics, Design, Graphical Tools, Game Design, Computational Logic, Computational Thinking
★ 5 (7) · Beginner · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, Data Structures, System Programming, Microarchitecture, C (Programming Language), Memory Management, Hardware Architecture, Computer Architecture, Software Design, Maintainability, System Configuration, Code Reusability, Software Architecture, Peripheral Devices
★ 4.5 (531) · Intermediate · Course · 1 - 4 Weeks

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Android Development, Android Studio, Mobile Development, User Interface (UI), Mobile Development Tools, Kotlin, Application Development, User Interface (UI) Design, User Interface and User Experience (UI/UX) Design, UI Components, Mobile Security, Data Persistence, Data Management, Geographic Information Systems, Restful API, Performance Tuning, Global Positioning Systems, Application Programming Interface (API), Cloud Storage, Application Performance Management
Intermediate · Course · 1 - 3 Months

University of Alberta
Skills you'll gain: Computational Thinking, Video Game Development, Game Design, Software Quality (SQA/SQC), Problem Solving, Programming Principles, Computer Programming, Program Development, Algorithms, Python Programming, Computer Science, Debugging, Test Planning, Functional Testing, Other Programming Languages
★ 4.3 (236) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Code Reusability, Memory Management, Programming Principles, Data Structures, Development Environment
Beginner · Course · 1 - 4 Weeks

University of Pennsylvania
Skills you'll gain: File I/O, Data Structures, Programming Principles, Computer Programming Tools, Python Programming, Computer Programming, Computational Thinking, Software Development Tools, Development Environment, Data Storage, Functional Design, Integrated Development Environments, Software Documentation, Code Reusability, Data Import/Export, Jupyter
★ 4.6 (1.3K) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Bash (Scripting Language), Test Automation, Unit Testing, Development Testing, Test Script Development, Scripting, Unix Shell, Software Testing, Shell Script, File I/O, Test Driven Development (TDD), Linux Commands, Unix Commands, Scripting Languages, Development Environment, Operating Systems, Linux, Command-Line Interface, File Management, OS Process Management
★ 4.7 (6.6K) · Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), Embedded Software, Agile Software Development, Embedded Systems, Software Testing, Development Testing, Software Development Methodologies, Agile Project Management, Git (Version Control System), Docker (Software), Containerization, Linux, System Programming, Electrical and Computer Engineering, Application Deployment, Operating Systems, File Systems, Internet Of Things, Build Tools
★ 4.7 (20) · Advanced · Course · 1 - 4 Weeks

University of Pennsylvania
Skills you'll gain: File I/O, Matplotlib, Object Oriented Design, Java, Object Oriented Programming (OOP), Data Analysis, Unit Testing, Pandas (Python Package), Java Programming, Eclipse (Software), Application Development, Data Visualization, Data Structures, Data Science, Data Cleansing, Debugging, Programming Principles, Computer Programming Tools, Python Programming, Computer Programming
★ 4.5 (1.9K) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Embedded Software, Embedded Systems, Computer Hardware, Hardware Architecture, Internet Of Things, Hardware Troubleshooting, System Programming, System Software, Peripheral Devices, System Configuration, C (Programming Language), Software Architecture, Simulations, Development Environment, Debugging, Systems Integration
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

Microsoft
Skills you'll gain: Version Control, GitHub, Debugging, Git (Version Control System), Unit Testing, Data Structures, Python Programming, Software Testing, Scripting, Code Reusability, Computer Programming, Web Development, Algorithms, Jupyter
★ 4.5 (545) · Beginner · Course · 1 - 3 Months