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.
Skills you'll gain: File Systems, Operating Systems, OS Process Management, Memory Management, C (Programming Language), File Management, Virtualization, Computer Programming Tools, Data Integrity, Debugging, File I/O, System Software, Virtualization and Virtual Machines, System Programming, Systems Design, Data Storage Technologies, Performance Tuning, Distributed Computing, Data Storage, C and C++
★ 4.6 (321) · Beginner · Specialization · 3 - 6 Months

Peking University
Skills you'll gain: Data Structures, Algorithms, Object Oriented Programming (OOP), Graph Theory, C++ (Programming Language), Object Oriented Design, Memory Management, C (Programming Language), File I/O, Programming Principles, Code Reusability, Computer Programming, Program Development, Computer Science, Application Development, Database Management Systems, Software Development, Data Storage, Computer Architecture, Software Engineering
★ 4.8 (2.7K) · Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Memory Management, C and C++, C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Structures, Software Design, Python Programming, Java, Algorithms, Performance Tuning
★ 4.5 (13) · Intermediate · Course · 1 - 3 Months

EDUCBA
Skills you'll gain: C (Programming Language), Embedded Systems, Embedded Software, Debugging, System Programming, Systems Architecture, Hardware Architecture, Microarchitecture, Data Structures, Peripheral Devices, Memory Management, Computational Logic
★ 4.1 (135) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: System Programming, Memory Management, C (Programming Language), C++ (Programming Language), Programming Principles, Software Development, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Object Oriented Programming (OOP), C (Programming Language), Python Programming, Data Import/Export, Memory Management, File I/O, Computational Logic, Network Protocols, Package and Software Management
★ 4.6 (2.5K) · Intermediate · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Design, Software Design Patterns, Object Oriented Programming (OOP), Software Design, C (Programming Language), Algorithms, Memory Management, Graph Theory, Artificial Intelligence, Data Structures, Simulations
★ 4.5 (336) · Intermediate · Course · 1 - 3 Months

Coursera
Skills you'll gain: Memory Management, C and C++, Scalability, Performance Tuning, C++ (Programming Language), Microarchitecture, Computer Architecture, Cross Platform Development, Hardware Architecture, Computing Platforms, C (Programming Language), Program Development
Beginner · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: C (Programming Language), Data Structures, C and C++, Programming Principles, Algorithms, Memory Management
★ 4.3 (349) · Beginner · Course · 1 - 3 Months

Nanjing University
Skills you'll gain: C (Programming Language), Computer Systems, Data Structures, System Programming, System Software, Programming Principles, Computer Architecture, Computer Programming, Secure Coding, Operating Systems, Hardware Architecture, Data Storage, Memory Management, Computer Hardware, Application Security, Build Tools
★ 4.7 (59) · Mixed · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, System Programming, Cross Platform Development, System Software, Memory Management, Hardware Architecture, Peripheral Devices, Product Family Engineering, Code Reusability, Performance Tuning, Software Design, C (Programming Language), Scalability
Advanced · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Graph Theory, Object Oriented Design, C (Programming Language), Artificial Intelligence, Algorithms, Data Structures, Memory Management, Simulations
Intermediate · Course · 1 - 3 Months