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.

Vanderbilt University
Skills you'll gain: Generative AI Agents, Java, Java Programming, Agentic systems, Agentic Workflows, AI Workflows, Generative AI, LLM Application, Tool Calling, OpenAI API, Application Development, Prompt Engineering, Large Language Modeling, Memory Management
★ 4.2 (25) · Beginner · Course · 1 - 3 Months

Nanjing University
Skills you'll gain: Computer Systems, Computer Architecture, System Programming, System Software, Computational Logic, Hardware Architecture, Operating Systems, C (Programming Language), Computer Hardware, Data Storage, Program Development, Memory Management, Data Structures, Secure Coding, Build Tools, Exploit development, Numerical Analysis
★ 4.7 (59) · Mixed · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Data Structures, Algorithms, Programming Principles, Theoretical Computer Science, Java Programming, Java, Computer Programming, Graph Theory, Memory Management
★ 4.8 (84) · Intermediate · Course · 3 - 6 Months

L&T EduTech
Skills you'll gain: Embedded Software, Peripheral Devices, Integrated Development Environments, Embedded Systems, Internet Of Things, Microarchitecture, Automation, Real Time Data, Hardware Architecture, Computer Architecture, Prototyping, Memory Management
★ 4.6 (298) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Microarchitecture, Memory Management, System Programming, Embedded Software, Hardware Architecture, System Software, Embedded Systems, Computer Architecture, Programming Principles, System Configuration, Debugging, Application Development
★ 4.7 (51) · Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: System Programming, Embedded Software, System Software, Linux, Embedded Systems, Debugging, Linux Commands, Operating Systems, File I/O, Peripheral Devices, Build Tools, Shell Script, Development Environment, Configuration Management, Program Development, OS Process Management, Command-Line Interface, Memory Management
★ 4.7 (27) · Advanced · Course · 1 - 4 Weeks

Peking University
Skills you'll gain: Data Structures, Memory Management, Algorithms, Computer Programming, Database Management Systems, Theoretical Computer Science, Data Access, Performance Tuning, File Management
★ 4.3 (106) · Mixed · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Memory Management, System Programming, Computer Architecture, Embedded Software, Programming Principles, Code Reusability, Computer Programming, Linux
★ 4.8 (62) · Beginner · Course · 1 - 3 Months

28DIGITAL
Skills you'll gain: File I/O, Data Structures, Theoretical Computer Science, Algorithms, Memory Management, Graph Theory, Data Access, Performance Tuning
★ 4.6 (60) · Advanced · Course · 1 - 3 Months

Skills you'll gain: Linux Servers, Linux Administration, Unix, Linux Commands, Linux, Unix Commands, Command-Line Interface, OS Process Management, Operating System Administration, Unix Shell, Debugging, System Monitoring, DevOps, Memory Management, Resource Management
★ 4.7 (23) · Intermediate · Guided Project · Less Than 2 Hours

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C and C++, Data Structures, Secure Coding, Application Security, System Programming, Programming Principles
★ 4.5 (73) · Intermediate · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: Memory Management, C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, Embedded Software, System Programming, Computer Programming, Data Structures, Linux
★ 4.7 (66) · Beginner · Course · 1 - 3 Months