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.

JetBrains
Skills you'll gain: Object Oriented Programming (OOP), Data Structures, Software Development Tools
Beginner · Course · 1 - 3 Months

Skills you'll gain: React Native, Android Studio, Restful API, Version Control, UI/UX Research, Usability Testing, Git (Version Control System), Data Structures, Jest (JavaScript Testing Framework), Unix Commands, Android Jetpack, Android Development, Persona (User Experience), GitHub, Interaction Design, Kotlin, User Experience Design, User Interface and User Experience (UI/UX) Design, Mobile Development, Javascript
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Integrated Development Environments, User Interface (UI), Jupyter, Application Development, Python Programming, Test Case, Debugging, Computational Logic
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Ajax, Hypertext Markup Language (HTML), Application Programming Interface (API)
Beginner · Course · 1 - 4 Weeks

Simplilearn
Skills you'll gain: Scaled Agile Framework, Agile Methodology, Team Building, Scrum (Software Development), Sprint Retrospectives, Agile Project Management, Agile Product Development, Change Management, Cross-Functional Collaboration, Sprint Planning, Organizational Change, Backlogs, Team Leadership, Continuous Improvement Process
Beginner · Course · 1 - 4 Weeks

Universidade de São Paulo
Skills you'll gain: Debugging, Computational Thinking, Programming Principles, Data Structures, Computer Programming, Program Development, Integrated Development Environments, Computer Science, Python Programming, Algorithms
Beginner · Course · 1 - 3 Months

University of California, Davis
Skills you'll gain: Data Governance, Presentations, SQL, Apache Spark, Distributed Computing, Descriptive Statistics, Data Lakes, Data Storytelling, Peer Review, Exploratory Data Analysis, Data Quality, Data Pipelines, Databricks, JSON, Statistical Analysis, Data Modeling, Database Design, Data Analysis, Complex Problem Solving, Data Visualization
Beginner · Specialization · 3 - 6 Months

Rice University
Skills you'll gain: Data Visualization Software, Data Visualization, Plot (Graphics), Package and Software Management, Python Programming, Data Cleansing, Programming Principles, Data Processing, Data Manipulation, Software Installation, Development Environment, Data Structures, File Management, Scripting, Data Storage, Data Import/Export, Data Analysis, Program Development, Data Integration, Computer Programming
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Databases, Natural Language Processing, SQL, Data Visualization Software, Python Programming, Matplotlib, Text Mining, Data Processing, Document Management
Mixed · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Wireframing, Responsive Web Design, HTML and CSS, Web Content Accessibility Guidelines, Cascading Style Sheets (CSS), Web Design, Hypertext Markup Language (HTML), Browser Compatibility, Bootstrap (Front-End Framework), Javascript, Front-End Web Development, User Interface (UI), Verification And Validation, Web Development, Web Design and Development, Interactive Design, Application Frameworks, Usability, Code Review, Event-Driven Programming
Beginner · Specialization · 3 - 6 Months

University of Toronto
Skills you'll gain: Apple iOS, Swift Programming, iOS Development, Model View Controller, Apple Xcode, Mobile Development, User Interface (UI), Application Design, Application Development, Objective-C (Programming Language), UI Components, Animations, User Interface and User Experience (UI/UX) Design, Object Oriented Programming (OOP), Application Frameworks, Interaction Design, Programming Principles, Integrated Development Environments, Computer Graphics, Persistence
Intermediate · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Debugging, Software Testing, Program Development, Pseudocode, Simulations, Computer Programming, Algorithms, Development Environment, C (Programming Language), Command-Line Interface
Beginner · Course · 1 - 4 Weeks