Was macht ein Lead Front End Developer? Daniel Klingmann im Interview

Was macht ein Lead Front End Developer? Daniel Klingmann im Interview

Background 

Wie bist du zum Programmieren gekommen?

Zum Programmieren bin ich relativ früh gekommen weil ich damals ein need für mich selbst füllen wollte. Als “Magic The Gathering” Spieler hatte ich damals schon einen relativ großen unüberschaubaren Haufen an Karten und hab mir im Zuge dessen erstmal die Grundlagen in HTML beigebracht und bin dann später in Datenbanken eingestiegen.

In welchem Alter hast du damit begonnen? 

Da müsste ich so um die 12 gewesen sein.

Für welche Programmiersprache konntest du dich zuerst begeistern?

Da ich HTML nicht unbedingt als Programmiersprache zählen würde am ehesten PHP und C++. Mittlerweile bin ich von zumindest PHP aber weg.

Dein DevJob

Worum geht es in deinem DevJob genau?

Prinzipiell entwickeln wir bei Enmacc eine innovative Handelsplattform für Energie. Bei meiner täglichen Arbeit implementiere ich mit dem Team zusammen Lösungen basierend auf Ideen des Produkt Teams und versuche in der Rolle als Lead hauptsächlich ein Auge auf die Architektur zu haben und diese in die richtige Richtung zu lenken und stehe dabei dem Team als Support und Ansprechpartner bei Fragen zur Verfügung. Abgesehen davon bin ich in Vorstellungsgesprächen vertreten um Kandidaten zu Fragen und zur Seite zu stehen.

Was gefällt dir besonders gut an deinem DevJob?

Das ist schwer zu formulieren ohne das es wie ein Sales Pitch für die Firma klingt aber wir haben relativ viele spannende Herausforderungen an die man vielleicht gar nicht zuerst denken würde. Das Team ist super, es herrscht kein Konkurrenzgefühl wie das bei manch anderen Firmen der Fall ist und jeder ist offen für Diskussionen und wenn irgendwer Hilfe braucht ist immer Hilfe da. Das Gefühl für so eine große Plattform verantwortlich zu sein und das ganze zum Erfolg zu bringen ist natürlich unglaublich, auch wenn es ehrlicherweise nicht immer 100% reibungslos funktioniert aber das tut es ja erfahrungsgemäß nie wirklich.

Welche Herausforderungen gibt es speziell in deinem DevJob?

Wir arbeiten in einer Branche wo die Digitalisierung noch nicht allzu weit fortgeschritten ist. Insofern ist eine digitale Handelsplattform für Energie schonmal Innovation für unsere User und damit ist es für uns auch tricky beispielsweise zu erahnen was User wollen oder wie selbige auf bestimmte Dinge reagieren. Dazu muss man erwähnen dass wir eine reine B2B Plattform sind die sich an Energieunternehmen richtet, da versucht man darauf zu achten, dass alles möglichst solide läuft um möglichst keine User zu vergraulen.

Was sind deine bevorzugten Technologien?

Ich bin Fan von TypeScript/JavaScript einfach weil man damit den gesamten Frontend und Backend Prozess abdecken kann. Normalerweise kommt bei mir im Frontend dann Angular zum Einsatz wobei ich seit einiger Zeit auch ein Auge auf Vue geworfen habe. Je nach use-case würde ich dann noch auf Postgres oder Mongo als Datenbank setzen. Für Testing bin ich normalerweise immer mit Jasmine unterwegs. Seit kurzem schaue ich auch nebenher auf Rust.

Windows oder Mac?

Beides, MacOS für produktive Sachen wie Entwicklung und Musikproduktion, Windows für Gaming und Spieleentwicklung.

Weiterentwicklung

Welche Dev Projekte hast du außerhalb deiner Arbeit?

Zu viele um ehrlich zu sein. Ich glaub ich arbeite an vielen Fronten gleichzeitig was dafür sorgt, dass ich nichts wirklich ganz fertig bekomme. Leider etwas wo ich immer noch dran arbeite.

Wie hältst du dich für deinen Job am Laufenden?

devurls.com ist eine super Resource. Ansonsten ganz klassisch Konferenzen. Am Tag verwende ich garantiert 30 Minuten um zu schauen ob es irgendwelche neuen interessanten Dinge gibt die man evaluieren kann um sie evtl. einzusetzen.

