Im neuesten Teil unserer Meet the Team-Reihe rücken wir den Softwareentwickler Joe Pickering ins Rampenlicht und entdecken seine wahre Leidenschaft für das Programmieren.
Vielen Dank, dass Sie sich einen Moment Zeit genommen haben, um mit uns zu sprechen, Joe. Können Sie uns etwas über Ihren beruflichen Werdegang und den Weg dorthin erzählen? Datapath?
Ich habe meinen Abschluss an der Staffordshire University gemacht, wo ich Computerspielprogrammierung studiert habe. Danach habe ich das Glück, es zu haben Datapath als meine erste Rolle im Hinblick auf die Arbeit in der Branche.
Datapath war bei der Weitergabe ihres Fachwissens äußerst hilfreich – es besteht eine deutliche Kluft zwischen modernisierten Software-Engineering-Praktiken auf Universitätsebene und in der Industrie. Ich nähere mich meinem ersten Jahrestag um Datapath und ich kann mit Zuversicht sagen, dass ich in einem Jahr mehr gelernt habe als in all meinen vier Universitätsjahren zusammen.
Mein Interesse an der Entwicklung niedrigerer Hardwareebenen und der Grafikprogrammierung passte zu meiner Rolle hier – im Grafikteam verwenden wir APIs, die diese umfassen und damit in Zusammenhang stehen. Die Entwicklung einer fortgeschrittenen Verwendung von C++, um auf einem niedrigen Niveau zu arbeiten, fühlt sich enorm erhebend und befriedigend an, daher erfüllt die Arbeit hier dieses Gefühl der Ingenieurskunst.
Können Sie uns einen kleinen Einblick geben, wie der normale Tag eines Softwareentwicklers im Test aussieht? Datapath?
Kommen Sie vorbei, schalten Sie Ihre Entwicklungsmaschine ein, suchen Sie sich eine Playlist zum Anhören auf YouTube oder Spotify und machen Sie sich auf den Weg. Normalerweise wird dies von einem Kaffee oder einem Energy-Drink begleitet, den ich mitgebracht habe (das typische Programmierer-Ding).
Jeden Tag treffen wir uns um 10 Uhr morgens, um die Teammitglieder darüber zu besprechen, woran sie am Vortag gearbeitet haben. Auf diese Weise können wir uns gegenseitig schnell zusätzliche Anleitungen/Tipps geben. Danach mache ich weiter. Manchmal besteht die Arbeit in einer einfachen Implementierung einiger Funktionen, die wir in unserer Codebasis benötigen und die einfach zu implementieren sind. In anderen Fällen muss man ein Brainstorming durchführen, Dinge aufschreiben und ein Paradigma entwerfen, bevor man es umsetzt.
Was sind die lohnendsten und anspruchsvollsten Teile Ihrer Rolle?
Ich würde sagen, der lohnendste Teil meiner bisherigen Tätigkeit war das Erlernen und Anwenden neuer Kenntnisse/Programmierfunktionen. Ich habe kürzlich eine teilweise Spezialisierung auf Template-Klassen implementiert, um eine Funktion zu erstellen, die ein zentraler Bestandteil unserer Codebasis zum Testen und unseres Render-Frameworks wird. Es war keine leichte Aufgabe und anfangs etwas mühsam, aber nach einiger Zeit war der Code fertig. Ein Kollege bezeichnete dies als „Expertenniveau“ in C++, was sich sehr lohnend anfühlte. Außerdem fühlte es sich sehr lohnend an, zu wissen, dass ich umfangreiches Wissen über grafikbezogene Hardware und Software lerne und es mir merken/anwenden kann.
Eine Herausforderung kann darin bestehen, all dieses Wissen zusammenzuhalten. Darüber hinaus nehme ich mir Arbeit weg, die möglicherweise außerhalb meiner Wissensdatenbank liegt, und muss sie dann weiterentwickeln. Sie müssen etwas nicht bis ins kleinste Detail verstehen, bevor Sie es entwickeln; Sie müssen nur wissen, wo Sie suchen müssen und wie Sie dieses Thema erlernen können, aber das allein kann schon eine große Herausforderung sein.
Wie verbringen Sie Ihre Zeit außerhalb des Büros am liebsten?
Außerhalb des Büros treffe ich mich gerne mit Freunden, wir sind die typische Gruppe von Computerfreaks, die Spiele spielen. Ich befinde mich derzeit in einer D&D-Kampagne (Dungeons & Dragons), in der ich einen leicht reizbaren und profanen Zauberer spiele und eine Stimme wie Sir Ian McKellens Gandalf aus „Der Herr der Ringe“ spiele.
Manchmal spiele ich Gitarre, aber wenn du mich spielen hören würdest, würdest du wollen, dass ich aufhöre.
Ich versuche auch, Zeit mit meiner Freundin zu verbringen, die ich an den Wochenenden sehe, und außerhalb davon verbringe ich Zeit mit Leidenschaftsprojekten/Hobbys rund ums Programmieren.
Erzählen Sie uns etwas, was die Leute vielleicht nicht über Sie wissen ...
Zum Zeitpunkt des Verfassens dieses Artikels bin ich der jüngste Mitarbeiter im Unternehmen und hatte einmal eine Indie-Spielefirma namens Implode Games, bei der ich den Quellcode der Spiele-Engine veröffentlichte.