In den letzten zwei Jahren habe ich mich getraut den Fuß in eine mir dazumals unbekannte Welt zu setzen und meinen Horizont zu erweitern.
- Autor
- Stefan Grasböck
- Datum
- 15. Juni 2022
- Lesedauer
- 3 Minuten
Wie alles begann
Nach dem Abschluss von meinem Studium in 2015, in welchem wir vorwiegend mit Java und C++ gearbeitet haben, war es für mich sehr wichtig, relativ schnell einen Job zu finden. Ich bin damals nach Vorarlberg gezogen und habe mich als Entwickler für eine medizinische Datenbank beworben. Ich bekam den Job und es war eine der aufregendsten Zeiten meines Lebens. Wir haben nicht nur in Delphi entwickelt, sondern es war auch mein erster Berührungspunkt mit produktiver Software, die an Kunden ausgeliefert und eingesetzt wurde. Nach einiger Zeit wollte ich meinen Horizont erweitern und habe mich in Richtung C# bewegt. Ich habe dazumal C# als Sprache der Zukunft gesehen und tue das bis heute. Der „best fit“ war es, mit WPF anzufangen und so kam es, dass ich eine Stelle als C# Entwickler angenommen habe und mich anfangs auch sehr wohl fühlte in der – für mich damals modernen – MVVM Architektur.
Mein Einstieg in moderne Web-Applikationen
Meine Bewerbung bei Fusonic war eine besondere Challenge für mich. Ich hatte sehr wenig bis gar kein Wissen über moderne Web-Applikationen. Damals war .NET Core 3.1 das latest release und für mich als „Außenstehender“ war es schon schwierig, die richtigen Schlagwörter zu googlen um einen Einstieg in das Thema Web Development zu bekommen. Mich haben Fragen beschäftigt wie: „Was ist ASP.NET“, „Wo liegt der Unterschied zu der .NET Core Familie“, „Was ist Entity Framework und Entity Framework Core“. All diese grauen Bereiche in meinem Wissensschatz haben es mir schwer gemacht, mich „zu trauen“. Nichtsdestotrotz war es mir wichtig im Web Bereich zu arbeiten, da ich dort nicht nur meine Zukunft, sondern auch die der moderner Softwareentwicklung sehe. Nach dem Motto „learning by doing“ habe ich dann die Entscheidung getroffen, mich bei Fusonic zu bewerben.
Attitude over Skill
Ich kann mich noch sehr genau an das damalige Interview erinnern und ich wusste, dass es wohl das beste ist, so offen und ehrlich wie möglich zu sein. „Ich kann programmieren aber ich habe keine Ahnung von Web Development“ ist die Message gewesen, die ich transportieren wollte. Da ich nicht aus der Web-Welt komme, war es mir wichtig, dass das auch allen Seiten von Anfang an klar ist. Davids Antwort: „Keine Sorge, was du noch nicht kannst, bringen wir dir schon bei“ hat mich nicht nur beruhigt, sondern auch das Gefühl gegeben, dass ich hier richtig bin. Meine „Schwäche“ direkt zu Beginn anzusprechen hatte einen entscheidenden positiven Effekt. Den Druck von Anfang an zu „performen“ habe ich mir damit selbst genommen.
Mein Arbeitsbeginn bei Fusonic
Als es dann so weit war und der erste Arbeitstag bei Fusonic begann, wurde mir ein sehr gut durchdachter Onboarding Plan vorgestellt. Das gab mir weiter mehr Sicherheit und Zuversicht, dass ich bald meine ersten Issues implementieren konnte.
Die größte Hürde, die ich meistern musste, war für mich von einem „traditionellen control flow“ nach Inversion of Control (IoC) zu wechseln. ASP.NET Core ist von Grund auf mit DI/IOC Prinzipien entwickelt worden. Dieses Design macht das Framework extrem flexibel und erweiterbar.
Dieser Paradigmenwechsel war anfangs aber verwirrend und oft auch sehr unklar für mich. Ich fragte mich oft, welche Funktionalitäten bereits vom Framework abgedeckt sind und um welche sich die Applikation selbst kümmern muss. Eine gute Dokumentation von Microsoft und ein offenes Ohr aufseiten von Fusonic kamen mir hier wirklich entgegen. Nach ein paar wenigen, aber intensiven Wochen ging mein erster commit auf den main branch über die Bühne.
Trau Dich
Auch wenn es oft so scheint, als hätte man einen unbezwingbaren Berg an Information, Methoden oder Technologien vor sich, ist es oft nur der Start, der einem das meiste abverlangt. Hier bei Fusonic wurde ich in „die richtige Richtung“ geleitet und ich hatte den Freiraum, mir in meiner eigenen Pace die Technologien und Praktiken moderner, server-side Webentwicklung beizubringen.