Software engineering

Software engineering is an engineering approach to software development. A practitioner, called a software engineer, applies the engineering design process to develop software.

The terms programmer and coder overlap software engineer, but they imply only the construction aspect of typical software engineer workload.