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.

Peking University
Skills you'll gain: Data Structures, Computational Thinking, Graph Theory, Theoretical Computer Science, Programming Principles, Algorithms, Computer Programming, Data Storage, C (Programming Language), C++ (Programming Language)
Mixed · Course · 1 - 3 Months

Peking University
Skills you'll gain: C (Programming Language), Data Structures, Programming Principles, Program Development, Object Oriented Programming (OOP), Computer Programming, Algorithms, Debugging, Software Design Patterns
Mixed · Course · 1 - 3 Months

Università di Napoli Federico II
Skills you'll gain: Object Oriented Programming (OOP), Python Programming, Computer Programming, Scripting Languages, Programming Principles, Data Management, Functional Design, Debugging, Database Management, File Management, Databases
Beginner · Course · 1 - 4 Weeks

University of Virginia
Skills you'll gain: Agile Software Development, Agile Methodology, Agile Project Management, Team Performance Management, Team Management, Team Building, Team Leadership, Sprint Retrospectives, Backlogs, Kanban Principles, Sales Presentation, Innovation, Lean Methodologies, Process Improvement, Selling Techniques, Prioritization, Discussion Facilitation, Goal Setting
Mixed · Course · 1 - 4 Weeks

University of California, Davis
Skills you'll gain: Chemical Engineering, Hazard Analysis, Process Engineering, Hazard Communication (HazCom), Safety Assurance, Occupational Health, Safety Training, Risk Management, Environment Health And Safety, Process Control, Accident Prevention, Risk Analysis, Incident Management, Safety Standards, Failure Analysis, Risk Mitigation, Personal protective equipment, Risk Management Framework, Engineering Analysis, Safety and Security
Advanced · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: LLM Application, Large Language Modeling, Prompt Engineering, Generative AI, Applied Machine Learning, Python Programming, Open Source Technology, JSON
Intermediate · Course · 1 - 4 Weeks

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
University of Washington
Skills you'll gain: Unsupervised Learning, Supervised Learning, Statistical Machine Learning, Predictive Analytics, Advanced Analytics, Data Analysis, R Programming, Statistical Methods, Statistical Inference, Statistical Analysis, Machine Learning Algorithms, Machine Learning, Graph Theory, Classification Algorithms, Probability & Statistics, Big Data
Mixed · Course · 1 - 4 Weeks
University of Michigan
Skills you'll gain: PHP (Scripting Language), MySQL, Database Application, Database Development, Object Oriented Programming (OOP), Secure Coding, Authentications, Web Applications, SQL, Server Side, Data Validation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: File I/O, Data Import/Export, C++ (Programming Language), Data Structures, File Management, Computer Programming, Data Store, Computer Science
Beginner · Course · 1 - 4 Weeks

Amazon
Skills you'll gain: Git (Version Control System), Software Development Methodologies, Requirements Analysis, Version Control, Application Development, Software Development Life Cycle, Systems Development, Functional Requirement, Software Engineering, User Requirements Documents, Agile Software Development, Application Design, Unified Modeling Language, Software Testing, JUnit, Agile Methodology, Spring Framework, Debugging, Java, Technical Design
Beginner · Course · 1 - 3 Months

Skills you'll gain: SAS (Software), Data Quality, Data Analysis, Exploratory Data Analysis, Virtual Environment, Data Manipulation, Interactive Data Visualization, Data Access, Data Preprocessing, Business Reporting, Business Analysis, Statistical Programming
Beginner · Course · 1 - 4 Weeks