Molecule-Profil: Amy Phillips
Amy Phillips bezeichnet sich selbst als „Hohepriesterin des Toolcodes“, was auf einer Visitenkarte natürlich verdammt gut aussieht. Ihre echte Stellenbezeichnung lautet aber Lead Tools Programmer – und auch wenn das nicht ganz so prachtvoll klingt, ist ihre Position enorm wichtig, denn sie und ihr Team entwickeln alle Tools, die die verschiedenen Teams im Studio benötigen. Hier unterhalten wir uns mit ihr über ihre Liebe zu Rätseln, das Lösen von Problemen anderer und die typische Mm-Verrücktheit.
Hallo Amy! Was genau machst du hier bei Media Molecule?
Ich bin Amy Phillips. Ich bin die Hohepriesterin des Toolcodes bei Media Molecule. Natürlich ist das leider nicht meine echte Stellenbezeichnung, aber sie ist schon ganze sieben Jahre alt. Damals besuchte ich die GDC (Game Developers Conference) und musste mir vorher ein paar Visitenkarten besorgen. Irgendjemand war naiv genug, mir zu erlauben, mir meine eigene Stellenbezeichnung auszusuchen, also entschied ich mich für „Hohepriesterin des Toolcodes“. In Wirklichkeit bin ich Lead Tools Programmer, aber ich mag es, die Hohepriesterin zu sein. Das klingt beeindruckend und hochtrabend.
Was bedeutet das für deinen Alltag? Arbeitest du daran, die Werkzeuge, die man in Dreams nutzt, zu verbessern?
Nein. Ich kann verstehen, warum man das denken würde, aber tatsächlich arbeiten wir nicht an den Tools, die die Spieler in Dreams nutzen, also den Werkzeugen. Das Tools-Team besteht aus vier Personen und anstelle von Werkzeugen für die Spieler kreieren wir Tools für die Molecules. Dazu kann die Entwicklung oder Beschaffung von allem gehören, was den Molecules die Arbeit erleichtert. Also sprechen wir viel mit den Molecules, um herauszufinden, was ihnen Probleme bereitet, was sie bei ihrer Arbeit bremst und was sie aus dem Flow bringt. Dann versuchen wir, herauszufinden, ob und wie wir ihnen dabei helfen können. Wir arbeiten daher daran, Builds für die kontinuierliche Integration zu entwickeln. Jedes Mal, wenn ein Programmierer neuen Code einspielt, erzeugen unsere Systeme diesen Code und können den Programmierer schnell benachrichtigen, falls er irgendwas kaputt gemacht hat. Das ist ziemlich praktisch, da das leicht passieren kann! Diese Systeme können außerdem einen Build mit dem neuen Code erstellen und diesen an die QS oder Content Creator weiterleiten, oder wer auch immer diesen Build benötigt.
Darüber hinaus haben wir ein paar automatische Testsysteme entwickelt. Wenn Code eingespielt wird, führen wir eine ganze Reihe von Tests durch, um festzustellen, ob wir damit etwas kaputt gemacht haben. Wir helfen auch bei der Lokalisierung, also der Übersetzung der Texte im Spiel, sodass man zum Beispiel auf Französisch oder Spanisch spielen kann, und stellen sicher, dass alles übersetzt ist. Zudem wird eine Menge Daten umhergeschoben und wir sind dabei für die Quellcodeverwaltung zuständig. Dafür nutzen wir ein System, um den Code nachzuverfolgen und sicherzustellen, dass wir wissen, was wann und warum geändert wurde. Das ermöglicht uns, auf frühere Builds einer bestimmten Version zuzugreifen, sodass wir zum Beispiel eine Version reproduzieren können, die den Spielern zuvor zugänglich gemacht wurde. Alles, was durch das Raster fällt, ist also eine Sache für Tools. Das ist ganz nett, da man so eine Menge Abwechslung und die Möglichkeit hat, mit vielen verschiedenen Leuten im Studio zu sprechen.
Bekommt ihr viele ähnliche Toolanfragen oder sind diese je nach Bedarf komplett unterschiedlich?
Die Anfragen sind meist recht verschieden, da wir mit so vielen unterschiedlichen Abteilungen unseres Studios zusammenarbeiten. Wir arbeiten gerade daran, unsere Dokumentation zum Umgang mit den diversen Anfragen zu verbessern, da es doch einige gibt, die sich wiederholen. So etwas wie: „Ich habe hier einen älteren Absturz und ich möchte Symbole dafür, weil ich versuche, herauszufinden, was zum Henker da passiert ist.“ Das ist eine recht häufige Anfrage. Aber es kommen auch allerlei ganz unterschiedliche Dinge.
Und was für Tools denkt ihr euch dann aus, wenn Leute euch Anfragen schicken?
Oft brauchen die Molecules möglichst schnell neue Builds. Als wir 2020 anfingen, von zu Hause aus zu arbeiten, ging das auf Kosten unseres wirklich schnellen Netzwerks. Im Büro konnte man einen Build einfach superschnell herunterladen. Aber zu der Zeit arbeiteten wir dann ja alle im Homeoffice mit unterschiedlich guten Internetverbindungen. Deshalb mussten wir an einer Reihe von Verbesserungen für unser Tool für die Build-Bereitstellung arbeiten, damit es weniger Bandbreite benötigte. Also entwarfen wir eine Menge Code, der darauf abzielte, das zu nutzen, was man bereits auf seiner lokalen Festplatte abgespeichert hatte, und nur die Dinge über das Netzwerk herunterzuladen, die man wirklich brauchte. Das ist sehr technisch, aber ich bin Programmiererin, also fahre ich genau darauf ab. Ich war früher Netzwerkprogrammiererin und habe mich mit allen möglichen interessanten und kniffligen Problemen beschäftigt. Damals habe ich an den Burnout-Rennspielen gearbeitet und bemühte mich, dass die Rennwagen im gesamten Netzwerk gleich aussahen und sich gleich verhielten.
Wie bist du dann als Netzwerkprogrammiererin in diese Tools-Rolle geraten?
Also, erst mal arbeitete ich als allgemeine Programmiererin und dann als KI-Programmiererin, bevor ich zum Netzwerkprogrammieren kam. Da haben wir [bei Criterion Games] an Burnout 3 gearbeitet und den Onlinemodus entwickelt. Danach bin ich zu Media Molecule gewechselt und arbeitete zu Beginn als Netzwerkprogrammiererin an LittleBigPlanet. Nach einer Weile ging ich in Elternzeit und als ich zurückkam, wollte ich zwei Tage pro Woche in Teilzeit arbeiten. Leider passten meine Aufgaben im Bereich Netzwerkcode nicht wirklich in diese zwei Tage pro Woche, also habe ich mich nach anderen Aufgaben umgesehen. Dann ist mir aufgefallen, dass es im gesamten Studio verschiedene Probleme gab, die einfach durch das Raster fielen. Also habe ich angefangen, mich dieser Probleme anzunehmen, und es war wirklich hilfreich für die Leute, jemanden zu haben, an den sie sich bei Bedarf wenden konnten.
Und dann hat sich meine Rolle einfach weiterentwickelt. Es geht nicht darum, das Rad neu zu erfinden, sondern darum, Dinge zu finden, die nicht besonders gut funktionieren, und sie so anzupassen, dass sie besser laufen. Diese Arbeit macht mich sehr zufrieden, da man sofortiges Feedback von den Leuten bekommt. Wenn man zum Beispiel die Build-Bereitstellung optimiert, sodass die Benutzeroberfläche schöner ist und man seine Lieblingsbuilds auswählen und ganz oben auf eine Liste setzen kann, geben einem die Leute sofort Rückmeldung. Wenn jemand etwas Praktisches bekommt, dann bedankt sich diese Person immer – und das ist einfach schön.
Hast du Programmieren in einem Studium an der Uni erlernt oder es dir selbst beigebracht?
Lustigerweise bin ich eigentlich eher zufällig da hineingeraten. Ursprünglich ging ich an die Uni, um Mathe zu studieren, und das habe ich auch ein Jahr lang gemacht, aber es war mir einfach zu schwer. Im zweiten und dritten Jahr habe ich dann Physik studiert, was etwas leichter war. Aber trotzdem, ich weiß nicht, es war einfach nicht mein Ding. Also habe ich nach dem dritten Jahr wieder gewechselt und mich dann für Informatik entschieden. Ich hatte das Glück, dass meine Universität sehr flexibel bei der Fächerwahl war. Ab da studierte ich dann also Informatik und hatte dabei wirklich Spaß, es hat einfach irgendwie klick gemacht.
Ich habe meinen Informatik-Abschluss gemacht und dann hat mich ein Freund, der damals bei Big Blue Box Studios an Fable arbeitete, zu einem Besuch nach Guildford eingeladen. Also besuchte ich ihn dort übers Wochenende, er wurde kurzfristig wegen einer Deadline ins Büro gerufen und ich begleitete ihn. Dort traf ich dann auf so viele tolle, freundliche Menschen und sah, dass sie einen Tretroller und Snacks im Büro hatten, und das fand ich so cool. Dann dachte ich mir: „Oh, okay, Videospiele könnten etwas für mich sein.“ Also habe ich meinen Lebenslauf an all die Videospielfirmen in Guildford geschickt. Ich erhielt dann eine Antwort von Criterion und habe schließlich dort angefangen. Also, ja, es war irgendwie totales Glück und reiner Zufall.
Was findest du an der Arbeit bei Mm am spannendsten?
Definitiv die Leute. Ich liebe es so sehr, mit den Leuten hier bei Mm zu arbeiten. Es ist ein bunt gemischter Haufen sehr intelligenter Leute, die außerdem nett, liebenswert und äußerst kreativ sind. Wenn man sich mit den Leuten bei Mm unterhält, steht die Person im Vordergrund und der Job im Hintergrund, also fühlt man sich einfach auf Augenhöhe. Ich mag diese Atmosphäre, wo der Mensch im Vordergrund steht und wo man ein ganzes Gespräch darüber führen kann, wie alles so läuft, wo es Probleme gibt und was gerade so passiert. Und als Tools-Programmiererin ist das tatsächlich sehr nützlich, denn wenn jemand zu dir kommt und sagt „Ich möchte dies und jenes“, dann ist das meist nicht das, was die Person wirklich will. Man muss das Ganze dann ergründen und fragen: „Okay, warum willst du das? Was willst du damit erreichen? Worauf beruht diese Anfrage?“ Sobald man dann den Gesamtzusammenhang kennt, kann man herausfinden, ob andere das Gleiche möchten und wie man es am besten umsetzen kann, anstatt einfach nur das zu tun, worum man ursprünglich gebeten wurde.
Du bist ja schon fast von Anfang an bei Mm dabei, welches Projekt hat dir bisher am besten gefallen?
Da fällt meine Wahl auf das erste LittleBigPlanet, denn es war einfach eine so große Herausforderung. Wir wussten noch nicht wirklich, was wir da erschufen, also ergab sich alles im Laufe der Zeit. Um ehrlich zu sein, weiß ich gar nicht, wie wir daraus ein einziges Produkt kreiert haben, da es so viele interessante Ideen und eine Menge Experimente gab. Damals war ich noch Netzwerkprogrammiererin, doch ich liebte dieses experimentelle Zufallselement – und ich glaube, dass diese Zufälligkeit das Team immer noch zu einem gewissen Grad ausmacht.
Das ist also noch etwas, das ich an Mm liebe: dass wir einfach loslegen und interessante kreative Dinge tun und dass sich dies auch so gemeinschaftlich anfühlt. Es wirkt nie so, als hätte nur eine Person irgendeine großartige Idee gehabt. Wir entwickeln eine Kernidee, aber dann kann jeder seinen Beitrag leisten und Sachen beisteuern, die zu diesem Kern passen. Ich glaube, es ist ziemlich selten, dass in einem Spielestudio jeder die Chance hat, kreativ zu sein.
Hast du Tipps oder Ratschläge für Leute, die sich fürs Tool-Programmieren interessieren?
Ein Abschluss ist auf jeden Fall nützlich. Beim Studium eines programmierungsbezogenen Fachs wie Informatik lernt man eine Menge grundlegender Konzepte, mit denen man leichter verstehen kann, warum sich der eigene Code so verhält, wie er es tut. Wenn man den Algorithmus, den man geschrieben hat, oder die Datenstruktur, die man nutzt, versteht und weiß, wie diese den Cache nutzen und warum es dann zu komischen Performance-Problemen kommt, kann man viel leichter die Fehler in seinem eigenen Code finden.
Außerdem glaube ich, dass Game Jams eine großartige Gelegenheit bieten, um Leute kennenzulernen und Kontakte zu knüpfen, aber auch, um einfach etwas auszuprobieren und seine kreativen Fähigkeiten zu testen. Um ehrlich zu sein, ist auch die Erkenntnis, dass es wirklich schwer ist, ein Spiel fertigzustellen, sehr aufschlussreich für die Entscheidung, ob man in dieser Branche bleiben will oder nicht. Man kann sehr leicht ein Spiel anfangen, aber es ist sehr schwierig, eins zu vollenden. Ich schätze, an der Uni ist es etwas leichter, da man Kurse besucht, die einem genau das beibringen, was man wissen muss. Wenn man sich das Ganze in Eigenregie beibringt, muss man selbst herausfinden, welche Dinge man wissen muss, und sie sich dann auch noch selbst aneignen.
Die Leute von Mm scheinen eine Menge interessanter Dinge auf ihren Schreibtischen zu haben. Was würden wir denn gerade auf deinem Schreibtisch vorfinden?
Hmmm. Ich habe nichts wirklich Interessantes auf meinem Schreibtisch. Was habe ich denn? Oh, ich habe ein Rätselbuch – Journal 29: Oblivion. Es ist quasi ein Buch voller Rätsel, die recht komplex sind, da sie laterales Denken erfordern. Erst muss man herausfinden, was das Rätsel überhaupt ist, bevor man es lösen kann. Aber es ist wirklich klasse, wenn man ein Fan von Rätseln ist. Ich habe auch eine Postkarte von einem Freund, dessen Website ich im Tausch gegen ein Buch mit einer Postkarte darin aktualisiert habe. Dann habe ich noch meinen Kindle und irgendeinen Mm-Anstecker. Ich würde sagen, das Interessanteste auf meinem Schreibtisch ist meine tolle Tasse. Meine Tasse ist unglaublich cool – sie heißt „Tasse der Tapferkeit“ und auf ihr stehen inspirierende Sprüche wie „Du schaffst das. Hab keine Angst. Sei ein Gewinner, kein Grübler. Mach‘s in deinem eigenen Tempo. Du bist stärker, als du denkst ...“ Und ein Einhorn, das sagt: „Du bist so magisch und wertvoll.“ Einhörner machen einfach alles besser.
Das Dreams-Benutzerhandbuch ist ständig in Arbeit. Achtet auf Aktualisierungen, da wir im Laufe der Zeit weitere Lern-Ressourcen und Artikel hinzufügen werden.