Free courses can help you learn coding languages like Python and JavaScript, data analysis techniques, and web development fundamentals. You can build skills in problem-solving, algorithm design, and creating interactive websites. Many courses introduce tools such as Git for version control, SQL for database management, and various frameworks that streamline web development, allowing you to apply your skills in practical projects.

University of Colorado Boulder
Skills you'll gain: Software Configuration Management, Embedded Software, Embedded Systems, Configuration Management, Git (Version Control System), Version Control, Memory Management, Build Tools, Software Development Tools, C (Programming Language), Development Environment, Program Development, Code Review, Software Technical Review, Software Design, Debugging, Make.com
Intermediate · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Algorithms, C (Programming Language), Computer Programming, Graph Theory, Code Reusability, Memory Management, Data Structures, File I/O
Intermediate · Course · 1 - 3 Months

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Graph Theory, Development Environment, Data Storage, Engineering Software, Unstructured Data, Computer Programming, Software Engineering, Algorithms, Memory Management, Computer Programming Tools, Debugging, Program Development, Database Systems, Theoretical Computer Science
Intermediate · Specialization · 1 - 3 Months
LearnQuest
Skills you'll gain: Java Programming, Spring Framework, Java, File I/O, Object Oriented Programming (OOP), Object Oriented Design, Java Platform Enterprise Edition (J2EE), Programming Principles, Software Design, Computer Programming, Application Frameworks, Data Structures, Software Installation, Virtual Machines, Code Reusability, Web Development, Package and Software Management, Memory Management, Computational Logic, Development Environment
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Mainframe Computing, Mainframe Technologies, z/OS, Virtualization, Virtualization and Virtual Machines, Virtual Machines, Hardware Architecture, Infrastructure Architecture, Computing Platforms, Computer Architecture, Enterprise Security, Computer Hardware, Cryptography, Transaction Processing, System Configuration, Authorization (Computing), Identity and Access Management, Memory Management
Beginner · Course · 1 - 4 Weeks

28DIGITAL
Skills you'll gain: Real-Time Operating Systems, Embedded Software, Embedded Systems, Internet Of Things, Operating Systems, Application Development, Wireless Networks, Communication Systems, Hardware Architecture, OS Process Management, Network Protocols, C (Programming Language), Simulations, Network Performance Management, Memory Management
Intermediate · Course · 1 - 4 Weeks

Scrimba
Skills you'll gain: Model Context Protocol, Prompt Engineering, Retrieval-Augmented Generation, LangChain, OpenAI API, Prompt Patterns, Embeddings, Image Analysis, Responsible AI, AI Workflows, OpenAI, LLM Application, AI Integrations, Cloud Deployment, Cloud Applications, Multimodal Prompts, Memory Management, Hugging Face, Vector Databases, Software Engineering
Intermediate · Specialization · 3 - 6 Months

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: API Gateway, Restful API, API Design, Application Programming Interface (API), Cloud API, Google Cloud Platform, Application Lifecycle Management, Proxy Servers, Software Documentation, Application Development, Enterprise Architecture, Development Environment, Application Deployment, Authorization (Computing), Authentications, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), File I/O, Data Persistence, Object Oriented Design, Java, Java Programming, File Management, Memory Management, Code Reusability, Application Development, File Systems, Maintainability, Computer Programming, Software Design, Development Environment, Program Development, Programming Principles, Computer Programming Tools, Data Structures, Integrated Development Environments
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Design, Software Design Patterns, Object Oriented Programming (OOP), Software Design, Programming Principles, C (Programming Language), Algorithms, Memory Management, Graph Theory, Artificial Intelligence, Data Structures, Simulations
Intermediate · Course · 1 - 3 Months
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Memory Management, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Software Development Tools, Program Development, Hardware Architecture, Systems Architecture, Eclipse (Software), Data Structures, Build Tools, C and C++, Programming Principles, Microarchitecture
Intermediate · Specialization · 3 - 6 Months