Software Engineering
11 courses·EN
Examine the practices and design choices involved in building reliable software, including architecture, testing, and dependencies.
For learners connecting programming with a maintainable system. Computer Science Foundations explains the underlying computing concepts.
A route through the topic
Start with the introductory explanation below, then choose a focused lesson for the task or question you want to explore.
Courses in this topic

Software Engineering Fundamentals
Equip aspiring developers with core software engineering principles, covering design, development, testing, and best practices for building robust applications.
14 slides·28 min

Software Architecture Fundamentals
An introductory training for software developers on the principles and key concepts of software architecture.
13 slides·26 min

Software Testing Fundamentals
This training covers the fundamentals of software testing, equipping learners with key concepts and techniques to identify defects and ensure software quality.
13 slides·26 min

Package Dependency Management Fundamentals
Learn to manage package dependencies effectively, covering versioning, requirements, and compatibility to ensure reliable software builds. Ideal for developers seeking dependency management skills.
14 slides·28 min

Event-Driven Systems Fundamentals
This training introduces event-driven architecture concepts, explaining events, producers, and consumers for technical learners new to asynchronous systems.
13 slides·26 min

Functional Programming Fundamentals
This training introduces functional programming concepts and is designed for developers looking to write cleaner, more predictable code.
15 slides·30 min

Software Engineering Manager Essentials
This training defines the Software Engineering Manager role, covering core responsibilities and essential skills for aspiring or new managers.
14 slides·28 min

Software Engineering Learning Workflow
A practical workflow for aspiring software engineers, teaching efficient learning strategies to master coding fundamentals and build real-world development skills.
14 slides·28 min

CS vs Software Engineering Tradeoffs
Explore the key differences, tradeoffs, and use cases between computer science and software engineering to choose the right approach for your projects.
13 slides·26 min

Mastering Command-Line Interfaces
An introduction to command-line interfaces, teaching beginners how to navigate and execute commands for efficient system control.
13 slides·26 min

Software Error Detection and Recovery
This training teaches software professionals to identify, interpret, and recover from common software errors, including detection techniques and effective error message handling.
14 slides·28 min