Die jungen Wilden: Maximilian Bosch

Maximilian Bosch ist 17, interessiert sich für funktionale Programmierstile und unterstützt Open-Source-Projekte. Wie kommt's?

vorlesen Druckansicht
Die jungen Wilden: Maximilian Bosch
Lesezeit: 9 Min.
Von
  • Björn Bohn

In der heise-Developer-Serie "Die jungen Wilden" interviewen wir in regelmäßigen Abständen junge Entwickler. Heute dürfen wir Maximilian Bosch begrüßen.

heise Developer: Hallo Maximilian! Stell dich doch bitte kurz einmal vor.

Maximilian Bosch: Ich bin 17 Jahre alt und damit der einzige bei meinem Arbeitgeber Mayflower, der die 90er verpasst hat.

heise Developer: Seit wann programmierst du? Wie kam das Interesse zustande?

Bosch: Ich programmiere ungefähr, seit ich elf bin. Es war ein ziemlicher Zufall. Ich war ursprünglich an antiker Geschichte interessiert und ging auf ein humanistisches Gymnasium. Mit Programmieren hatte ich überhaupt nichts zu tun.

Rein aus Neugier bin ich dann der Homepage-Gruppe meiner Schule beigetreten, die primär für die Pflege der Website der Schule verantwortlich war. Dort habe ich zuerst die Grundlagen von HTML und PHP gelernt, woraufhin mein Interesse langsam, aber sicher zur Informatik gewandert ist. Irgendwann habe ich dann angefangen, eigenständig Websites zu bauen. Letztlich war das der Grundstein für meinen aktuellen Wissensstand.

heise Developer: Du bist gerade mit der Schule fertig geworden. Hast du denn schon Pläne für danach? Wie soll es weitergehen?

Maximilian Bosch

Bosch: In der Tat habe ich gerade mein Abiturzeugnis erhalten und damit das Kapitel Schule abgeschlossen. Mir wurde von einigen Kollegen nahegelegt zu studieren, unter anderem um theoretische Konzepte der Informatik besser zu verstehen, was jetzt wohl der nächste Schritt sein wird.

Ich plane, neben der Uni weiterhin zu arbeiten. Hauptsächlich weil ich glaube, dass die praktischen Erfahrungen sehr hilfreich sind.

Für die Zeit danach habe ich noch keine konkreten Pläne. Ich bin optimistisch, dass sich während und nach dem Studium genug Möglichkeiten bieten werden.

heise Developer: Du arbeitest als Werkschüler bei Mayflower. Wie kann ich mir das vorstellen? Wie sieht dein Arbeitsalltag aus?

Bosch: Als Werkschüler bei Mayflower hatte ich den großen Vorteil, dass bei mir Schule immer im Vordergrund stand und ich dadurch, insbesondere in stressigen Phasen, immer sehr flexible Arbeitszeiten hatte und teilweise auch von zu Hause aus arbeiten konnte.

Dadurch besteht mein Alltag aus sehr viel eigenständiger Arbeit, hauptsächlich der Entwicklung und teils auch Wartung von Projekten. Bei Kundenprojekten kommt noch das Daily Stand-up hinzu. Ich habe aber keine Meetings mit Kunden, hauptsächlich aufgrund meiner begrenzten Stundenzahl. Im Moment arbeite ich an einem experimentellem Projekt mit zwei Kollegen. Dort kommt es auch zu jeder Menge Diskussion über Implementierungsdetails sowie dem Review von neuem Code.

heise Developer: Mit welchen Themen der Softwareentwicklung beschäftigst du dich gerade?

Bosch: Ich investiere einen Großteil meiner Zeit in zwei Themen:

Einerseits versuche ich, Konzepte der funktionalen Programmierung zu verstehen. Das Interesse begann damit, dass ich bei Mayflower für ein Projekt Scala einsetze. Funktionale Sprachen erfordern eine deutliche Änderung des Gedankengangs beim Entwickeln, weshalb ich noch viel Übung brauche. Es ist ein langer Weg. Ich habe sehr viel Zeit damit verbracht, Fehlermeldungen, insbesondere bei Haskells GHC (Glasgow Haskell Compiler), zu verstehen. Allerdings fasziniert mich die Einfachheit vieler Lösungen, sobald man etwas dazugelernt hat.

Andererseits unterstütze ich privat auch die Linux-Distribution NixOS. Diese bezeichnet sich selbst als "purely functional Linux distribution". Kurz gesagt verwendet diese einen Package Manager, der in isolierten Umgebungen Pakete und Konfigurationen baut und sicherstellt, dass diese unveränderlich sind. Durch derartige Maßnahmen sind Vorgänge gut reproduzierbar und man kann Änderungen in der Systemkonfiguration mit einem Skript oder über das Boot-Menü wieder rückgängig machen.

heise Developer: Welche Softwarethemen faszinieren dich abgesehen davon im Moment besonders?

Bosch: Ich halte zum einen Machine Learning für ein spannendes Thema. Ich spiele hin und wieder mit dafür gedachten Implementierungen wie TensorFlow oder Dlib rum, leider fehlt mir aber gerade die Zeit, um mich einzuarbeiten. Das ist ganz oben auf meiner To-do-Liste.

Eine weitere Sache, die mich fasziniert, ist die Arbeit auf unteren Ebenen von Betriebssystemen. Ich komme leider zu selten damit in Berührung, nur teilweise beim Untersuchen von Syscalls. Aber auch hier würde ich gerne tiefer in die Materie einsteigen.

