Theoretical computer science courses can help you learn algorithms, computational complexity, automata theory, and formal languages. You can build skills in problem-solving, mathematical reasoning, and algorithm analysis, that support tackling complex computational tasks. Many courses introduce tools like Python for algorithm implementation, LaTeX for typesetting mathematical documents, and software for simulating automata, allowing you to apply these concepts in practical scenarios.

Coursera
Skills you'll gain: Canva (Software), Graphic Design, Graphic and Visual Design, Design, Design Elements And Principles, Digital Design, Creative Design, Design and Product, Event Management, Computer Programming
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Prompt Engineering, ChatGPT, OpenAI, Generative AI, Storytelling, Writing, Creativity, Responsible AI, Critical Thinking
Beginner · Guided Project · Less Than 2 Hours

DeepLearning.AI
Skills you'll gain: Prompt Engineering, Large Language Modeling, Database Design, LLM Application, Software Documentation, Software Design Patterns, Databases, Test Automation, Collaborative Software, Software Testing, Application Design, Technical Documentation, Generative AI, Database Management, Software Design, Code Review, Software Architecture, Software Engineering, Software Development, Machine Learning
Beginner · Professional Certificate · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), System Programming, Embedded Software, Software Testing, Embedded Systems, Linux, Agile Software Development, Docker (Software), Git (Version Control System), Linux Commands, Linux Administration, Operating Systems, Shell Script, C++ (Programming Language), Debugging, File Systems, Internet Of Things, OS Process Management, Peripheral Devices
Intermediate · Specialization · 1 - 3 Months

Microsoft
Skills you'll gain: Storyboarding, User Research, Information Architecture, User Experience Design, Design Thinking, Prototyping, Usability Testing, User Experience, Persona (User Experience), Wireframing, Design Research, Ideation, User Interface and User Experience (UI/UX) Design, Interaction Design, Web Content Accessibility Guidelines, Human Centered Design, Figma (Design Software), User Centered Design, Design, Artificial Intelligence
Beginner · Professional Certificate · 3 - 6 Months

Johns Hopkins University
Skills you'll gain: C++ (Programming Language), System Programming, Hardware Architecture, Programming Principles, Computer Architecture, Data Access, Program Development, Algorithms, Python Programming, Computer Programming Tools, Data Sharing, Development Environment
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, C and C++, Object Oriented Programming (OOP), Computer Programming, Unit Testing, Algorithms, Computer Science, Debugging, Integration Testing, Software Design
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Kotlin, Object Oriented Programming (OOP), Programming Principles, Android Development, Data Structures, Computer Programming, Mobile Development, Integrated Development Environments, Debugging
Beginner · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: Performance Tuning, OS Process Management, Data Structures, C and C++, Performance Testing, Distributed Computing, Hardware Architecture, Algorithms, Computer Architecture, Program Development, Debugging
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Penetration Testing, Application Security, Vulnerability Scanning, Secure Coding, Exploitation techniques, Software Design Patterns, Vulnerability Assessments, Amazon Web Services, SQL, Amazon Elastic Compute Cloud, Operating Systems, C (Programming Language)
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Network Troubleshooting, Virtual Local Area Network (VLAN), Computer Displays, Peripheral Devices, TCP/IP, Display Devices, Local Area Networks, Networking Hardware, Dynamic Host Configuration Protocol (DHCP), General Networking, USB, Wireless Networks, Computer Networking, Network Routers, Network Infrastructure, Hardware Troubleshooting, Network Switches, Network Protocols, Computer Hardware
Beginner · Course · 1 - 3 Months

Skills you'll gain: Unified Modeling Language, Data Modeling, Data Structures, Scripting, Object Oriented Programming (OOP), Python Programming, Software Design, Computer Programming, Software Engineering
Beginner · Course · 1 - 4 Weeks