Andreas Becker - Mit Leib und Seele...
Andreas Becker - Mit Leib und Seele...

IT gestalten... Mit Leib und Seele

FrĂŒhe Begeisterung fĂŒr Computer

Zwei PC-Monitore, mit Entwicklungsumgebung und Musik-Player Meine Begeisterung fĂŒr Computer wuchs schon in meiner Kindheit in mir heran, obwohl ich einen großen Teil meiner freien Zeit draußen verbrachte, besonders in unserem großen Garten. Besonders an Tagen mit schlechtem Wetter habe ich mich mit Videospielen auf dem Game Boy, oder unseren ersten Rechnern, einem Amiga 500 und einem 386er beschĂ€ftigt, spĂ€ter auch Texte geschrieben und erste Gehversuche mit einfachen Grafikprogrammen gemacht. Als auf dem Gymnasium der Differenzierungskurs Informatik angeboten wurde, bei dem auch die Programmierung in Logo auf dem Lehrplan stand, war ich sofort Feuer und Flamme. Die Idee, einen Computer zu programmieren und so kreativ ganz neue Möglichkeiten auf dem Bildschirm zu schaffen, haben mich fasziniert. TatsĂ€chlich hat man uns damals die wichtigsten Grundlagen prozeduraler Programmierung vermittelt, auf denen der folgende Oberstufen-Grundkurs Informatik aufbaute. Dort wechselten wir zur objektorientierten Programmiersprache Object Pascal und entwickelten in der Entwicklungsumgebung Delphi 3, wobei uns wiederum wertvolle Grundlagen der objektorientierten Programmierung, sowie Konzepten der Datenstrukturen und Algorithmen vermittelt wurden.

Als Jugendliche haben wir nach der Schule hĂ€ufig ein Internet-CafĂ© in der Innenstadt besucht. Eine halbe Stunde Surfen kostete 3 Mark. Die – fĂŒr damalige VerhĂ€ltnisse – FĂŒlle an Informationen, die man ĂŒber diverse Suchmaschinen, wie Yahoo, Fireball, Lycos und Altavista sammeln konnte, eröffnete ganz neue Möglichkeiten. Als wir dann zuhause endlich das erste Analogmodem bekamen, war das wie ein Eintritt in eine neue Welt. So kam es auch nicht von ungefĂ€hr, dass ich mich bald mit der Frage beschĂ€ftigte, wie man selber so eine Homepage erstellt. Ich eignete mir im Selbststudium HTML- und CSS-Kenntnisse an und hostete bald meine ersten, furchtbar aussehenden Webseiten auf verschiedenen freien Webspaces. SpĂ€ter reizte mich auch der Gedanke, Webseiten mit dynamischen Inhalten zu entwickeln. Also nahm ich PHP als serverseitige Scriptsprache, in Verbindung mit MySQL als Datenbank als nĂ€chstes in Angriff, um in der Folge ein GĂ€stebuch, ein Warenkorbsystem und eine Community-Plattform fĂŒr unser damaliges Tabletop-Hobby „Mage Knight“ inklusive User-Berechtigungen, Artikeln und einer Anbindung an das Forum phpBB zu entwickeln. Die hierbei entwickelten Webseiten waren schon sehr viel ansehnlicher und besser bedienbar, als bei meinen ersten Versuchen. Obwohl sich die Nutzerzahlen immer stark in Grenzen hielten, habe ich hier doch vieles lernen können und eine Menge Spaß gehabt. Neben einer Vielzahl von Tutorials aus dem Internet haben mich dabei auch meine heiß geliebten Hefte aus dem Knowware-Verlag damals sehr weitergebracht. Schließlich baute ich auch noch eine Abi-Homepage fĂŒr unseren Jahrgang, wieder mit einem angeschlossenen phpBB, auf dem die kommenden Abi-Parties, aber auch Themen der verschiedenen Arbeitsgemeinschaften (Abi-Zeitung, Abi-Parties, Abi-Scherz, usw.) diskutiert wurden.

Studium der IT-Sicherheit in Bochum

Insgesamt zehn Ordner mit Unterlagen zu meinem Studium der IT-Sicherheit Nach einem Praktikum in der Softwareentwicklung der Polizei NRW im Anschluss an mein Abitur trat ich konsequenterweise ein Studium eines relativ jungen Studiengangs der IT-Sicherheit an der Ruhr-UniversitĂ€t Bochum an. Neben einem soliden Fundament an Informatikkenntnissen versprach der Studiengang auch Einblicke in die Welt der Kryptographie und IT-Sicherheit, die mich damals außerordentlich reizten. Ich hatte das große GlĂŒck, diese Dinge bei einigen sehr jungen Professoren erlernen zu dĂŒrfen, die jedoch sehr bald schon zu international anerkannten GrĂ¶ĂŸen der IT-Sicherheit avancierten. Besonders die inspirierenden und packenden Vorlesungen von Herrn Professor Paar haben mich fĂŒr das Thema “Blut lecken lassen”. Wenn die Kryptographie-Vorlesung am Donnerstagnachmittag anstand, bin ich mit Feuereifer in den Hörsaal gestĂŒrmt. Diese Vorlesung wurde in der Zwischenzeit auf deutsch und auf englisch aufgezeichnet und stehen in Youtube-KanĂ€len zur VerfĂŒgung. Ein brandheißer Tipp fĂŒr alle ITler, die etwas ĂŒber Kryptographie lernen wollen!

