
Duke University
Skills you'll gain: Object Oriented Programming (OOP), Java Programming, Object Oriented Design, Software Engineering, Programming Principles, Computer Programming, Computer Programming Tools, Software Design, Algorithms, Data Structures, Data Import/Export, Markov Model, Performance Tuning, Performance Testing, File I/O, Debugging, Application Programming Interface (API)
Beginner · Course · 1 - 3 Months

University of Alberta
Skills you'll gain: Software Architecture, Unified Modeling Language, Systems Architecture, Software Design, Software Design Documents, Software Visualization, Product Family Engineering, Software Development, Software Documentation, Diagram Design, Software Technical Review, Application Deployment, Data Storage
Intermediate · Course · 1 - 4 Weeks

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Development Environment, Engineering Software, Computer Programming, Software Engineering, Data Structures, Memory Management, Computer Programming Tools, Integrated Development Environments, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: CI/CD, Integration Testing, Continuous Integration, Docker (Software), Java, Cloud Deployment, Containerization, Software Design Patterns, Microservices, Build Tools, Cloud-Native Computing
Intermediate · Course · 1 - 4 Weeks

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Interactive Design, Program Development, FinTech, Command-Line Interface
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

University of Alberta
Skills you'll gain: Model View Controller, Software Design Patterns, Software Design, Unified Modeling Language, Object Oriented Design, Code Review, Software Architecture, Programming Principles, Maintainability, Software Technical Review, Java Programming, System Design and Implementation, Java, Diagram Design, Object Oriented Programming (OOP), Code Reusability, Application Design
Intermediate · 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 Colorado Boulder
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Unified Modeling Language, JUnit, Software Testing, Software Engineering, Java, Java Programming, Computer Programming, Unit Testing, Software Design, Test Driven Development (TDD), Diagram Design
Build toward a degree
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, C# (Programming Language), Programming Principles, .NET Framework, Code Reusability
Beginner · Course · 1 - 3 Months

LearnQuest
Skills you'll gain: Unified Modeling Language, Object Oriented Programming (OOP), Object Oriented Design, Test Driven Development (TDD), Software Design Patterns, Software Design, Programming Principles, Software Visualization, Program Development, Computer Programming, Software Development Methodologies, Distributed Computing
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Code Reusability, Data Validation
Intermediate · Course · 3 - 6 Months

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