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.

University of London
Skills you'll gain: Pseudocode, File I/O, C++ (Programming Language), Integrated Development Environments, Object Oriented Programming (OOP), Development Environment, Algorithms, Debugging, Data Structures
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Apache Spark, Scala Programming, Big Data, Data Manipulation, Distributed Computing, Data Processing, Performance Tuning, SQL, Data Persistence, Data Analysis, Programming Principles
Intermediate · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Programming Principles, Embedded Systems, Program Development, Computer Engineering, Algorithms, Data Structures, Computer Programming, Debugging
Beginner · 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, Machine Learning Algorithms, Performance Testing, Computer Programming
Intermediate · Course · 1 - 4 Weeks

DeepLearning.AI
Skills you'll gain: LangChain, LLM Application, Tool Calling, ChatGPT, Generative AI Agents, Prompt Engineering, Application Development, Python Programming
Intermediate · Project · Less Than 2 Hours

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Programming Principles, Computer Programming, Software Documentation, Functional Design, Computer Science, Maintainability
Intermediate · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Java, Java Programming, Algorithms, Computational Thinking, Programming Principles, Object Oriented Programming (OOP), Computer Programming, Functional Design, Development Environment
Beginner · Guided Project · Less Than 2 Hours
Skills you'll gain: Spring Framework, Software Architecture, Microservices, Spring Boot, Cloud Applications, Event-Driven Programming, Java Programming, Restful API, Performance Tuning, MongoDB, Web Applications, Scalability, Real Time Data, Resilience, Integration Testing, Performance Management, Debugging
Intermediate · Course · 1 - 4 Weeks
University of Glasgow
Skills you'll gain: Javascript, HTML and CSS, Web Development, Web Applications, Front-End Web Development, Event-Driven Programming, Computational Thinking, Software Testing, Application Development, Software Development, Software Development Tools, Computer Programming Tools, Development Environment, Programming Principles, Computer Graphics, Animations
Beginner · Course · 1 - 4 Weeks

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Distributed Computing, Java, Software Architecture, Systems Architecture, Programming Principles, Scala Programming, Servers, Algorithms
Intermediate · Course · 1 - 3 Months

University of Washington
Skills you'll gain: Ruby (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Software Design Patterns, Theoretical Computer Science, Computer Science, Debugging
Mixed · Course · 1 - 3 Months

University of Leeds
Skills you'll gain: Jupyter, Programming Principles, Computer Programming, Python Programming, Development Environment, Scripting, Software Installation, Data Structures, Data Science
Beginner · Course · 1 - 4 Weeks