
Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Virtual Machines, Package and Software Management, Memory Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Code Reusability, Software Design Patterns, Maintainability, Program Development, Functional Design, Programming Principles, Python Programming
Beginner · Course · 1 - 4 Weeks

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: Swift Programming, Apple iOS, iOS Development, Unit Testing, Apple Xcode, Development Testing, Authorization (Computing), Test Case, Mobile Development, Software Testing, Object Oriented Programming (OOP), Data Structures, Object Oriented Design, Application Development, Functional Design
Intermediate · Course · 1 - 4 Weeks

Amazon
Skills you'll gain: File I/O, Object Oriented Programming (OOP), Object Oriented Design, Code Reusability, Java Programming, Java, Software Design, File Management, Data Persistence
Beginner · Course · 1 - 4 Weeks
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Programming Principles, Data Structures, Functional Design, Object Oriented Programming (OOP), Object Oriented Design, Computational Logic, Algorithms
Intermediate · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, User Interface (UI) Design, Algorithms, Software Engineering, Geospatial Mapping, Programming Principles, Software Documentation
Intermediate · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Computer Science, Software Testing, Algorithms, Code Reusability, Graph Theory, C and C++, Computational Logic, Memory Management, Software Design
Intermediate · Specialization · 3 - 6 Months

University of Alberta
Skills you'll gain: Object Oriented Design, Unified Modeling Language, Software Design, Object Oriented Programming (OOP), Java, Java Programming, Maintainability, Code Reusability, Software Design Documents, Application Design, Conceptual Design, Diagram Design, Design Elements And Principles
Intermediate · Course · 1 - 4 Weeks

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Code Reusability
Mixed · Course · 1 - 3 Months

University of Pennsylvania
Skills you'll gain: Object Oriented Design, Java, Object Oriented Programming (OOP), Unit Testing, Java Programming, Application Development, Data Structures, Application Design, Software Testing, Program Development, Programming Principles, Systems Development, Test Driven Development (TDD), Computer Programming, Other Programming Languages
Beginner · Course · 1 - 4 Weeks

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