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: Object Oriented Programming (OOP), Object Oriented Design, Microsoft Visual Studio, Development Environment, Maintainability, Integrated Development Environments, Scalability, Software Development Tools, Python Programming, Debugging, Computer Programming Tools, Software Installation
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: User Story, Software Development Life Cycle, Software Architecture, Sprint Retrospectives, Agile Software Development, Kanban Principles, DevOps, Backlogs, Software Design, Scrum (Software Development), Information Technology, Computer Hardware, Sprint Planning, Software Development Methodologies, Agile Methodology, Agile Project Management, Team Building, Risk Management, Leadership, Communication
Beginner · Professional Certificate · 3 - 6 Months

Princeton University
Skills you'll gain: Data Structures, Algorithms, Java, Performance Testing, Computer Programming, Java Programming, Theoretical Computer Science, Object Oriented Programming (OOP)
Intermediate · Course · 3 - 6 Months

Johns Hopkins University
Skills you'll gain: Data Manipulation, Data Cleansing, Data Wrangling, Data Import/Export, Data Collection, Data Management, Web Scraping, R Programming, MySQL, SQL, Application Programming Interface (API)
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Cascading Style Sheets (CSS), JSON, Full-Stack Web Development, Event-Driven Programming
Beginner · Course · 1 - 4 Weeks

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Graph Theory, Development Environment, Data Storage, Engineering Software, Unstructured Data, Computer Programming, Algorithms, Data Storage Technologies, Debugging, Program Development, Database Systems, Database Theory, Network Routing, Theoretical Computer Science
Intermediate · Specialization · 1 - 3 Months
University of Pennsylvania
Skills you'll gain: Risk Modeling, Risk Management, Business Modeling, Mathematical Modeling, Data-Driven Decision-Making, Portfolio Management, Forecasting, Regression Analysis, Financial Modeling, Statistical Modeling, Risk Analysis, Predictive Modeling, Presentations, Spreadsheet Software, Microsoft PowerPoint, Investment Management, Financial Statements, Data Modeling, Quantitative Research, Microsoft Excel
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Data Structures, Python Programming, Algorithms, Data Manipulation, Computational Thinking, Programming Principles, Data Processing, Data Dictionary, Computer Programming
Mixed · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Logical Reasoning, Computational Logic, Deductive Reasoning, Computational Thinking, Theoretical Computer Science, Combinatorics, Algorithms, Python Programming, Computer Science, Program Development
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Computational Thinking, Programming Principles, Problem Solving, Computer Science, Disaster Recovery, Algorithms, Computer Programming, Public Health
Beginner · Course · 1 - 3 Months

Skills you'll gain: Data Visualization Software, Interactive Data Visualization, Application Development, Web Content Accessibility Guidelines, Color Theory
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Computer Graphics, Visualization (Computer Graphics), Computer Graphic Techniques, C++ (Programming Language), Data Structures, Linear Algebra
Mixed · Course · 1 - 4 Weeks