Software engineering is een deelgebied van de informatica dat zich bezighoudt met alle aspecten van het bouwen van complexe maar betrouwbare software tot informatiesystemen. Het is een vakgebied dat zich bezighoudt met methodes om een vraag of probleem in de werkelijkheid om te zetten naar een computerprogramma.
Iemand die bedreven is in software engineering is een software engineer (soms ook software-ingenieur genoemd). Het vakgebied is beslist breder dan alleen het programmeren, maar vaak noemen programmeurs zich onterecht software engineer vanwege de negatieve connotatie verbonden met de term "programmeur".