Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern

Als Teamleiter erlebe ich häufig, wie sich selbst ausgezeichnete Studenten  der Wirtschafts- und Angewandten Informatik beim Berufseinstieg als Java Softwareentwickler schwer tun.  Warum der Einstieg so schwer fällt, hängt vermutlich damit zusammen, dass die Notwendigkeit durch viele Klassen und Projekte zu navigieren und damit die Fähigkeit Software effektiv zu analysieren im Studium oft nachrangige Behandlung findet.

Grundlegende Konzepte beim Berufseinstieg erfragen

Der Einstieg in die professionelle Softwareentwicklung in einem Team gelingt umso besser, umso mehr Klarheit über die grundlegenden Konzepte der Software bekannt sind. Der Beitrag Entspannt Einarbeiten in 3 Schritten bietet hier bereits erste Anhaltspunkte.

Darüber hinaus können folgende Fragen hilfreich sein:

  • Wie ist die Softwarearchitektur definiert (bspw. Client-Server)? Spiegelt sich diese in der Modulstruktur wieder?
  • Wird Dependency Injection eingesetzt? Wenn ja, welche Plattform/Frameworks kommen zum Einsatz (Spring Framework, CDI, PicoContainer ?)
  • Wie funktioniert die Kommunikation zwischen Client & Server (HTTP, Spring Remoting, REST)?
  • Wie werden Texte für die grafische Bedienoberfläche (kurz GUI) in der Anwendung hinterlegt und spielt Mehrsprachigkeit eine Rolle?

Wenn du diese Fragen für dich beantwortet hast, hast du schon einen großen Schritt gemacht. Denn nun bist du in der Lage deine ersten Aufgaben zu lösen und ggf. die betroffenen Stellen in der Software zu lokalisieren. Zudem solltest du damit in der Lage sein, dein theoretisches Wissen aus Vorlesungen wie Programmieren & Software Engineering in der Praxis wiederzuerkennen.

Ein Beispiel

Aufgabe: Ersetze das Label „Angebot“ in der Bestellerfassung mit dem Text „Anfrage“

Wird die Standard Java Internationalisierung verwendet und sind die GUI Klassen bspw. in Modulen mit der Bezeichnung <modulname>-client gebündelt, dann findest du durch eine simple Workspace-Suche auf Client-Projekte (vgl. Working Set, unten) in Dateien mit Bezeichner messages*.properties die Stelle ziemlich schnell.

Dasselbe Prinzip lässt sich in der Regel auch auf andere UI Frameworks übertragen. Jedoch müssen ggf. die Dateien, in denen gesucht werden soll, geändert werden.

In der Codebasis zurechtfinden

Oft verunsichert Berufseinsteiger die große Codebasis mit der sie arbeiten sollen. Unternehmenssoftware umfasst häufig mehrere Millionen Zeilen Code und eine Vielzahl von Modulen bzw. Projekten. Deshalb ist es wichtig zu wissen, wie man sich effektiv durch den Code bewegt und damit die gesuchte Stelle finden kann.

Die Entwicklungsumgebung Eclipse (engl. IDE) bietet dafür einige nützliche Funktionen. Mit nur einer Hand voll Tastenkombinationen lässt sich sehr schnell Licht ins Dunkel bringen. Ein Blick in die Eclipse Hilfe ist hier goldwert.

Tipp für den Berufseinstieg: Navigation in der Codebasis

Fokus & Klarheit durch Working-Sets

Unabhängig davon, ob dein Team bereits Working-Sets einsetzt oder nicht. Du solltest es auf jeden Fall tun! Dieses Konzept ermöglich nicht nur den Suchbereich elegant einzugrenzen, sondern  darüber hinaus fokussiert zu arbeiten, indem beispielsweise aktuell nicht benötigte Projekte ausgeblendet werden können.

Tipp für den Berufseinstieg: Suche mit Hilfe von Working sets gezielt einsetzen
Eclipse Datei-Suche eingeschränkt auf Working-Sets

Hast du Fragen? Ich freue mich wie immer über Kommentare!