KI hat disruptive Kraft. Menschen auf der ganzen Welt experimentieren mit bekannten Tools wie ChatGPT, wie sie schneller und kreativer Texte und Bilder gestalten können. KI durchdringt je länger, je mehr auch die Arbeitswelt: Gemäss dem Global AI Adoption Index 2022 nutzen branchenübergreifend 35% aller Unternehmen KI. Zudem sind 75% der Führungskräfte überzeugt, dass KI ihrem Unternehmen zu mehr Wachstum verhelfen wird. Diese Zahlen dürften seit 2022 steil angestiegen sein.
Wir zeigen u.a. anhand realer Beispiele, wie KI die Softwareentwicklung verändert, wie sie sich auf die Arbeit von Programmierer*innen auswirkt und wie sich deren Rolle wandelt. Selbstverständlich beleuchten wir auch das Dafür und das Dawider KI-gestützter Softwareentwicklung und – am allerwichtigsten – beantworten die brennende Frage: Macht KI Softwareentwickler*innen überflüssig?
Haben Sie sich schon mal gefragt, ob Softwareentwickler*innen im Zeitalter von KI einfach Däumchen drehen und die Arbeit der Technologie überlassen? Ganz so einfach ist es nicht.
Es ist wichtig zu verstehen, dass KI die Softwareentwicklung nachhaltig verändert. Mit KI-Funktionen ausgestattete Tools werden für Entwickler*innen Alltag. Sie unterstützen den Entwicklungsprozess bei diversen Schritten, z.B. automatisieren sie Routineaufgaben, schreiben und optimieren Code, erkennen Fehler und verbessern das Nutzererlebnis.
Ein herausragendes Beispiel ist DeepCode. Das KI-gestützte Tool analysiert Quellcode, findet mögliche Fehler und Schwachstellen und liefert Vorschläge zur Verbesserung der Codequalität. GitHub Copilot, ein weiteres Tool, erstellt Code auf der Grundlage von Kontext und vorhandenen Beispielen. Mit Milliarden von Codezeilen trainiert, kann es als Pair-Programmer für Entwickler fungieren, automatisch Code generieren, Vorschläge machen und umsetzen.
Interessiert an weiteren Tools? Hier entlang.
Seit die Menschen programmieren, mussten sie sich immer wieder anpassen und weiterentwickeln. Auch KI bringt Veränderungen mit sich. Mit den Fortschritten von KI ändern sich die Zeiten, auch für Programmierer*innen.
Indem KI repetitive Aufgaben automatisiert, die Produktivität steigert, eine erweiterte Fehlersuche ermöglicht usw., drängt sie Entwickler*innen in neue Rollen. Was bedeutet das in der Praxis? Hier ein Einblick von Jessica:
«Ich habe langjährige Erfahrung als Softwareentwicklerin. Bis vor Kurzem habe ich Code von Grund auf neu geschrieben, optimiert, getestet und verbessert. Um Informationen zu sammeln, nutzte ich meine Kenntnisse von Frameworks und Libraries, recherchierte im Internet oder fragte Kollegen.
Heute erledigt generative KI diese und mehr Aufgaben – in einem Bruchteil der Zeit. Das wirkt sich auf meinen Alltag als Entwicklerin aus.
Wenn ich jetzt neue Funktionalität in einem Projekt einführen soll, beginne ich mit der Ideenfindung. Zunächst beschreibe ich in groben Zügen die technischen und geschäftlichen Vorgaben sowie meine Vision der neuen Features. Dann bitte ich die KI um zwei Vorschläge, wie sich das Problem lösen lässt. Ich wähle eine Möglichkeit aus und schlage gestützt auf mein Fachwissen Verfeinerungen vor.
Nun fordere ich den in die IDE (integrierte Entwicklungsumgebung) integrierten KI-Assistenten auf, Platzhalter-Code, grundlegende Strukturen und eine erste Implementierung für die Geschäftslogik zu erstellen. Dies beschleunigt die erste Phase der Entwicklung. Dann verfeinere ich den von der KI erstellten Code wiederum. Dabei behalte ich stets die projektspezifischen Bedürfnisse und Vorgaben im Blick.
Zum Schluss prüfe ich das Ergebnis. Denn ich trage auch für den Beitrag der KI die volle Verantwortung.»
Da künftig kein Weg an KI vorbeiführen wird, gewinnen sowohl KI-bezogene als auch gewisse herkömmliche Fähigkeiten an Bedeutung. Zum Beispiel:
«Entwickler*innen müssen verstehen, welche geschäftlichen Bedürfnisse aus der Disruption entstehen, und lernen, auf Trends zu reagieren. Nur so können sie echte Probleme von Menschen lösen.» Dávid Balakirev |
|
Ob es eher Fluch oder Segen ist, wenn das Codeschreiben mit KI automatisiert wird, hängt von der Situation und den Zielen (zum Beispiel Standard- vs. Individualsoftware) eines Unternehmens ab.
Vorteile, wenn Codeschreiben mit KI automatisiert wird |
|
Höhere Produktivität |
|
Bessere Codequalität |
|
Skalierbarkeit und Anpassbarkeit |
|
Codepersonalisierung |
|
Konsistente Projekte |
|
Lernen und Erweitern von Fähigkeiten |
|
Kein Zweifel: Werden gewisse Aufgaben mit KI automatisiert, zeigen sich die Vorteile über den gesamten Entwicklungszyklus und firmenweit. Dies sind die wichtigsten Hebel für einen Performance-Kick:
Aufgaben, die sich mit KI automatisieren lassen:
Code erstellen
Code verstehen
Code überarbeiten und optimieren
Fehler beheben
Vorausschauend Code schreiben
Testen
Nachteile, wenn Codeschreiben mit KI automatisiert wird | |
Geringere Kreativität |
|
Abhängigkeit und Verkümmern von Fähigkeiten |
|
Verzerrte Daten und Fehlerverstärkung |
|
Erstinvestition |
|
Ethische und rechtliche Herausforderungen |
|
Angst vor Stellenverlust |
|
Wie gezeigt, bringt es zahlreiche Vorteile, wenn Codeschreiben mit KI automatisiert wird. Wie üblich gibt es auch die Kehrseite der Medaille, insbesondere:
Wie sich die Automatisierung des Codeschreibens mittels KI auswirkt, hängt letztlich davon ab, wie diese Änderung eingeführt und in den Entwicklungsprozess integriert wird. Entscheidend für den Erfolg wird die Balance sein zwischen dem Ausschöpfen des Potenzials von KI und dem Bewahren der wichtigsten Rollen menschlicher Entwickler.
Hier ein paar Stimmen von professionellen Softwareentwickler*innen zu den Erfahrungen, die sie mit den Grenzen von KI beim Codeschreiben gemacht haben:
«KI strafft zwar Prozesse, doch braucht es den Menschen, um die Übersicht zu behalten über Kontext, Ethik und Fehlerbehebung.»
«Die Probleme reichen von ‹das Prompten von Code dauert länger als das Schreiben› über ‹wollte eine falsche Library-Version benutzen› bis hin zu ‹war unfähig, meinen Code zu interpretieren›.»
«Ich werde KI erst benutzen, wenn mein Arbeitgeber eine Firmenlizenz für ein KI-Tool kauft, sodass ich es vermeiden kann, das Modell mit internen Daten zu trainieren.»
«Die Nutzung von KI kann das Recht am geistigen Eigentum verletzen.»
Es ist nicht zu übersehen: Die Diskussionen über KI in der Softwareentwicklung schwanken heute und wohl auch künftig zwischen Begeisterung und Bedenken.
Im Jahr 2024 und danach werden die Fähigkeiten von KI gemäss Prognosen exponentiell zunehmen, was den Prozess der Softwareentwicklung zusätzlich unterstützt. Künftige Tools werden anpassbar sein: Sie funktionieren mit Firmensystemen und machen Vorschläge, überlassen die Entscheidung aber den Nutzer*innen.
KI-Systeme beherrschen zahlreiche Schritte im Softwareentwicklungszyklus, offenbaren indes auch einige mögliche Schwächen:
Diese Bedenken dürften über 2024 hinaus anhalten. Mit anderen Worten: Es wäre noch verfrüht für Softwareentwickler*innen, Däumchen zu drehen. Vielmehr das Gegenteil sollte der Fall sein.
Künftig werden sich jene Softwareentwickler*innen behaupten, die bereit sind, stets dazu zu lernen, die KI-Systeme in ihre Arbeit einbeziehen und sich auf einen KI-Teilbereich spezialisieren. Zugleich kommen sie nicht umhin, ihre menschlichen Fähigkeiten zu erweitern, einschliesslich Kommunikation und Teamarbeit.
In ihrer neuen Rolle befassen sich Softwareentwickler*innen zunehmend mit dem grossen Ganzen: Probleme erkennen, Probleme formulieren, Systeme gestalten, Lösungen entwickeln und KI nutzen, um diese Konzepte zu verwirklichen.
Herausforderungen? Gibt es. Viele. Beispielsweise soll die Zusammenarbeit in hybriden Teams aus Softwareentwickler*innen, Datenspezialist*innen und Fachexpert*innen Alltag werden. Besonders wichtig: Entwickler*innen spielen eine entscheidende Rolle bei der Einschätzung und Handhabung der ethischen Auswirkungen. Sie sollen überdies die Verantwortung für die gesellschaftlichen Folgen von KI übernehmen, einschliesslich Themen wie Voreingenommenheit, Schutz der Privatsphäre und Sicherheit.
Softwareentwickler*innen sollten die neuen Tools definitiv zu ihrem Vorteil nutzen.
Lassen wir unserer Fantasie freien Lauf: Mithilfe von KI könnten Softwareentwickler*innen digitale Lösungen schaffen, bei denen eine kognitive Komponente in die Architektur eingebaut ist. Denkbar ist zum Beispiel ein Tool mit erweiterten KI-Funktionen für die Mitarbeiterbeurteilung, das die Stimmung der hochgeladenen Feedback-Dokumente erkennt und basierend darauf Ziele oder Kurse vorschlägt.
Hier sind zwei konkrete Beispiele, wie KI Softwareentwickler*innen bei deren täglichen Arbeit unterstützen kann:
Ob nun KI oder die menschlichen Entwickler*innen beim Codeschreiben die Nase vorn haben, hängt im Einzelfall von den spezifischen Anforderungen ab. Dazu einige Überlegungen:
KI-Tools sind dafür konzipiert, rasch und genau hohe Datenvolumen zu verarbeiten. KI glänzt insbesondere bei der Datenanalyse und der Automatisierung repetitiver Aufgaben, die Teil des Entwickelns sind. Mittels Machine-Learning-Algorithmen ist KI sogar in der Lage, zu lernen, sich anzupassen und so die Softwareentwicklung zu optimieren.
Wenn es allerdings darum geht, Probleme kreativ zu lösen oder komplexe Nutzererfahrungen zu verstehen, stösst KI klar an Grenzen. Zwar lässt sie sich so programmieren, dass sie zig menschliche Attribute nachahmen kann. Doch ihre Fähigkeit, menschliches Denken tatsächlich zu verstehen und nachzubilden, bleibt fragwürdig.
KI vs. menschliche Entwickler*innen: Stärken und Schwächen | ||||||
KI | Mensch | |||||
Stärken |
|
|
||||
Schwächen |
|
|
Im Gegensatz zu KI sind menschliche Programmierer*innen in der Lage, kreativ zu arbeiten, abstrakt zu denken und bei Entscheidungen ethische Aspekte zu berücksichtigen. Diese Eigenschaft gepaart mit der Fähigkeit, menschliche Bedürfnisse und Erfahrungen zu verstehen, ermöglicht es «echten» Programmierer*innen, nutzerzentrierte und innovative Software zu entwickeln.
Selbstverständlich sind auch Menschen nicht frei von Schwächen. Repetitive oder eintönige Aufgaben können zu Fehlern, Ineffizienz und mittelfristig sogar zu Motivationsproblemen führen. Zudem sind Menschen bei der Verarbeitung hoher Datenvolumen nicht annähernd so schnell und genau wie KI – was gewisse Phasen der Softwareentwicklung bremsen kann.
Wer hat nun die Nase vorn?
Beide. Es ist ein Kopf-an-Kopf-Rennen. Denn sowohl KI als auch menschliche Entwickler*innen haben Stärken, die je nach Szenario sehr wertvoll sind. Das zu verstehen, hilft, die jeweiligen Stärken gezielt zu nutzen. Gelingt das, lässt sich Software künftig effizienter und dynamischer entwickeln.
«Entwickler*innen, die im stillen Kämmerlein vor sich hin arbeiten, sind passé. Heute sind solche mit ausgeprägten Softskills wie emotionale Intelligenz, Kommunikationsstärke, Kreativität und Flexibilität gefragt, die sich komplexen Aufgaben widmen und Routineaufgaben der KI überlassen.» Vanessa Aicher |
|
KI birgt zweifellos enormes Potenzial. Sie wird Softwareentwickler*innen jedoch vielmehr unterstützen als ersetzen, zum Beispiel indem sie als Co-Pilot agiert. Einzigartige menschliche Fähigkeiten wie Kreativität, Problemlösung und emotionale Intelligenz bleiben unersetzlich.
Tatsächlich steuern wir nicht auf eine von KI bestimmte Welt zu, sondern auf eine, in der wir das Beste aus beiden Welten nutzen. Wir sollten KI als Hilfe betrachten, die uns produktiver macht, und nicht als Konkurrentin, die uns aufs Abstellgleis manövriert. Das Gegenteil ist der Fall: KI wird dem Fachkräftemangel in der IT-Branche entgegenwirken.
Nutzen Sie die Entwicklung zu Ihren Gunsten: Machen Sie sich mit KI-Technologien vertraut und beziehen sie das Potenzial von KI in ihre Arbeit ein. Überlassen Sie die langweiligen Arbeiten der Maschine. Widmen Sie sich strategischen und kreativen Aufgaben, die erfolgsentscheidend sind.
Planen Sie, KI zu Ihrem Verbündeten zu machen in dieser von Technologie und Tempo geprägten Welt? Denken Sie daran: Es sind Menschen, die die Technologie entwickelt haben. KI ist ein Werkzeug. Und ein Werkzeug gehört in starke Hände. Sie haben es jederzeit im Griff.