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.

Johns Hopkins University
Skills you'll gain: Rmarkdown, Data Visualization, Statistical Visualization, Ggplot2, Data Import/Export, Data Visualization Software, R Programming, Tidyverse (R Package), Statistical Reporting, Data Manipulation, Scatter Plots, Data Wrangling, Histogram
Beginner · Course · 1 - 4 Weeks

California Institute of the Arts
Skills you'll gain: Information Architecture, Persona (User Experience), UI/UX Strategy, Web Design, User Experience, Wireframing, User Research, User Centered Design, Mockups, Usability Testing, Requirements Analysis, Target Audience, Agile Methodology
Intermediate · Course · 1 - 3 Months

University of Minnesota
Skills you'll gain: Software Development Methodologies, Agile Methodology, Software Engineering, Software Development Life Cycle, Requirements Analysis, Application Deployment, Agile Software Development, Software Architecture, Verification And Validation, Waterfall Methodology, System Requirements, Software Testing, User Requirements Documents
Beginner · Course · 1 - 4 Weeks

LearnQuest
Skills you'll gain: Package and Software Management, Linux Administration, Linux, Linux Commands, Virtual Private Networks (VPN), System Monitoring, Operating System Administration, Public Key Infrastructure, Ubuntu, Version Control, File Management, Command-Line Interface, Linux Servers, Intrusion Detection and Prevention, Git (Version Control System), File Systems, User Accounts, Firewall, Cloud Computing Architecture, DevOps
Beginner · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Go (Programming Language), Algorithms, System Programming, Operating Systems, Computer Architecture
Intermediate · Course · 1 - 4 Weeks

DeepLearning.AI
Skills you'll gain: Prompt Engineering, Large Language Modeling, Database Design, LLM Application, Software Documentation, Software Design Patterns, Collaborative Software, Software Testing, OpenAI API, Application Design, Generative AI, Database Management, AI Enablement, Code Review, Software Architecture, System Design and Implementation, Dependency Analysis, Software Engineering, Software Development, Machine Learning
Beginner · Professional Certificate · 1 - 3 Months

University of California San Diego
Skills you'll gain: Unit Testing, Data Structures, Java, JUnit, Performance Tuning, Debugging, Algorithms, Object Oriented Programming (OOP), Theoretical Computer Science, Unstructured Data
Intermediate · Course · 1 - 3 Months

Coursera
Skills you'll gain: R (Software), Data Import/Export, Package and Software Management, R Programming, Data Structures, Data-oriented programming, Statistical Programming, Data Analysis Software, Data Analysis, Data Science
Beginner · Guided Project · Less Than 2 Hours

LearnQuest
Skills you'll gain: Core Data (Software), Model View Controller, Apple iOS, JSON, Swift Programming, Apple Xcode, iOS Development, Responsive Web Design, Data Persistence, Data Structures, Object Oriented Programming (OOP), Unit Testing, Transaction Processing, Database Application, User Interface (UI), Application Development, UI Components, Application Programming Interface (API), Data Access, Mobile Development
Beginner · Specialization · 3 - 6 Months
University of Illinois Urbana-Champaign
Skills you'll gain: Business Strategy, Organizational Strategy, Strategic Leadership, Strategic Thinking, Business Modeling, Strategic Decision-Making, Competitive Analysis, Value Propositions, Market Analysis, Innovation, Analysis
Build toward a degree
Intermediate · Course · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Angular, JavaScript Frameworks, Unit Testing, Ajax, Cloud Applications, Web Applications, Web Components, Front-End Web Development, Web Development, Javascript, Model View Controller, Software Architecture, Hypertext Markup Language (HTML), UI Components, Software Design Patterns
Intermediate · Course · 1 - 3 Months

Ludwig-Maximilians-Universität München (LMU)
Skills you'll gain: Finite Element Methods, Numerical Analysis, Engineering Analysis, Jupyter, Engineering Calculations, Differential Equations, Applied Mathematics, Mathematical Modeling, Distributed Computing, Python Programming, Mechanics, Vibrations, Simulations
Intermediate · Course · 1 - 3 Months