Object Oriented Design courses can help you learn principles like encapsulation, inheritance, and polymorphism, along with design patterns such as Singleton and Factory. You can build skills in creating reusable code, improving software maintainability, and designing systems that are easier to understand and extend. Many courses introduce tools like UML for modeling, as well as programming languages such as Java and Python, which are commonly used to implement object-oriented concepts in real-world applications.

Skills you'll gain: Jest (JavaScript Testing Framework), Django (Web Framework), Bootstrap (Front-End Framework), Version Control, Restful API, Responsive Web Design, Cascading Style Sheets (CSS), Unix Commands, Git (Version Control System), Hypertext Markup Language (HTML), Back-End Web Development, React.js, API Testing, GitHub, Relational Databases, Object Oriented Programming (OOP), Database Management Systems, HTML and CSS, Mobile Development, Python Programming
Beginner · Specialization · 3 - 6 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Functional Design, Computer Programming, Data Structures, Code Reusability, Other Programming Languages, Computational Logic
Intermediate · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, Application Design, User Interface (UI), Distributed Computing, Programming Principles, Leaflet (Software), Big Data, Data Processing, Data Structures, Software Design Patterns, Functional Design, Object Oriented Design, Data Manipulation, Object Oriented Programming (OOP), Interactive Data Visualization, Scientific Visualization, Computer Programming, Algorithms
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Unit Testing, Software Development Life Cycle, Linux Commands, Software Architecture, Bash (Scripting Language), Shell Script, Git (Version Control System), GitHub, Full-Stack Web Development, Flask (Web Framework), Software Design, Version Control, File Management, Unix Shell, Web Development, Linux, Application Deployment, Data Import/Export, Python Programming, NumPy
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: NoSQL, Extract, Transform, Load, Database Administration, Apache Spark, Data Warehousing, Web Scraping, Data Pipelines, Apache Hadoop, Database Architecture and Administration, Database Design, Linux Commands, SQL, IBM Cognos Analytics, Data Store, Generative AI, Professional Networking, Data Import/Export, Python Programming, Data Analysis, Data Science
Build toward a degree
Beginner · Professional Certificate · 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), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, C and C++, Unit Testing, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Software Testing, Code Reusability, Memory Management
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Cloud Deployment, Unit Testing, Software Development Life Cycle, Open Web Application Security Project (OWASP), Istio, Cloud-Native Computing, Linux Commands, Software Architecture, Application Deployment, Kubernetes, Bash (Scripting Language), Shell Script, Django (Web Framework), Object-Relational Mapping, OpenShift, Git (Version Control System), Grafana, Microservices, Data Import/Export, Python Programming
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, ChatGPT, Generative AI, Data Ethics, Generative AI Agents, Model Deployment, Restful API, Software Design Documents, Software Design, AI Integrations, Application Deployment, AI literacy, Software Architecture, Agentic Workflows, Continuous Integration, Software Development, LLM Application, Artificial Intelligence and Machine Learning (AI/ML), Java Programming
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, ChatGPT, Generative AI, Data Ethics, Generative AI Agents, AI Personalization, Mobile Development, AI powered creativity, Software Design Documents, Software Design, Anthropic Claude, Mobile Development Tools, LLM Application, AI literacy, iOS Development, AI Integrations, Personalized Campaigns, Software Development, Artificial Intelligence and Machine Learning (AI/ML)
Advanced · Specialization · 3 - 6 Months

Skills you'll gain: User Research, Cascading Style Sheets (CSS), Hypertext Markup Language (HTML), User Experience Design, Design Research, Linux Commands, Unix, Usability, User Centered Design, Experience Design, Debugging, Software Visualization, Web Content Accessibility Guidelines, Pseudocode, User Interface and User Experience (UI/UX) Design, Javascript, UI Components, Unit Testing, Code Reusability, Application Development
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months
Skills you'll gain: Project Management Life Cycle, Change Management, Project Management, Organizational Change, Organizational Structure, Program Management, Project Planning, AI Enablement, Strategic Thinking
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Software Development Life Cycle, Cloud-Native Computing, Software Architecture, Hibernate (Java), Database Design, Responsive Web Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Object Oriented Programming (OOP), CI/CD, Restful API, Data Ethics, Java Programming, Model Deployment, Version Control, Database Management, Software Development, Software Design
Beginner · Professional Certificate · 3 - 6 Months