Ein Softwareentwickler oder auch Softwareingenieur (engl. software developer bzw. software engineer), bei größeren Projekten auch Software- bzw. System-Architekt, ist eine Person, die sich mit der systematischen Herstellung von Computerprogrammen (Software) beschäftigt.
Im Gegensatz zu einem Programmierer beherrscht der Softwareentwickler den gesamten Softwareentwicklungsprozess und die Methoden der Softwaretechnik. Neben der eigentlichen Programmierarbeit gehört dazu auch das Erarbeiten der Anforderungen an die Software sowie das Erstellen einer Softwarearchitektur und die Planung der Umsetzung. Zur Aufgabe des Entwicklers gehört weiterhin die Zusammenstellung von Testplänen und -daten für alle Anwendungsfälle der Software.
Softwareentwickler haben oft ein Studium in einem Informatikstudiengang an einer Hochschule, einer Fachhochschule oder einer Berufsakademie absolviert. Auch ein Studium in einem ingenieur- bzw. naturwissenschaftlichen Studiengang bietet Einstiegsmöglichkeiten in die Softwareentwicklung.
Es gibt auch die Möglichkeit, sich über eine Ausbildung in einem informationstechnischen Ausbildungsberuf z. B. Fachinformatiker für Anwendungsentwicklung , an einer Berufsfachschule (siehe beispielsweise IHK), an einer Fachschule für Datenverarbeitung und Organisation (z. B. ADV Böblingen) oder einem Berufskolleg zum Softwareentwickler, Softwareingenieur oder Software-Architekten zu qualifizieren. Daneben üben viele Quereinsteiger diese Tätigkeit auch aufgrund von autodidaktisch erlernten oder durch verschiedene Schulungen (auch Umschulung) erworbenen Fähigkeiten aus.