Nand2tetris courses often teach computer architecture, hardware design, and software development, guiding you through building a computer from the ground up. You can develop skills in programming languages, logic design, and system integration, allowing you to understand how software interacts with hardware. Many courses introduce tools like hardware simulators and programming environments, which help you apply your knowledge by creating a functioning computer and writing programs that run on it.

Johns Hopkins University
Skills you'll gain: Hardware Design, Electronic Hardware, Schematic Diagrams, Computer-Aided Design, Mechanical Design, Wiring Diagram, Electrical Engineering, 3D Modeling, Electronics, Electronic Components, Simulations, Design Specifications, Open Source Technology
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Networking Hardware, General Networking, Network Architecture, Wireless Networks, Network Protocols, Computer Networking, TCP/IP, Local Area Networks, Network Routers, System Configuration, Network Switches, Wide Area Networks, Servers
Build toward a degree
Beginner · Course · 1 - 4 Weeks

Technion - Israel Institute of Technology
Skills you'll gain: New Product Development, Budget Management, Risk Management, Resource Management, Project Management, Product Management, Project Planning, Agile Product Development, Scheduling, Innovation, Business Strategy, Technology Strategies, Simulation and Simulation Software
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Network Protocols, Communication Systems, Internet Of Things, Electronic Components, Wireless Networks, Integrated Development Environments
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Rust (Programming Language), System Programming, Secure Coding, Data Structures, Programming Principles, Data Sharing, Data Management, Capacity Management
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Unity Engine, Game Design, Video Game Development, Performance Tuning, UI Components, Program Development, Object Oriented Programming (OOP), System Configuration, C# (Programming Language), Data Structures, Scripting
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Generative AI, Model Deployment, Large Language Modeling, Transfer Learning, Artificial Intelligence and Machine Learning (AI/ML), PyTorch (Machine Learning Library), Cloud Deployment, Performance Tuning, Hardware Architecture, Deep Learning, Embedded Systems, Computer Hardware, Scalability
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: User Interface (UI), Game Design, Unreal Engine, User Interface and User Experience (UI/UX) Design, Video Game Development, No-Code Development, System Design and Implementation, Debugging
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Unity Engine, Video Game Development, Game Design, Computer Programming, General Mathematics, Computer Graphics, Arithmetic, Graphing, Geometry, Data Structures, Applied Mathematics
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Microsoft Azure, Data Visualization, Microsoft Excel, Internet Of Things, Cloud Storage, Data Storage Technologies, Data Import/Export, Data Pipelines
Beginner · Guided Project · Less Than 2 Hours

University of California San Diego
Skills you'll gain: Application Development, Android (Operating System), Android Studio, Mobile Development, Software Development Tools, Game Design, Computer Programming Tools, Development Environment, Internet Of Things, Embedded Software, Web Servers, Web Applications, USB, Ubuntu, Peripheral Devices, Operating Systems, Software Installation, Command-Line Interface, System Configuration, Hardware Troubleshooting
Mixed · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Data Structures, Interactive Design, Program Development, Object Oriented Programming (OOP), Computer Programming, Java Programming, Software Development, Computational Logic, Computer Science
Beginner · Guided Project · Less Than 2 Hours