2024-03-22

Die Rolle der Softwareentwicklung: Von Technik zur Produktentwicklung

Software Engineering
Project & Product
showing a software developer while coding
showing profile picture of Olaf

GESCHRIEBEN VON

Olaf

INHALT

In der schnelllebigen Technologielandschaft ist es leicht, die Rolle von Softwareentwickler:innen darauf zu reduzieren Code zu schreiben und technische Probleme zu lösen. Diese Sichtweise ist jedoch nicht nur veraltet, sondern auch ineffizient. Denn in Wirklichkeit geht es nie um Softwareentwicklung, sondern immer um Produktentwicklung. Das Hauptaugenmerk von Softwareentwicklung sollte auf dem Produkt liegen, nicht nur auf den verwendeten Tools oder Programmiersprachen.


Das Problem der technologie-zentrierten Job­beschreibungen

Ein wesentlicher Teil des Problems ergibt sich aus den typischen Rollenbeschreibungen in der Techindustrie, die stark technologieorientiert sind, wie z. B. Frontend Entwickler:in, Backend Entwickler:in oder Fullstack Entwickler:in.

In anderen Berufen spiegeln die Bezeichnungen oft das Endprodukt und nicht die verwendeten Werkzeuge wider: Im Gegensatz zu den Bezeichnungen in der Technologiebranche ist ein:e Tischler:in für das Endprodukt bekannt, das geliefert wird z. B. als „Fensterbauer" oder „Möbeltischler“, und nicht als „Hammer-Tischler“ oder „Säge-Tischler“.

Diese Analogie verdeutlicht ein grundlegendes Missverhältnis in der Wahrnehmung von Softwareentwicklung: Durch die Definition von Rollen, die sich in erster Linie auf Technologie-Stacks beziehen, ermutigen wir Entwickler:innen unbeabsichtigt, sich auf technische Aspekte zu konzentrieren, anstatt das breitere Bild der Produktentwicklung und der Benutzerbedürfnisse zu betrachten.


Die Notwendigkeit einer Rollenver­schiebung

Darüber hinaus ist dieses Problem nicht nur auf Entwickler:innen beschränkt, sondern erstreckt sich auch auf die Art und Weise, wie Produktorganisationen ihre Teams strukturieren und einsetzen. Genauso wie Softwareentwickler:innen ihre Perspektive von der reinen Technologieumsetzung zur Produktschöpfung ändern müssen, müssen auch Produktorganisationen ihren Blickwinkel anpassen. Sie sollten die Softwareentwickler:innen in den gesamten Produktentwicklungsprozess und Wertschöpfungsstrom integrieren und nicht nur als letztes Glied in der Kette. Dazu gehört, die Softwareentwicklung frühzeitig in Diskussionen über die Produktvision, User Research und strategische Entscheidungen einzubeziehen, damit technischen Perspektiven eingebracht werden können, um das Produkt von Grund auf zu gestalten.


Selbstwahrnehmung und die Falle der Überkomplexität

Leider führt die Selbstwahrnehmung vieler Entwickler:innen als reine Programmierer:innen oder Techniker:innen oft dazu, dass die Geschäftslogik und die Ziele vernachlässigt werden. Der leider früh verstorbene Stefan Tilkov hat in seinem Vortrag „Why software architects fail: and what to do about it" eindrucksvoll gezeigt, welche Probleme entstehen können, wenn betriebswirtschaftliche Kenntnisse außer Acht gelassen werden. Wenn sich Entwickler:innen nur auf technische Herausforderungen konzentrieren, ohne den breiteren geschäftlichen Kontext zu verstehen, können sie am Ende überkomplizierte und ineffiziente Systeme schaffen, die den tatsächlichen Bedürfnissen des Unternehmens nicht gerecht werden.

Um dem entgegenzuwirken, müssen Softwareentwickler:innen ihr Selbstverständnis neu definieren. Sie sind Produktentwickler:innen, die sich aktiv an allen Phasen der Produktentwicklung beteiligen sollten - von der Ideenfindung über die Verfeinerung bis hin zur Programmierung. Dieser Ansatz wird von verschiedenen Expert:innen unterstützt, unter anderem von Teresa Torres. Mit ihrem Konzept des Produkttrios plädiert Torres für eine kollaborative Dynamik zwischen Produktmanagement, Design und Softwareentwicklung, um die Schaffung von kohärenteren und nutzerzentrierten Produkten zu fördern.


Über den Code hinaus: Eine Vision für die Zukunft

Softwareentwickler:innen sollten sich bewusst sein, dass ihre Arbeit das Ergebnis von Unternehmensinvestitionen ist, die darauf abzielen, reale Probleme zu lösen und die Bedürfnisse des Marktes zu erfüllen. Sie sollten die Bedürfnisse und Ziele des Unternehmens verstehen und ihre Arbeit danach ausrichten. Nur dann können sie effektive, geschäftsorientierte Softwarelösungen entwickeln, die über bloße technische Übungen hinausgehen.

Es ist an der Zeit, dass sowohl Softwareentwickler:innen als auch Produktorganisationen über den Code und traditionelle Rollendefinitionen hinausblicken. Indem sie sich selbst als integralen Bestandteil der Produktentwicklung sehen und ihre Rolle im Wertschöpfungsstrom wahrnehmen, können sie sicherstellen, dass sie zu sinnvollen und wirkungsvollen Produkten beitragen. Schließlich kommt es am Ende des Tages auf das Produkt und den Wert an, den es den Benutzern bietet, und nicht auf die einzelnen Codezeilen oder die eingesetzten Technologien.