IT-MitarbeiterInnen finden ist einfach. Aber nur, wenn du einen entsprechenden IT-Wortschatz hast. In diesem Blogbeitrag zeige ich dir, was IT-Experten und Expertinnen unter E wie Entwicklungsumgebung verstehen.
Eine Entwicklungsumgebung, englisch Integrated Development Environment oder kurz IDE, darfst du dir als die zentrale Arbeitsumgebung eines Softwareentwicklers oder einer Softwareentwicklerin vorstellen. Doch warum ist das wichtig?
Softwareentwicklung ist oft komplex und besteht aus mehreren Schritten. Zunächst wird ein Text in einer bestimmten Syntax erstellt. Dieser muss dann mithilfe eines Compilers in maschinenlesbaren Code übersetzte werden. Anschließend erfolgen oft mehrere Durchläufe, in denen die Software analysiert, getestet oder teilweise ausgeführt wird. Dazu kommt dann oft noch ein Debugger.
Für all dies benötigt der/die SoftwareentwicklerIn verschiedene Tools. Und eine Entwicklungsumgebung umfasst in der Regel all diese Tools – und das an nur einem Ort. Das ist genau das, was du als SoftwareentwicklerIn willst. Du willst effizient arbeiten – mit allen Tools an einem Ort. Warum? Weil du nicht jedes Mal verschiede Tools in verschiedenen Bereichen mit verschiedenen Oberflächen, anderen Knöpfen, anderen Designs benutzen willst.
Softwareentwicklung besteht heutzutage nicht nur aus Code erzeugen, kompilieren, debuggen, ausführen, testen, etc. Ein wichtiges Detail fehlt: Softwareentwicklung findet im Team statt. Und das erfordert Versionskontrolle – das heißt, die verschiedenen Versionen der Software müssen gemanagt werden. Wenn ein Kollege oder eine Kollegin bereits Änderungen, eventuell sogar an der gleichen Stelle wie du vorgenommen hat, dann muss das entsprechend synchronisiert werden und eventuell auftretende Konflikte müssen gelöst werden. Daher bringen Entwicklungsumgebungen in der Regel auch Erweiterungen bzw. Integrationen für die Versionskontrolle mit.
Doch es geht noch weiter.
Heutzutage ist Software in der Regel strukturiert in verschiedenen Modulen. Du darfst dir das wie verschiedene Projekte innerhalb einer Entwicklungsumgebung vorstellen; diese liegen dann tatsächlich nebeneinander im Dateisystem. Daher muss eine Entwicklungsumgebung auch in der Lage sein, Abhängigkeiten zwischen verschiedenen Projekten oder Modulen aufzulösen. Wenn du also in Modul A eine Änderung vornimmst und ausgehend von Modul B aber etwas testen möchtest, Modul B allerdings von Modul A abhängt, dann sollte das immer mit der aktuellsten Version erfolgen. Du möchtest also sicherstellen, dass vor dem Start des Tests die Änderungen aus Modul A erst übersetzt und kompliert wurden, sodass stets die aktuellste Version im Hauptmodul Verwendung findet.
Du siehst: Die Entwicklungsumgebung bietet zahlreiche Tools, Erweiterungen und Plug-ins, die das Entwickler-Leben deutlich erleichtern. Welche das sind, ist natürlich entwicklungsumgebungs-spezifisch.
Das ist primär von der Programmiersprache abhängig. Denn jede Programmiersprache bildet ihr eigenes Ökosystem. Das heißt, um eine Programmiersprache herum entwickeln sich Tools und Erweiterungen, die man verwendet, um effizient Softwareentwicklung betreiben zu können. Daher haben sich innerhalb der verschiedenen Programmiersprachen auch verschiedene Entwicklungsumgebungen entwickelt.
So sind IntelliJ und Eclipse im Ökosystem von Java die bekanntesten Entwicklungsumgebungen. Dahingegen sieht es im .NET-Umfeld anders aus. Hier zählen Visual Studio oder Visual Studio Code zu den bekanntesten Entwicklungsumgebungen. Doch im Kern lösen all diese Entwicklungsumgebungen dieselben Probleme oder Herausforderungen: Sie haben alle Tools oder Erweiterungen zum Kompilieren und Debuggen, für die Versionskontrolle und die Code-Vervollständigung oder beinhalten einen guten Texteditor, um die Softwareentwicklung angenehmer und effizienter zu gestalten.
Entweder lieben lieben oder hassen SoftwareentwicklerInnen eine bestimmte Entwicklungsumgebung; tatsächlich gibt es da große Glaubenskriege. Dies ist vor allen Dingen dann problematisch, wenn neue Mitarbeitende es gewohnt sind, in einer anderen Entwicklungsumgebung zu entwickeln als das bestehende Team. Denn wenn jeder Entwickler/jede Entwicklerin eine eigene Entwicklungsumgebung benutzt, funktioniert die Teamarbeit nicht mehr reibungslos. Alle Prozesse, die definiert und entwickelt wurden und alle Erweiterungen und Tools, die eventuell sogar selbst geschrieben wurden, um die Entwicklungsprozesse zu optimieren, basieren letztendlich auf der Entwicklungsumgebung. Wenn nun jede/r Mitarbeitende seine eigene Entwicklungsumgebung nutzen möchte, führt das meist nur zu Frust.
Ein/e EntwicklerIn hat das Bedürfnis, effizient Ergebnisse produzieren zu können. Er/Sie hasst es, wenn kleine Änderungen zu minutenlangen Wartezeiten führen. Oder wenn eine bestimmte Tastenkombination nicht funktioniert. Daher kann es für Talente durchaus relevant sein, welche Entwicklungsumgebung im Entwicklungsteam verwendet wird.
Daher mein Tipp: Kläre das ab! Sprich mit Hiring-Managern. Finde heraus, welche Entwicklungsumgebung im Einsatz ist und in welcher Version bzw. mit welchen Erweiterungen. All das können Begeisterungsfaktoren für das Talent sein, da es das Tool eventuell bereits selbst eingesetzt hat und entsprechend Wissen und Effizienzgewinne mitbringen kann. Genauso kann es aber auch ein Ausschlusskriterium für einen Job sein, wenn dem Talent klar wird, dass es in dem Setup bzw. mit dem Tech Stack nicht glücklich werden wird.
Die Entwicklungsumgebung ist also ein wichtiger Bestandteil des Tech Stacks, mit dem ein/e SoftwareentwicklerIn tagtäglich arbeitet. Daher solltest auch du der Entwicklungsumgebung die notwendige Relevanz zusprechen. Nimm es in deinen Fragenkatalog auf, wenn du die nächste Profilbesprechung machst!
Das war ein kleiner Ausflug zu meinem IT-Recruiting-ABC mit E wie Entwicklungsumgebung.
Du findest das cool, würdest aber gerne mehr wissen? Dich würde es vor allen Dingen interessieren, wie du das in deine Recruiting-Strategie einbauen kannst? Und wie du aus diesen Informationen praxisrelevantes Wissen generieren kannst?
Dann lass uns doch bei einem kostenfreien Beratungstermin darüber sprechen, wie dir dieses IT-Wissen helfen kann, noch besser, effektiver und effizienter deine Techies zu rekrutieren.
Buche jetzt deinen kostenfreien Beratungstermin unter https://www.it-mitarbeiter-finden.de/.