Software Engineering

Software engineering is the application of engineering principles and practices to the development of software system. Though there are useful, fine-grained semantic differences between "software development" and "software engineering", I generally use the two terms interchangeably.

Deeper Knowledge on Software Engineering

The Cathedral and the Bazaar

An essay and a book on software engineering based on experience with Linux kernel development

Software Pipelines (CI/CD)

Continuous Integration and Continuous Deployment (CI/CD)

Code Recipes

Quick and easy to copy recipes for JavaScript and TypeScript

Computer Languages

Computer Languages: How humans tell computers what to do

Containers

Packaging applications with all of their dependencies

Data Engineering

Engineering approaches to data management

Databases

Organized collections of structured data

DevOps

The philosophies, practices, and technologies for accelerated software time to value

DevOps Research and Assessment (DORA)

A research program at Google Cloud, notable for the State of DevOps reports

DORA's Four Key Metrics

The four key metrics for software development team performance, as identified by DevOps Research and Assessment (DORA)

Linus's Law

Given enough eyeballs, all bugs are shallow

Software Development Lifecycle (SDLC)

The lifecycle of software applications, from concept to revenue

Software Architecture

The practice of organizing software components in a complex system

SPACE Framework

SPACE Framework to Measure Developer Productivity: Satisfaction, Performance, Activity, Communication

Software Testing

The art and science of testing software

System Qualities and Nonfunctional Requirements (NFRs)

Constraints on how software is engineered

Design Patterns in Software Engineering

Common solutions to common problems in software engineering

Version Control

A distributed version-control system to track changes, typically for software development projects

Web Development

Tools and techniques for building websites and web-applications

Visual Studio Code (VS Code)

An extensible code editor for software engineers

Broader Topics Related to Software Engineering

Engineering

Apply science to create technology

Information Technology (IT)

The principles, practices, and technologies used to build information systems

Software Engineering Knowledge Graph