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: File I/O, Git (Version Control System), Software Development Methodologies, JUnit, Requirements Analysis, Version Control, Application Development, Software Development Life Cycle, Full-Stack Web Development, Test Driven Development (TDD), SQL, Systems Development, Software Development, Functional Requirement, Restful API, Database Management, Object Oriented Programming (OOP), Digital Transformation, Java Programming, Generative AI
Beginner · Professional Certificate · 3 - 6 Months

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

Skills you'll gain: Unsupervised Learning, Supervised Learning, Model Evaluation, Regression Analysis, Scikit Learn (Machine Learning Library), Applied Machine Learning, Predictive Modeling, Machine Learning, Dimensionality Reduction, Decision Tree Learning, Python Programming, Logistic Regression, Classification Algorithms, Feature Engineering
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Bash (Scripting Language), Test Automation, Unit Testing, Scripting, Software Testing, Linux Commands, Test Driven Development (TDD), Unix Commands, Development Environment, Operating Systems, Command-Line Interface, File Management, OS Process Management, File Systems, Automation, Python Programming
Beginner · Course · 1 - 3 Months

Skills you'll gain: Database Design, Case Studies, Relational Databases, System Testing, Database Development, Microsoft SQL Servers, SQL, Customer Complaint Resolution, Business Reporting, Visual Basic (Programming Language), Workflow Management, Role-Based Access Control (RBAC), Data Validation, Requirements Analysis, User Interface (UI)
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: SolidWorks (CAD), 3D Modeling, Assembly Drawing, Engineering Design Process, Mechanical Design, Computer-Aided Design, Mechanical Engineering, Engineering Drawings, Torque (Physics), Functional Testing
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Web Components, Web Applications, User Interface (UI), Full-Stack Web Development, User Accounts, Event-Driven Programming, Data Persistence, Data Access, Data Validation
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Software Design Patterns, Game Design, Maintainability, Software Design, Software Architecture, Video Game Development, Programming Principles, Animation and Game Design, Event-Driven Programming, Scalability, Game Theory, Artificial Intelligence, Animations
Intermediate · Course · 3 - 6 Months

Skills you'll gain: C (Programming Language), Game Design, Programming Principles, Program Development, Computational Logic, Data Validation, Command-Line Interface, User Interface (UI), Data Structures
Beginner · Course · 1 - 4 Weeks

University of California, Davis
Skills you'll gain: Peer Review, Language Learning, Spanish Language, Oral Expression, Grammar, Oral Comprehension, Vocabulary, Culture, Writing and Editing, Language Competency, Research, Writing
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: AutoCAD, Architectural Drawing, Architectural Design, Engineering Drawings, Civil and Architectural Engineering, Computer-Aided Design, Building Design, Technical Drawing, Drafting and Engineering Design, Architectural Engineering, Structural Engineering, Structural Analysis, Functional Design, Traffic Flow Optimization, Building Codes, Spatial Analysis, Safety Standards
Beginner · Course · 1 - 4 Weeks

University of Alberta
Skills you'll gain: Agile Software Development, Project Risk Management, Requirements Analysis, Agile Methodology, Kanban Principles, Risk Management, Project Planning, Requirements Elicitation, Sprint Retrospectives, Requirements Management, Functional Requirement, Business Requirements, Sprint Planning, Software Development Methodologies, Software Development Life Cycle, Scrum (Software Development), Software Technical Review, Risk Management Framework, Product Management, Project Management
Beginner · Specialization · 3 - 6 Months