WOGRA-Mitarbeiter im Interview

Software Engineer und Architect Stefan Fenn

Karriere: Interview Stefan Fenn

Hallo Stefan,

vielen Dank, dass Du dich für dieses Interview zur Verfügung stellst.

 

Du warst lange als wissenschaftlicher Mitarbeiter an der Uni Augsburg bei Professor Bauer der einmal über Dich sagte „Er war mein Schweizer Taschenmesser“. Was hast Du vom Lehrstuhl mitnehmen können, was Dir heute noch hilft?

Professor Bauer unterteilte seine Ideen in „Konkret“, „Wirr“ und „Sehr Wirr“. Ich hatte damals öfters ein Händchen die letzteren zwei zu einer konkreten Umsetzung zu bewegen. Auch ich versuche immer im ersten Schritt einen möglichst weiten und breiten Blickwinkel des Problems zu bekommen und nähere mich dann Schrittweise einer praktikablen Lösung.

Am Lehrstuhl konnte ich vieles über MDA, DSLs, verteilte Systeme und semantische Technologien erfahren, welche ich in meinen aktuellen Projekten sehr gut verwenden kann. Ich bin äußerst froh, dass ich am Lehrstuhl von Professor Bauer gearbeitet habe.

 

Wieso hast Du nach Deinen wissenschaftlichen Tätigkeiten gerade WOGRA als Arbeitgeber gewählt?

Ich wollte zu einem Unternehmen gehen, welches Kreativität und Weiterbildung unterstützt. Außerdem habe ich mir über die Jahre eine Kernkompetenz im Bereich Java aufgebaut und wollte in verschiedenen Software-Projekten mitwirken. Da ist mir die Wahl wirklich nicht schwer gefallen.

Für mich ist das A und O, dass man sich in seiner Arbeit wohl fühlt und Dank des hervorragenden Teams ist das auch zu 100% so.

 

Deine Hobbys sind die hohen Berge, gefährliche Klettersteige und die schwierigsten Routen in der Boulderhalle. Inwieweit brauchst Du Sport als Ausgleich zur Arbeit?

Für mich gibt es nichts Schöneres als in der Natur zu sein. Gerade bei einen Büro-Job ist es mir wichtig fit zu sein. Körperliche Fitness ist für mich zudem Grundlage meiner geistigen Fitness.

 

Bei unseren Werkstudenten kann loben wer will, Dein Lob ist für sie immer die höchste Auszeichnung und intern gilt: „Erst wenn Stefan eine Arbeit für gut befunden hat, ist sie wirklich gut.“ Wie hast Du Dir diesen Ruf erarbeitet?

Schon seit der Schule habe ich Spaß mein Wissen weiterzugeben. Eine Freundin habe ich derart in Mathe begeistert, dass sie sich überlegt hat, auch Mathematik zu studieren. Gut, sie hat sich doch für Jura entschieden, aber ich denke Begeisterung und Neugierde sind wichtige Faktoren, um eine Sache wirklich zu können und manchmal gelingt es mir erfreulicherweise dies beim ein oder anderen zu entfachen.

Bei den Werkstudenten ist eigentlich immer Begeisterung und Neugierde vorhanden und ich versuche ihnen bei der Umsetzung zu helfen, die langfristig und zuverlässig funktioniert. Meinen „Ruf“ könnte ich bekommen haben, da ich oft kritisch auf Schwachstellen und unbedachte Sonderfällen aufmerksam mache. Aber auch das sind Erfahrungen, die es sich lohnt weiter zu geben. Im Studium nannten wir die selbstkritische Inspektion „Kill your own baby“.

 

Neben deiner hauptberuflichen Tätigkeit bei WOGRA unterstützt Du auch noch nebenberuflich Projekte der Hochschule, dort vor allem das Projekt Math4U2 von Professor Weiß. Was fasziniert Dich so an der Softwareentwicklung, dass Du sie auch in der Freizeit noch so intensiv betreibst?

Ich bin von der Softwareentwicklung fasziniert, weil man jede noch so abstruse Idee konkretisieren und ausprogrammieren kann, und ich habe viele Ideen…

In meiner Freizeit versuche ich deshalb die ein oder andere Idee umzusetzen. Es gab auch schon Fälle, wo ich Teile meiner privaten Entwicklung wieder WOGRA oder als Open-Source zur Verfügung gestellt habe. Math4U2 ist für mich ein interessantes Projekt, da ich sehr schön Mathematik und Informatik verbinden kann.

 

Eines Deiner Mottos lautet: „Jedes Jahr eine neue Programmiersprache lernen.“ Was waren die letzten und was planst Du für dieses und nächstes Jahr?

Die letzten Sprachen, die ich mir intensiv angeschaut habe sind:

  • Die neuen Sprachfeatures von Java 8
  • Alloy (Constraint-Checker Sprache, die SAT-Solver verwendet)
  • ANTLR 4 (DSL-Generator)
  • XText (DSL-Generator in Eclipse)
  • Elasticsearch-Queries
  • Lean Modeling mit Natspec
  • Yaml und dazugehörigen Frameworks

Wichtiger als die Sprache zu lernen ist das Verständnis, welches Problem diese Sprache lösen soll.

Dieses Jahr habe ich mich von der Idee des CQRS und EventSourcings begeistern lassen und entwickle schon fleißig an einem Beispiel. Außerdem will ich mir Neo4J mit der Cypher-Sprache genauer ansehen.

Für nächstes Jahr steht eine klassische Sprache auf dem Plan: Python

 

Du bist einer der geistigen Architekten von WMS. Warum glaubst Du, dass dieser Ansatz Softwareentwicklung vereinfachen und verbessern kann?

Ich denke bei Individualsoftware ist es wichtig möglichst schnell alle fachlichen Anforderungen umzusetzen während die technische Umsetzung zweitrangig ist. Bei vielen Kunden findet man Standardanforderungen, die wir mit WMS einfach und schnell umsetzen können.

Bei allen anderen Anforderungen nutzen wir die Mächtigkeit von WMS und fügen die entsprechende Geschäftslogik durch integrierte Mechanismen hinzu oder erweitern unsere „Standard-Anforderungen-Palette“.

Die technische Umsetzung ist davon unabhängig und wir sind damit in der Lage die unterschiedlichsten Applikation-Umgebungen (z.B. Handy, Web) zu bedienen. Damit kann jeder Kunde – sowohl bei der fachlichen als auch der technischen Umsetzung – etwas vom vorherigen Kunden gewinnen.

 

Du teilst Dir ein Büro mit Wolfgang Reis. Wenn man Euch beide im Winter im Büro besucht, sitzt Du meist im T-Shirt am Schreibtisch während Wolfgang zwei Jacken an hat. Entstehen da keine Interessenskonflikte?

Nein, überhaupt nicht. Solange ich nicht mit nacktem Oberkörper programmieren muss, werde ich die „heiße“ Stimmung genießen :)