Wie stellt ihr euch einen Programmierer vor? Zurückgezogen, eher schüchtern und nicht so sozial? Manuel beweist euch das Gegenteil. Er ist kein unbekanntes Gesicht, denn er schreibt unsere Tutorials über CodeIgniter. Die Erfahrungen die er in den Tutorials teilt, hat er sich teilweise selbst beigebracht und durch die Arbeit und viel Übung ausgebaut. Außerdem ist der Softwareentwickler schon seit beinahe fünf Jahren Mitarbeiter von Anexia.
Wieso es sein Traum war Softwareentwickler gerade bei Anexia zu werden und was ihm am Schreiben der Tutorials gefällt, erfahrt ihr in diesem #joinourrevolution Interview.
Manuel kannst du dich kurz vorstellen?
Ich bin der Manuel und seit Juli 2013 Softwareentwickler bei Anexia. Zu meinen Haupttätigkeiten zählen neben der Entwicklung von Individuallösungen, auch die Arbeiten mit dem TYPO3 CMS.
Was gefällt dir an deiner Arbeit als Softwareentwickler?
Im Grunde ist es die Abwechslung. Ich habe immer wieder neue Themen und auch neue Technologien, mit denen ich arbeiten muss oder eben darf.
Du bist nun schon seit beinahe fünf Jahren bei Anexia, das ist eine relativ lange Zeit. Wie bist du auf Anexia aufmerksam geworden?
Das war eigentlich mehr durch Zufall. In meiner HTL-Zeit hat mir ein Professor die Webseite von Anexia gezeigt und auch die Geschichte erzählt, dass ein Maturant unserer Schule, eben Alexander Windbichler, die Firma aufgezogen hat. Ich war neugierig und habe mir zu Hause die Homepage mal in Ruhe angeschaut und da war mir dann auch schnell klar: Da will ich hin! Dieses Ziel habe ich dann auch entsprechend angestrebt und jetzt bin ich hier. (lacht)
Ich habe mich über Anexia informiert und mir wurde schnell klar: Da will ich hin!
Also war es in der Schule dein Traum Softwareentwickler bei Anexia zu werden?
Genau, es war damals bei Anexia ein PHP Entwickler ausgeschrieben und ich habe gewusst, das ist genau das, was ich schon immer machen wollte. Im Jänner habe ich dann schließlich die Bewerbung geschrieben, und schon kurz darauf die Zusage bekommen. Die letzten Monate habe ich nur noch gewartet bis ich eben nach der Matura hier beginnen kann.
In welche HTL bist du gegangen und was war dein Schwerpunkt?
Ich bin in die HTL Mössingerstraße gegangen. Mein Schwerpunkt dort war Telekommunikation, mit einem besonderen Augenmerk auf Hochfrequenztechnik. Damit habe ich heute allerdings nicht mehr so viel zu tun. Dieses Wissen hilft mir heute jedoch sehr, wenn es darum geht, die Aufgaben und Tätigkeiten der anderen Abteilungen bei Anexia zu verstehen.
Hast du dir Programmieren selbst beigebracht?
Sagen wir’s mal so, ich konnte schon vor der HTL programmieren. Ich habe schon früh damit angefangen, eigentlich schon in der Hauptschule. Durch meine Praktika bei der KGKK im Bereich Softwareentwicklung und Analytik, sowie auch im Klinikum Klagenfurt beim IT-Field-Support, habe ich dann mein Wissen auch in die Praxis umsetzen können, und dadurch auch einiges an Erfahrungswerten sammeln können. Man kann also sagen, dass ich sehr universell einsetzbar bin, da ich doch ziemlich viele Spektren abdecken kann.
Du teilst deine Erfahrung gerne und schreibst immer wieder unsere Tutorials über CodeIgniter. Was gefällt dir am Schreiben?
Ich denke immer wieder daran, wie ich früher (und auch teilweise noch heute) vorgegangen bin: Wenn ich ein Problem gehabt habe, habe ich die Lösung einfach gegoogelt. Ich habe geschaut, ob ich vielleicht etwas finde, was schon ungefähr das ist, was ich eigentlich haben möchte. Oft ist es schwierig, zu gewissen Themen etwas Passendes zu finden. Für manche Frameworks findest du vieles, für andere wieder nichts. Natürlich ist man dann froh, wenn man auf etwas Brauchbares stößt. Im Fall der CodeIgniter Tutorials, die ich für Anexia schreibe, schaue ich, dass die Tutorials nicht zu einfach, aber auch nicht zu kompliziert sind, quasi die Mittelschiene. Viele meiner Ideen entstehen oft ganz spontan.
Was könnte beispielsweise gerade gebraucht werden? Wie könnte ich das möglichst verständlich darstellen, und auch was könnten noch spannende Hintergrundinfos dazu sein? Häufig wirken solche Aufgabenstellungen auf den ersten Blick kompliziert, aber im Grund ist das Prinzip dahinter meist sehr trivial. Das Rundherum lässt das Ganze oft kompliziert und für manche vielleicht sogar undurchschaubar wirken.
Was ist das Besondere am Framework CodeIgniter?
Frameworks in PHP gibt es ja sehr viele. Einige haben sich eben durchgesetzt, zum Beispiel Laravel oder CodeIgniter, andere eben nicht so. CodeIgniter beispielsweise ist vor allem im amerikanischen Raum verbreitet. Es wird aber auch bei uns wieder relevanter. Nachdem es lange Zeit durch den eigentlichen Entwickler und Betreuer vernachlässigt wurde, hat nun das British Columbia Institute of Technology (BCIT) CodeIgniter quasi übernommen. Die Uni wartet das Framework und baut es auch aktiv weiter aus. Der Vorteil dabei ist, dass CodeIgniter relativ einfach zu verstehen ist – vor allem wenn man damit PHP lernen will, ganz anders als beispielsweise bei Laravel. Hier ist die Einstiegskurve im Vergleich zu CodeIgniter schon etwas höher. Für mich ist Laravel zwar leicht, aber ein Anfänger wird sich schon mal fragen, wie er das überhaupt zum Laufen bringt. So muss er erstmal wissen, dass er den Package Manager Composer braucht, damit das überhaupt einmal installierbar und in weiterer Folge auch lauffähig ist und dann müssen auch die richtigen Konfigurationen vorgenommen werden. Bei CodeIgniter ist das jedoch anders. Mal ganz einfach ausgedrückt: Du nimmst alle Files, kopierst sie auf einen Server und es läuft. CodeIgniter ist aufgrund seiner Architektur besonders für Shared Hosting ausgelegt, wo du meist keinen Einfluss auf den Server hast.
Unter anderem baut man mit PHP und CodeIgniter Webapplikationen. Bei Anexia machen wir in der Softwareentwicklung hauptsächlich Webentwicklung. Sterben Desktopprogramme somit aus?
Aussterben würde ich so ad-hoc nicht sagen. Aber Webanwendungen haben klar den Vorteil, dass sie in Form von Cloud-Lösungen schnell verfügbar und auch sehr skalierbar sind, auch wenn man sie mit Hybrid-Frameworks, wie beispielsweise Electron, aufzieht. Das sieht dann so aus: Man baut eine Webanwendung auf Basis von Electron – aber klar, dieses Framework ist nur eines von vielen, mit denen gearbeitet wird – und dann kann man entscheiden: möchte ich dazu jetzt eine Web-App haben oder möchte ich auch eine Android Lösung oder gar eine native Lösung für Windows. Skype basiert unter anderem auch auf diesem Prinzip. Du machst das Desktop-Skype auf, aber im Prinzip ist es eine Webanwendung im Inneren.
Also sind Webanwendungen die Zukunft oder wie stehst du dazu?
Sie sind einfach leicht zum Warten. Bei Desktopanwendungen musst du dich selbst um alles kümmern: Wie schaut es mit Backups aus? Habe ich die neueste Version? Muss ich das Ganze wieder neu installieren? Webanwendungen hingegen werden einfach zentral gehostet, bereitgestellt und du hast eine fixe URL auf die du zugreifst und fertig. Vereinfacht gesagt kannst du die ganzen Probleme, die du sonst hättest, elegant auf andere abschieben. (lacht)
Gemeisame Wissensbasis? Zum Glück gibt’s da die Kaffeepausen, in denen wir uns über unsere Projekte austauschen können.
Man stellt sich einen Programmierer ja klischeehaft eher zurückgezogen vor, aber mit den Tutorials teilst du dein Wissen. Ist die Zusammenarbeit und der Wissensaustausch bei Softwareentwicklern wichtig?
Untereinander im Team sehr, weil man immer Probleme hat, bei denen man selbst nicht weiterkommt. Wie bereits erwähnt, mache ich hauptsächlich CMS Entwicklung und Individuallösungen. Natürlich stoße ich da auch oft auf Probleme, weil ich nicht weiß, wie gerade eine gewisse Komponente funktioniert. Entweder man schreibt sich dann untereinander in Chats zusammen oder hat – ich nenne es jetzt mal so – die Ressourcen direkt im eigenen Büro am Schreibtisch nebenan. Alles zu wissen, das geht einfach nicht – man muss einfach wissen, wie man zur Information gelangt.
Wie schafft ihr es in der Softwareentwicklung bei Anexia eine gemeinsame Wissensbasis aufzubauen?
Nachdem wir bei den Kaffeepausen ziemlich viel über unsere Projekte sprechen, wissen wir, wer gerade was macht. So erfährt man auch, wer vielleicht schon einmal ein gleiches Problem hatte.
Und bist du auch viel im Kontakt mit dem Kunden?
Die Hauptkommunikation läuft über unser Projektmanagement-Team. Es ist aber so, dass bei laufenden Wartungsprojekten auch ein direkter Kundenkontakt stattfindet. Jeder Kunde hat hier eine fixe Ansprechperson, die für ihn und sein Projekt zuständig ist. Wenn das immer dieselbe Person ist, ist das für den Kunden einfach angenehmer, weil er nicht immer alles wieder von vorne erklären muss.
Hast du einen stressigen Job?
Es ist sehr variabel. Oft muss ich viel hin- und herspringen zwischen den Projekten und weiß nicht, wo die Zeit hinrennt und dann gibt es auch wieder Phasen, in denen ich im Vergleich wieder relativ entspannt bin, da nicht so viel Zeitdruck herrscht.
Was kann man von einem Softwareentwickler lernen?
Ich habe bei meiner Arbeit als Softwareentwickler gelernt, innere Ruhe zu bekommen. Ich bin es mittlerweile auch gewohnt, dass Probleme auftreten – ich weiß aber auch, dass sich alles reparieren lässt.
Und zum Schluss: Was machst du nach der Arbeit, in deiner Freizeit?
Wenn ich zum Beispiel verreise, zieht es mich immer wieder in den Süden nach Italien. Klar, ich bin ja auch Kärntner. (lacht) Sonne, Strand, Meer: das ist voll meins. Einfach entspannen und dabei mal nichts tun kann auch sehr schön sein. In meiner Freizeit gehe ich gerne Radfahren, mit Freunden Tischtennis spielen oder auch Klettern. Außerdem haben ein paar Kollegen und ich vor ein paar Monaten damit angefangen, gemeinsam Laufen zu gehen – fast jeden Tag um die fünf Kilometer. Grund dafür waren in erster Linie die Vorbereitungen und das Training für den Businesslauf, bei dem ich dann aber leider krankheitsbedingt ausgefallen bin. Eigentlich haben wir damals nur für diesen Lauf trainiert, aber mittlerweile gefällt es uns so gut, dass wir einfach weitermachen. Und nächstes Jahr beim Businesslauf heißt’s dann eh, dabei sein und gewinnen!
Danke fürs Gespräch.
Ist es auch dein Traum, Softwareentwickler zu werden? Vielleicht sogar bei Anexia? Dann folge dem Beispiel von Manuel und #joinourrevolution: