Software engineering courses can help you learn programming languages like Python and Java, software development methodologies, version control systems, and testing practices. You can build skills in code optimization, debugging, and collaborative project management. Many courses introduce tools such as Git for version control, Docker for containerization, and integrated development environments (IDEs) like Visual Studio Code, which enhance your ability to develop, test, and deploy software efficiently.

Skills you'll gain: Computer Hardware, Technical Support, Software Installation, Technical Documentation, Hardware Troubleshooting, Customer Support, Computer Networking, System Software, Technical Communication, Computer Literacy, Linux, Microsoft Windows
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Model Based Systems Engineering, Failure Analysis, Systems Engineering, Engineering Management, Requirements Management, Scope Management, Design Reviews, Project Scoping, Root Cause Analysis, Program Management, Requirements Analysis, User Requirements Documents, Test Engineering, Cost Management, Contract Management, Systems Design, Business Requirements, Systems Thinking, Project Risk Management, Risk Management
Build toward a degree
Beginner · Specialization · 3 - 6 Months

DeepLearning.AI
Skills you'll gain: Database Design, Software Design Patterns, OpenAI API, Application Design, Database Management, AI Enablement, Software Architecture, System Design and Implementation, Software Development, Query Languages, Secure Coding, Application Programming Interface (API), Performance Tuning
Beginner · Course · 1 - 4 Weeks
University of Alberta
Skills you'll gain: Sprint Retrospectives, Scrum (Software Development), Software Technical Review, Agile Project Management, Agile Software Development, Software Quality Assurance, Agile Methodology, User Story, Requirements Analysis, Usability Testing, User Research
Mixed · Course · 1 - 4 Weeks
University of Alberta
Skills you'll gain: Agile Methodology, Kanban Principles, Agile Software Development, Software Development Methodologies, Software Development Life Cycle, Scrum (Software Development), Software Engineering, Process Driven Development
Mixed · Course · 1 - 4 Weeks
University of Michigan
Skills you'll gain: Debugging, Programming Principles, Computer Programming, Python Programming, Integrated Development Environments, Computer Programming Tools, Computational Thinking, Software Installation
Beginner · Course · 1 - 3 Months
University of Alberta
Skills you'll gain: Project Planning, Sprint Planning, Risk Management Framework, Agile Software Development, User Story, Agile Methodology, User Requirements Documents, Functional Requirement, Agile Project Management, Requirements Analysis, Software Development
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Extract, Transform, Load, Web Scraping, Database Management, Databases, Unit Testing, SQL Server Integration Services (SSIS), Data Transformation, Package and Software Management, Application Programming Interface (API), Data Pipelines, Python Programming, Programming Principles
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Software Engineering, Programming Principles, Computer Programming, Software Design, Predictive Modeling, Algorithms, Data Structures, Performance Testing, File I/O, Debugging, Application Programming Interface (API)
Beginner · Course · 1 - 3 Months

Skills you'll gain: Model Deployment, Feature Engineering, PySpark, Data Import/Export, Big Data, Apache Spark, Dashboard, Data Architecture, Data Governance, Apache Kafka, Cloud Deployment, Apache Hadoop, Metadata Management, Data Storage, Apache Hive, Application Programming Interface (API), Data Quality, Data Cleansing, Applied Machine Learning, Cloud Services
Intermediate · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Database Design, Software Design, Application Security, Vulnerability Assessments, Unified Modeling Language, Unit Testing, Threat Modeling, Usability Testing, User Interface and User Experience (UI/UX) Design, Data Flow Diagrams (DFDs), Open Web Application Security Project (OWASP), Software Architecture, Secure Coding, Object Oriented Design, Software Design Patterns, Database Management, Security Software, Systems Design, Software Development Life Cycle, Technical Design
Beginner · Specialization · 3 - 6 Months

University of Minnesota
Skills you'll gain: Software Testing, JUnit, Verification And Validation, Unit Testing, System Testing, Test Case, Test Automation, Development Testing, Test Planning, White-Box Testing, Code Coverage, Software Quality Assurance, Functional Testing, Test Data
Intermediate · Course · 1 - 4 Weeks