Ich merkte im Laufe des Studiums aber auch, dass mir der kreative Part der Software-Entwicklung und seiner Methoden sehr viel mehr zusagten, als die analytisch-destruktive Herangehensweise der IT-Sicherheit. Auch, wenn die in meinem Studium vermittelten Kenntnisse natĂŒrlich zur HĂ€rtung von Systemen oder der Entwicklung sichererer Systeme dienen, ist die Denkweise eben destruktiv ausgelegt. Ich muss ein System soweit verstehen, bis ich eine Möglichkeit gefunden habe, es zu brechen. Mit dieser Information kann man das System natĂŒrlich verbessern. Ich empfand es jedoch eher passend fĂŒr meinen Weg, mich intensiver mit theoretischen und praktischen Aspekten der Informatik und des Software-Engineerings zu befassen. Und so nutzte ich die FlexibilitĂ€t meines Studiengangs und vertiefte im Hauptstudium FĂ€cher wie Web Engineering, Datenschutz, die Implementierung kryptographischer Verfahren, Datenbanksysteme und Digitale Bildverarbeitung. Zu den absoluten Erlebnissen im Studium zĂ€hlten jedoch auch ein Hackerpraktikum, bei dem wir bis in die Nacht hinein daran arbeiteten, Buffer Overflow- und Format String-Schwachstellen in einem C-Programm auszunutzen, sowie ein von einem damaligen Mitarbeiter der Firma Nokia initiiertes praktisches Fach, in dem wir ein audio-visuelles Kommunikationstool auf der Maemo-Plattform fĂŒr ein Nokia N810 entwickelten. Im Rahmen des besagten Hacker-Praktikums hatten wir außerdem die einmalige Chance, VortrĂ€ge einiger GrĂ¶ĂŸen der Informatik- und Hackerszene wie Thomas „Halvar Flake“ Dullien, Felix „FX“ Lindner und Daniel J. Bernstein zu hören.

Durchstarten als hauptberuflicher Software-Ingenieur

Meine Diplomarbeit mit dem Thema „Application and Verification of XML Signatures for Aggregated XML Documents“ schloss ich bei Herrn Professor Schwenk am Lehrstuhl fĂŒr Netz- und Datensicherheit ab, unter Betreuung von Meiko Jensen. Seit dem Abschluss meines Studiums habe ich praktische Erfahrungen in der Softwareentwicklung, primĂ€r in der Programmiersprache Java in diversen Projektkontexten bei vier verschiedenen Kunden gesammelt. Dabei war ich in unterschiedlichen TeamgrĂ¶ĂŸen von kleinen Teams (< 8 Team-Mitglieder) bis großen Teams (>50 Team-Mitglieder) im Einsatz, zum Teil verteilt auf mehrere Standorte und verbunden mit Kommunikation auf deutsch und englisch per Skype. Mein Schwerpunkt lag jedoch auf der Arbeit in mittelgroßen Teams (10-20 Mitarbeiter GesamtgrĂ¶ĂŸe, davon ca. 3-5 Entwickler) in den Bereichen der Sozialversicherung, Finanzdienstleistungen und der öffentlichen Verwaltung.

Meine fachlichen Schwerpunkte liegen nach wie vor im Design (im „Großen“ wie im „Kleinen“) objektorientierter Individualsoftware mit Java, sowie der Entwicklung und Optimierung eines angemessenen Software-Entwicklungsprozesses, sowie einem sinnvollen Tool-Einsatzes. Sowohl in der Prozessgestaltung, als auch in der Softwareentwicklung selber verfolge ich so gut es geht das sogeannte KISS-Prinzip (Keep it simple, stupid!). Es macht keinen Sinn, Software nach ĂŒberzogen komplexen Strukturen zu bauen oder komplizierte Tools einzusetzen, nur um einen standardisierten Prozess zu befriedigen. Wichtig ist mir persönlich vielmehr, die wirklichen Bedarfe in einem Projekt zu erkennen und fĂŒr diese Bedarfe eine einfachst-mögliche Lösung zu finden. HĂ€ufig mangelt es an grundlegender Dokumentation der Software-Architektur auf oberster Ebene oder Nutzungskonzepten der eingesetzten Tools. Und wenn diese Dokumentation vorhanden ist, ist sie hĂ€ufig nicht gepflegt und aktuell. Hier setze ich an und konnte in diversen Projekten mit relativ ĂŒberschaubaren Mitteln große Erleichterungen fĂŒr das Entwicklerteam schaffen.

Als Entwickler liegt mein Fokus derzeit auf der Entwicklung Java-basierter Webanwendungen und Backends. DarĂŒber hinaus habe ich ein recht starkes Fundament an Datenbankwissen und mehrjĂ€hrige praktische Erfahrung im Umgang mit SQL, O/R-Mappern und relevanten Datenbanksystemen wie Oracle und DB2 gesammelt. Auch die Integration von Enterprise-Anwendungen ĂŒber unterschiedliche Schnittstellen (File-Schnittstelle, Webservices, Messaging, gemeinsame Datenbank, DB-Link, ...) ist mir nicht fremd. Obwohl ich im Laufe meiner ProjekteinsĂ€tze erfolgreich mit diversen Tools gearbeitet habe, bevorzuge ich, wenn möglich, Eclipse als Entwicklungsumgebung, JIRA als Ticket-System und ggf. Scrum-Tool, ein Confluence-Wiki, sowie Maven- und Jenkins-basierte Buildsysteme.

Neben meiner tĂ€glichen Arbeit als Softwareentwickler und -architekt reizen mich Security-Themen, fĂŒr die ich einen starken Hintergrund durch mein Studium mitbringe, nach wie vor. Aus der Entwicklerrolle heraus habe ich LeitfĂ€den fĂŒr die sichere Anwendungsentwicklung entwickelt und teilautomatisierte Prozesse fĂŒr Security-Checks aufgesetzt.