Dartmouth College
Skills you'll gain: Memory Management, Command-Line Interface, C (Programming Language), Linux Commands, Linux, Computer Programming Tools, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, C and C++, Linux Servers, Algorithms, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Unix Shell, Shell Script, Bash (Scripting Language), Unix Commands, Command-Line Interface, Unix, Network Protocols, Network Troubleshooting, Scripting, TCP/IP, Linux, OS Process Management, File Management, Scripting Languages, General Networking, File Transfer Protocol (FTP), Network Administration, Linux Commands, File Systems, grep
Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Data Structures, Secure Coding, Algorithms, Software Design, Application Security, Other Programming Languages, Python Programming, System Programming, Computer Architecture, Computer Programming, Java, Performance Tuning, Numerical Analysis
Intermediate · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
Beginner · Specialization · 3 - 6 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

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, Test Case, System Programming, Systems Development Life Cycle, Computer Programming, Data Structures, C and C++, Software Engineering, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Linux Commands, Bash (Scripting Language), Shell Script, File Management, Unix Shell, Linux, File Systems, Unix Commands, Linux Servers, Scripting, Command-Line Interface, Linux Administration, Scripting Languages, Unix, File I/O, grep, Operating Systems, Package and Software Management, Network Protocols, OS Process Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Command-Line Interface, File Management, Unix Commands, Unix Shell, File Systems, Linux Commands, File I/O
Beginner · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, C (Programming Language), Software Design, Program Development, Algorithms, Graph Theory, Software Testing, Computer Science, Computational Logic
Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Program Development, Computational Logic, Memory Management
Beginner · Course · 1 - 3 Months

Simplilearn
Skills you'll gain: Data Structures, C (Programming Language), C and C++, Programming Principles, Data Management, Memory Management, Algorithms, Computer Programming, File I/O, File Management, Other Programming Languages, Development Environment
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Command-Line Interface, C# (Programming Language), .NET Framework, Performance Tuning, Development Environment, Maintainability, Microsoft Development Tools, Application Programming Interface (API), Software Design, Restful API, Software Development Tools, File I/O, Authentications, Application Security, Software Testing, Unit Testing, Package and Software Management
Beginner · Course · 3 - 6 Months