heise Developer: Wie wirst du als junger Entwickler im Berufsalltag wahrgenommen?

Bosch: Sehr unterschiedlich. In der Open-Source-Welt erwähne ich mein Alter nur sehr selten, weshalb das eigentlich nie ein Thema ist. Sofern es Leute doch erfahren, reagieren sie meist überrascht, aber es wirkt auf mich nicht so, als ob sie mich deshalb anders behandeln.

In meinem Job war zu Beginn ein ähnlicher Effekt zu beobachten. Allerdings ist das ganz schnell wieder abgeklungen und seitdem kann ich mit allen Kollegen in Meetings und bei Diskussionen auf Augenhöhe kommunizieren. Mein Alter spielt kaum eine Rolle. Ich bin dafür unglaublich dankbar, da ich kein großer Freund davon bin, dass bei Diskussionen mein Alter herausgehoben wird.

heise Developer: Du arbeitest bei Mayflower an einem konkreten Projekt. Kannst du uns etwas mehr davon erzählen?

Bosch: Vereinfacht gesagt handelt es sich um die Implementierung einer Technik für Ähnlichkeitssuche in großen Datenbanken, genannt Locality Sensitive Hashing (LSH). Wenn ich Vektoren mit vielen Dimensionen vergleichen will, kann das einige Zeit beanspruchen, was sich gerade bei großen Datensätzen negativ auf die Laufzeit auswirkt. Durch geschicktes Hashing kann man die Datenmenge vorselektieren, sodass man bei einzelnen Abfragen nicht mehr alle Vektorkomponenten abgleichen muss.

Anwendungsbeispiele hierfür sind beispielsweise Vektoren, die den Farbverlauf von Bildern beschreiben. Mit LSH kann man zu einem Suchbild sehr schnell ähnliche Bilder finden, indem man die Technik vorher auf alle Vektoren in der Datenbank anwendet.

Zu der Library selbst, die nur für die eigentliche Berechnung zuständig ist, kommt noch ein Ökosystem hinzu. Es besteht aus einem Webservice und einigen Erweiterungen, um zum Beispiel biometrische Informationen eines Gesichts mit TensorFlow als Vektor zu erhalten, wodurch man mit LSH schnell biometrisch ähnliche Gesichter finden kann. Ich habe neulich die Idee hinter LSH auch auf dem Mayflower-Blog erklärt.

heise Developer: Was würdest du jungen Entwicklern für ihren Werdegang empfehlen?

Bosch: Sich mehr Selbstbewusstsein zugestehen. Es kommt immer wieder vor, dass der Ton rau ist oder dumme Sprüche über eine Programmiersprache fallen, mit der man arbeitet. Auch wenn das oft nicht böse gemeint ist, kann es befremdlich und demotivierend wirken.

Außerdem sollte man hin und wieder über den Tellerrand blicken und sich nicht nur auf die Sachen fokussieren, die man ohnehin gut kann. Stattdessen sollte man offen für Neues sein. Das halte ich für sehr wichtig, denn dadurch läuft man nicht Gefahr, neue Entwicklungen zu verpassen und lernt immer eine Menge dazu.

heise Developer: Wovon würdest du abraten?

Bosch: Da gibt es mehrere Dinge, die ich gelernt habe und an andere weitergeben würde:

Zum einen sollte man nicht vorzeitig aufgeben und mehr Geduld mit sich selbst haben. Ich hatte genug Momente, an denen ich gedacht habe, dass ich es nicht schaffe und an mir selbst gezweifelt habe. Oft muss man geduldig sein, wenn es darum geht, Neues zu lernen. Aber aus eigener Erfahrung kann ich sagen, dass sich diese Investition in sich selbst meist lohnt.

Zum anderen rate ich davon ab, jedem neuen Trend zu folgen. Nur weil ein bestimmtes Framework oder eine Technologie zurzeit von vielen beworben wird, heißt das nicht, dass man diese unbedingt nutzen muss. Viel wichtiger ist es meiner Meinung nach, seine Werkzeuge zu kennen und in der Lage zu sein, für seine Anwendungen die bestmögliche Entscheidung zu treffen.

heise Developer: Was machst du, wenn du nicht gerade programmierst?

Bosch: Ich habe einige gute Freunde, mit denen ich verschiedene Sachen unternehme, von Konzerten besuchen bis zum Zocken, also wie die meisten in meinem Alter.

Mehr Infos

Außerdem bin ich sehr gerne in den Bergen, etwa zum Wandern oder Ski fahren, was ich gerade während der Oberstufenzeit sehr vernachlässigt habe und gerne wieder verstärkt angehen werde.

heise Developer: Wen würdest du gerne in dieser Interviewreihe sehen?

Bosch: Einen sehr guten Freund von mir, Ben Bieler. Er hat ein wirklich beeindruckendes Wissen und ich denke, dass er hervorragend in diese Interviewreihe passt.

heise Developer: Ein paar Worte zum Schluss?

Bosch: Fokussiert euch darauf, was euch Spaß macht. Alles andere ist verschwendete Energie.

Du bist selber ein junger Entwickler oder kennst jemanden, von dem du gerne ein Interview in dieser Serie lesen würdest? Schreib uns doch einfach eine E-Mail. Wir freuen uns auf deinen Vorschlag! (bbo)