C programming courses can help you learn how to write efficient, low-level code used in systems programming, embedded systems, and software development.

Skills you'll gain: Programming Principles, Debugging, Computer Programming, Application Design, Computer Science, Program Development, Object Oriented Programming (OOP), Software Development, Data Management, Algorithms, Software Architecture, Software Development Methodologies
Beginner · Course · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Basic Electrical Systems, Wireless Networks, C++ (Programming Language), Object Oriented Design, Computer Programming, Control Systems, Interactive Design, Software Installation, Electronic Components, C and C++, Hardware Design, Electronics, Programming Principles, Display Devices, Embedded Software, Integrated Development Environments, Product Development, Electronic Systems, Embedded Systems
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Bash (Scripting Language), Shell Script, Linux Commands, Unix Shell, Unix Commands, Linux Administration, Linux, Scripting, File Management, Unix, Command-Line Interface, Scripting Languages, Debugging, System Configuration, User Interface (UI), IT Automation, Interactive Design, Programming Principles, OS Process Management
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Remote Access Systems, Application Programming Interface (API), Network Model, TCP/IP, Network Protocols, System Programming, Data Access, Performance Tuning, Data Sharing, Computer Hardware
Intermediate · Course · 1 - 3 Months

Skills you'll gain: SAS (Software), Data Manipulation, Data Transformation, Data Processing, Data Integration, Statistical Programming, Data Analysis, Data Presentation
Intermediate · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Performance Tuning, Functional Design, Performance Testing, Computer Programming
Intermediate · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Unity Engine, C# (Programming Language), Video Game Development, Data Management, Data Structures, Application Development, Program Development, Object Oriented Programming (OOP), Scripting, Debugging
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Python Programming, Computer Programming, Software Engineering
Beginner · Guided Project · Less Than 2 Hours

University of Colorado System
Skills you'll gain: Unreal Engine, C++ (Programming Language), Data Structures, Video Game Development, Data Storage, Object Oriented Programming (OOP), Computer Programming
Intermediate · Course · 1 - 4 Weeks

Vanderbilt University
Skills you'll gain: IntelliJ IDEA, Java Programming, Object Oriented Programming (OOP), Java, Integrated Development Environments, Computer Programming, Open Source Technology, Programming Principles, Distributed Computing, Scalability, Functional Design, Algorithms
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Data Structures, Python Programming, Data Manipulation, Programming Principles, Computer Programming, Software Installation, Development Environment, Jupyter, Integrated Development Environments
Beginner · Course · 1 - 4 Weeks

LearnQuest
Skills you'll gain: Visual Basic (Programming Language), Development Environment, Program Development, Microsoft Development Tools, .NET Framework, Data Storage, Computer Programming, Software Development, Computational Logic, Cross Platform Development, Command-Line Interface, Debugging
Beginner · Course · 1 - 4 Weeks