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.

„Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern“ weiterlesen

Refactoring? – Papperlapapp! Es läuft doch!

Das folgende Szenario erleben Softwareentwickler insbesondere zu Beginn ihrer Karriere häufig. Vielleicht hilft dir diese Geschichte, den Wert von Refactoring, TDD und Clean Code besser einschätzen zu können.

Eine vielleicht nicht ganz unbekannte Geschichte

Endlich geschafft! Du hast dich tagelang gequält und nun funktioniert endlich das Modul, das schon seit langem fertiggestellt sein sollte. Durch Versuch und Irrtum hast du viele Varianten durchgespielt. „Keine Zeit mehr für Aufräumarbeiten“ denkst du dir, checkst den Code ein und lieferst das Modul aus.

Die neue Klasse hat zwar 1000 Zeilen, ist zuständig für den Aufbau der Datenbankverbindung und weitere 100 Dinge aber was soll’s? Es läuft und Änderungen an diesem Modul sind sowieso unwahrscheinlich!

„Refactoring? – Papperlapapp! Es läuft doch!“ weiterlesen

Statische Methoden testen – Es müssen ja nicht Mocks sein!

Statische Methoden testen ist nicht so schwer wie man denkt! Liest man jedoch Artikel oder betrachtet man Videos zu statischen Methoden und JUnit, werden meist Mocking Frameworks als Lösung diskutiert. Beispielsweise wenn man die Diskussion bei stackoverflow.com verfolgt.

„Statische Methoden testen – Es müssen ja nicht Mocks sein!“ weiterlesen

Vom Absolvent zum Java Software Craftsman

Du stehst kurz vor dem Abschluss deines Studiums / deiner Ausbildung! Sehr gut! Deine Karriere als handwerklich versierter Softwareentwickler (vgl. Software Craftsmanship) kann nun Fahrt aufnehmen. Doch was zeichnet nun einen professionellen Softwareentwickler aus?

Um ein guter Softwareentwickler zu sein, muss man sich ständig weiterentwickeln. Nicht nur die Technik im Sinne von Betriebssystemen, Browsersoftware und Hardware entwickelt sich ständig weiter, auch Best Practices sind einem ständigen Wandel unterlegen. Um Software effizient zu entwickeln, bedarf es der Kenntnis aller Möglichkeiten innerhalb eines Technologieökosystems. Nur so lassen sich die richtigen Entscheidungen treffen und die besten Ergebnisse erzielen (Quelle: Björn Weinbrenner)

Diese Aussage von Björn Weinbrenner trifft meiner Meinung nach den Nagel auf den Kopf. Du musst Werkzeuge, Methoden und Technologien kennen, um deren Tauglichkeit in der Praxis einschätzen zu können (vgl. Abschnitt „Lese kontinuierlich…„). Für erste möchte ich dir ein paar Tipps mit auf den Weg geben, wie du diesem hohen Anspruch näher kommst.

„Vom Absolvent zum Java Software Craftsman“ weiterlesen