Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The little Software Developer - An unexpected Journey

The little Software Developer - An unexpected Journey

Viele Software-Entwickler arbeiten bei IT-Dienstleistern, die Individualsoftware als Auftragsarbeit innerhalb zeitlich abgeschlossener Projekte entwickeln. Andere arbeiten bei Firmen, die zeitlich unbegrenzt an der kontinuierlichen Entwicklung und Verbesserung von Produkten arbeiten.
Beim Wechsel von der einen in die andere Welt begibt man sich auf eine Reise, auf der einem neue Sicht- und Arbeitsweisen begegnen. Von einigen dieser Begegnungen wollen wir berichten.
Berufsanfänger sollten sich über die Unterschiede im Klaren sein, bevor sie eine Entscheidung treffen, die möglicherweise für den Rest ihrer beruflichen Karriere Bedeutung hat. Aber auch für diejenigen, die eine dieser Welten bereits gut kennen, gibt es durch den Blick über den Tellerrand neue Einsichten. Mit etwas Glück kann hier sogar die eine von der anderen Welt etwas lernen.

Frank Gerberding

September 24, 2019
Tweet

More Decks by Frank Gerberding

Other Decks in Programming

Transcript

  1. 2 Speaker Eike Hirsch war Gründungsmitglied der smartsteuer GmbH und

    entwickelt seit 13 Jahren ihre Produkte. Seine Interessen reichen von Software-Architektur über Agilität hin zu Leadership. Frank Gerberding ist Software-Entwickler und -Architekt bei der smartsteuer GmbH. Er beschäftigt sich seit über 20 Jahren mit vielen Themen im Umfeld der Java-Plattform. Als Full-Stack-Web- Entwickler interessieren ihn vor allem Web-Architekturen, Skalierbarkeit, Resilience und Software-Qualität. @stagzta https://www.linkedin.com/in/eike-hirsch-668269120/ https://www.xing.com/profile/Eike_Hirsch/cv [email protected] @MilesBehind69 https://www.linkedin.com/in/frank-gerberding/ https://www.xing.com/profile/Frank_Gerberding/cv [email protected]
  2. 12 Wie ist die Entwicklung organisiert?
 (Software-Dienstleister) Einkauf Kunde Fachbereich


    Kunde Software
 Entwicklung Betrieb
 Kunde Wartung/Support
 Kunde Vertrieb Anwender
  3. 13

  4. 15

  5. 19 Frameworks, Libraries & Languages
 (Software-Dienstleister) Software
 Entwicklung Betrieb
 Kunde

    Wartung/Support
 Kunde techn. Richtlinien
 Kunde Fachbereich
 Kunde techn. Richtlinien
 Dienstleister
  6. Betriebs
 Dokumentation Architektur
 Dokumentation Vertrieb
 unterstützen Anforderungen
 aufnehmen Change Requests


    definieren Anwender
 Dokumentation Betrieb
 unterstützen Konzept
 entwickeln Tätigkeiten eines Entwicklers
 (Software-Dienstleister) Automatisierte Tests schreiben Software
 Entwicklung Entwickler
  7. 23 Tätigkeiten eines Entwicklers
 (Produkt-Entwickler) Betriebs
 Dokumentation Architektur
 Dokumentation Vertrieb


    unterstützen Anforderungen
 aufnehmen Change Requests
 definieren Anwender
 Dokumentation Betrieb
 unterstützen Konzept
 entwickeln Entwickler Kunden-Support Büromöbel aufbauen Software
 Entwicklung Automatisierte Tests schreiben Passanteninterviews CD-Produktion Pressereisen Promo-Aktionen Dienstleister
 steuern DEV Organisation GEMA Freigaben Recruting
  8. 25 Umgang mit Fehlern
 (Produkt-Entwickler) Verstehen & Reproduzieren Verantwortlichkeit klären

    Bug bewerten Bug „fixen“ Maßnahmen zur zukünftigen Vermeidung
  9. 27 Umgang mit Fehlern
 (Software-Dienstleister) Software- Dienstleister A (Anforderungen) Betrieb

    Kunde
 (Betrieb, Deployment) Fachbereich Kunde (Anforderungen, Bedienung) Software- Dienstleister B (Entwicklung) Software- Dienstleister C (Entwicklung) Entwicklung Kunde (Integration, Konfiguration) Fehler-Ursache?
  10. 29 Fazit Von Dienstleister lernen Häufige Konfrontation mit neuen Technologien

    Klar definierte Prozesse Von Produktentwickler lernen Direkter Kontakt zum Kunden/ Anwender Unbürokratische Organisation Dienstleister und Produktentwickler können voneinander lernen Entwickler bei Dienstleister Muss sich mit festen Prozessen und Strukturen wohl fühlen Muss oft fremdbestimmt arbeiten Entwickler bei Produktentwickler Sollte sich überall kreativ einbringen wollen Muss oft selbstbestimmt arbeiten