Wo siehst du dich in der Zukunft?

Tatsächlich ausnahmsweise mal bei dem gleichen Unternehmen, aber wahrscheinlich mit noch etwas mehr Verantwortung. Persönlich glaube ich ist die Reise bei Enmacc noch lang, es gibt noch viel für mich zu lernen und solange dass der Fall ist sehe ich persönlich keinen Grund mich woanders umzuschauen.

Tipps für Anfänger 

Wie beginnt man Programmieren und womit sollte man beginnen?

Für den absoluten Beginner? Ausprobieren. Ganz einfach ausprobieren. Du hast Interesse daran Sachen zu entdecken und deine grauen Zellen wollen etwas gefordert werden und du hast gerade 15 Minuten Zeit? Ich behaupte, dass du innerhalb dieser Zeit genug von einer Sprache sehen kannst um ein erstes Erfolgserlebnis zu haben und dein weiteres Interesse zu wecken.

Heutzutage ist das ganze durch unzählige YouTube Tutorials, Coursera und was weiß ich alles für Plattformen sehr leicht geworden und man kann das alles relativ leicht verfolgen und mitmachen.

Für Anfänger danach die schon etwas drin sind? Ich bin der Meinung, dass man sich am leichtesten tut wenn man für sich selbst ein kleines Projekt hat an dem man sich stetig etwas verbessert. Klar, es gibt so Klassiker wie die ToDo App die jeder mal macht, aber da ist einfach keine Langzeitmotivation drin.

Grundlegend würde ich sagen man sollte erstmal damit anfangen, sein Problem in kleinere Probleme runter zu brechen und zu schauen welche kleinen Schritte man machen muss um das ganze zu lösen. Dafür muss man nicht mal eine Programmiersprache können. Das ganze kann wie ein Ablaufdiagramm aussehen und nachher setzt man dann die Punkte um in logische Einheiten.

Für denjeniger der sagen würde er will jetzt darüber hinaus: Viel Code lesen und einfach mal verfolgen wie der Ablauf von manchen Programmen ist. Evtl. sogar den Code auschecken und versuchen selbst zu kommentieren. Dadurch bildet sich ein deutlich besseres Verständnis auch für so Sachen wie Anwendungsarchitektur.

Welche Skills sollte man für deinen Job mitbringen?

Als allererstes Lernbereitschaft. Das ist meines Erachtens nach das allerwichtigste. Kaum ein Bereich verändert sich so rapide wie die IT Landschaft. Neue Frameworks, neue Sprachen, neue Technologien und so weiter. Es ist absolut unerlässlich, dass man immer weiter lernt und neugierig bleibt.

Kritisches Denken ist fast genauso wichtig. Das gilt eigentlich für alle Lebenslagen und nicht nur im Programmieren. Viele großartige Dinge sind entstanden weil irgendjemand den Status Quo hinterfragt hat und sich überlegt hat ob man das ganze nicht besser machen kann. Nur wenn man Dinge hinterfragt und neue Dinge ausprobiert kann man sich weiterentwickeln.

Reflektieren können kommt dann als wichtiger Team Skill dazu. Man MUSS sich andere Blickwinkel anschauen können, Fehler eingestehen und auch nachgeben. Das kann man trainieren. Wie schon vorher gesagt, nicht immer läuft alles 100% reibungslos und wer was anderes behauptet war noch nie in einer IT Diskussion dabei und dabei ist unerlässlich sich danach damit zu beschäftigen und zu Fragen ob etwas hätte besser laufen können.

Welche Ausbildung ist deiner Meinung nach sinnvoll um deinen DevJob ausüben zu können. 

Als Schulabbrecher, bzw. ausgebildeter Mediengestalter bin ich wahrscheinlich wenig qualifiziert darüber eine Aussage zu treffen, jedoch würde ich sagen macht es definitiv Sinn sich mit der ganzen Materie erstmal so zu befassen. Ein Studium im Software Engineering Bereich ist sinnvoll um einen Rundum Blick zu bekommen was es alles gibt, wobei das in der Praxis dann leider meistens ganz anders aussieht. Es gibt relativ viele Trainee oder Junior Stellen bei denen man einen Einblick in alles bekommen kann.

 

Offene Frontend Developer Jobs findest du hier

Daniel Klingmann

Lead Front End Developer

Interview im November 2020