Functional programming courses can help you learn concepts like first-class functions, immutability, and higher-order functions, along with practical techniques for managing state and side effects. You can build skills in recursive problem-solving, data transformation, and leveraging pure functions for cleaner code. Many courses introduce tools such as Haskell, Scala, and JavaScript, showcasing how these languages facilitate functional programming principles and enhance software development practices.

Skills you'll gain: Job Control Language (JCL), z/OS, Unix, IBM DB2, Database Management Systems, Mainframe Computing, Operating System Administration, System Programming, Operating Systems, Unix Commands, Data Management, File Systems, Data Storage
Intermediate · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Software Documentation, Maintainability, Programming Principles, Software Design, Python Programming
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C# (Programming Language), Object Oriented Programming (OOP), Software Design Patterns, Software Architecture, Software Design, Secure Coding, Computer Programming, System Design and Implementation, Data Integrity, Maintainability, Scalability, Programming Principles, Code Review, Software Documentation, AI Workflows, Debugging
Beginner · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), Statistical Analysis, Automation, Program Development, Data Structures, Programming Principles, Algorithms, Computer Programming, Theoretical Computer Science, Data Storage, Descriptive Statistics, Data Visualization Software, Debugging
Beginner · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), File I/O, C++ (Programming Language), Object Oriented Design, Debugging, Computer Programming, Event-Driven Programming, Video Game Development, Unity Engine, Data Structures, C# (Programming Language), Data Storage, 3D Assets, Development Environment, Game Design, Software Documentation, Software Design Patterns, User Interface (UI), Programming Principles
Intermediate · Specialization · 3 - 6 Months

Vanderbilt University
Skills you'll gain: Prompt Engineering, ChatGPT, Matlab, AI Personalization, Debugging, AI Enablement, LLM Application, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Data Validation, Object Oriented Design, Programming Principles, Computer Programming, Data Structures, File Management, Integrated Development Environments, Data Store, Software Documentation, Computer Science, Functional Design, Pseudocode, Maintainability
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Rust (Programming Language), Relational Databases, Databases, Application Development, SQL, Object Oriented Programming (OOP), Data Structures, File I/O, Software Development, Command-Line Interface, Data Import/Export
Intermediate · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: NumPy, Debugging, Pandas (Python Package), Statistics, Data Analysis, Statistical Programming, Descriptive Statistics, Exploratory Data Analysis, Data Preprocessing, Data-oriented programming, Program Development, Numerical Analysis, Critical Thinking
Intermediate · Specialization · 3 - 6 Months

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

Pohang University of Science and Technology(POSTECH)
Skills you'll gain: Internet Of Things, Wireless Networks, General Networking, Emerging Technologies, Electronic Hardware, Embedded Systems, Information Technology Architecture, Software Architecture, Computing Platforms, Computer Programming Tools, Problem Solving
Beginner · Course · 1 - 3 Months

Skills you'll gain: System Programming, Interoperability, Object Oriented Programming (OOP), Data Structures, Software Development, Debugging
Intermediate · Course · 1 - 4 Weeks