software engineering

Building digital systems

Software engineering is the systematic application of engineering principles to designing, developing, testing, and maintaining software.

Unlike casual programming, it emphasizes structured methodologies, documentation, and long-term maintainability: She studied software engineering, not just coding.

The discipline encompasses project management, quality assurance, and team coordination alongside technical skills.

process

agile

Limber and quick-moving

specifications · implementation · testing · deployment · maintenance · version control · code review · debugging · refactoring · DevOps

architecture

microservices

Decomposed application architecture

API · framework · component · layer · interface · service-oriented · client-server · MVC · monolith · singleton

craft

clean code

Well-organized, maintainable programming

best practices · naming conventions · technical writing · code smell · linting · style guide · peer review · mentorship · craftsmanship · elegance

Categories
Opposites
discipline type

software engineeringcivil engineering

Public structure construction field

mechanical engineering · electrical engineering · structural engineering · chemical engineering · materials science

approach to coding

software engineeringhacking

Infiltrating protected digital systems

bodging · kludging · scripting · tinkering · prototyping

abstraction level

software engineeringchip design

Planning integrated circuits

circuit design · computer architecture · embedded systems

Family

engineer, software, engineering, engineered, reengineering, software development, software developer, software developers, software engineers

Familiarity
Top 200,000
Profile
Used worldwide · Timeless · Rated G