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.

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

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

Northeastern University
Skills you'll gain: Web Applications, Object Oriented Programming (OOP), Application Development, Python Programming, Computer Programming, Programming Principles, Data Science, Data Analysis, Scripting, Data Structures, Debugging, Style Guides, Software Documentation
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Programmable Logic Controllers, Real-Time Operating Systems, Program Development, Human Machine Interfaces, Automation, System Monitoring, Simulations
Advanced · Course · 1 - 4 Weeks
University of London
Skills you'll gain: Computer Science, Computer Systems, Development Environment, Web Applications, Debugging, Arithmetic, Computer Literacy, Program Development, Network Security, Computer Networking, Graphing, Computational Thinking, Theoretical Computer Science, General Mathematics, Computer Graphics, Data Literacy, Visualization (Computer Graphics), Computer Programming, Javascript, Problem Solving
Build toward a degree
Beginner · Specialization · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), Electronic Components, Computer Hardware, Integrated Development Environments, Computer Programming, Electronics Engineering, Network Protocols, Development Environment, Digital Communications, Open Source Technology
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Software Documentation, System Programming, Technical Documentation, Application Development, Maintainability, Data Structures, Generative AI, Application Performance Management, Algorithms, Scalability
Beginner · Course · 1 - 3 Months

Universidad de Palermo
Skills you'll gain: Object Oriented Design, Object Oriented Programming (OOP), Java, Software Design, Software Design Patterns, Programming Principles, Software Development
Intermediate · Course · 1 - 4 Weeks

Pohang University of Science and Technology(POSTECH)
Skills you'll gain: Internet Of Things, Cloud Platforms, IBM Cloud, Application Development, Cloud Computing, Google Cloud Platform, Microsoft Azure, Amazon Web Services, Emerging Technologies, Network Protocols, Data Analysis
Beginner · Course · 1 - 3 Months

Skills you'll gain: Data Wrangling, Exploratory Data Analysis, Model Evaluation, Data Analysis, Data Transformation, Regression Analysis, Data Visualization, Data Manipulation, R Programming, Predictive Analytics, Statistical Analysis, Statistical Modeling, Data Science, Data Cleansing, Data Preprocessing, Forecasting, Data Import/Export, Performance Tuning
Intermediate · Course · 1 - 3 Months
Skills you'll gain: Node.JS, MongoDB, NoSQL, Restful API, Ajax, Front-End Web Development, Server Side, Full-Stack Web Development, Back-End Web Development, Javascript, React.js, Application Deployment, Data Structures, Authentications, JavaScript Frameworks, Database Development, Debugging, Cloud Applications, Database Application, Web Development
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Programmable Logic Controllers, Animations, Human Machine Interfaces, Control Systems, Visualization (Computer Graphics), Control Panels, Test Tools, Interactive Design, Electrical Wiring, Automation Engineering, Simulations, User Interface (UI) Design, User Feedback, System Configuration
Intermediate · Course · 1 - 3 Months