Compiler courses can help you learn syntax analysis, semantic analysis, code generation, and optimization techniques. You can build skills in parsing algorithms, error handling, and implementing programming languages. Many courses introduce tools like Lex and Yacc for lexical analysis and parsing, as well as LLVM for code optimization, demonstrating how these skills are applied in creating efficient compilers and interpreters.

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Programming Principles, Java Programming, Java, Computer Programming, Code Reusability, Data Structures, Object Oriented Programming (OOP), Computational Logic, Program Development, Computational Thinking, Problem Solving, Algorithms, Eclipse (Software)
Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: File I/O, Memory Management, C and C++, C++ (Programming Language), Code Reusability, Vibe coding, API Design, Software Architecture, Software Design, Functional Design, Maintainability, Data Import/Export, Data Structures, AI literacy, AI Integrations, Data Validation, Performance Tuning, Secure Coding, Build Tools, Package and Software Management
Beginner · Course · 1 - 3 Months

Coursera
Skills you'll gain: Memory Management, C and C++, Scalability, Performance Tuning, C++ (Programming Language), Microarchitecture, Computer Architecture, Performance Stress Testing, Cross Platform Development, Hardware Architecture, Computing Platforms, Program Development, Application Frameworks, Software Installation, Development Environment
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Debugging, Version Control, Microsoft Copilot, C# (Programming Language), Git (Version Control System), Microsoft Visual Studio, .NET Framework, Software Versioning, Computer Programming Tools, Program Development, Integrated Development Environments, Application Development, Computer Programming, Microsoft Development Tools, Development Environment, UI Components, User Interface (UI), Programming Principles, Event-Driven Programming, Computational Logic
Beginner · Course · 1 - 3 Months

Skills you'll gain: Algorithms, Graph Theory, Data Structures, Theoretical Computer Science, Computational Thinking, Mathematical Theory & Analysis, Analysis, Probability & Statistics, Probability, Design Strategies, Logical Reasoning
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Computer Architecture, Mainframe Computing, Mainframe Technologies, Microarchitecture, Systems Architecture, Hardware Architecture, Data Storage, Computer Science, Programming Principles, System Programming, Data Structures, Computational Logic, Computer Hardware, Program Development, Computer Programming, Memory Management
Intermediate · Course · 1 - 3 Months

Hebrew University of Jerusalem
Skills you'll gain: Computer Science, Computer Systems, Computer Architecture, Computer Programming, Programming Principles, Memory Management, System Software, System Programming, Virtual Machines, Operating Systems, Hardware Architecture, Software Architecture, Algorithms, Software Design, Program Development, Object Oriented Programming (OOP), Data Structures, Computer Graphics, Peripheral Devices
Mixed · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Computer Science, Software Testing, Algorithms, Code Reusability, Graph Theory, C and C++, Computational Logic, Memory Management
Intermediate · Specialization · 3 - 6 Months

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

Simplilearn
Skills you'll gain: Data Structures, C (Programming Language), C and C++, Programming Principles, Data Management, Memory Management, Algorithms, Computer Programming, File I/O, Program Development, File Management, Other Programming Languages, Development Environment, Computational Logic
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Interactive Data Visualization, Software Design, Program Development, Data Structures, Interactive Design, Programming Principles, Visualization (Computer Graphics), Graphic and Visual Design, Python Programming, Event-Driven Programming, Systems Design, Digital Design, Simulations, Computer Graphics, Design, Game Design, Computational Logic
Beginner · Specialization · 3 - 6 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Android Development, Android Studio, Mobile Development, User Interface (UI), Mobile Development Tools, Kotlin, Application Development, User Interface (UI) Design, User Interface and User Experience (UI/UX) Design, UI Components, Mobile Security, Data Persistence, Data Management, Geographic Information Systems, Restful API, Performance Tuning, Global Positioning Systems, Application Programming Interface (API), Cloud Storage, Application Performance Management
Build toward a degree
Intermediate · Course · 1 - 3 Months