David Cauchi über das Aufspüren von Fehlern und das Leben als Remote-QA-Ingenieur

Januar 27, 2022

Star des Monats David Cauchi erzählt uns von seinen Aufgaben als QA-Ingenieur, dem Lernen von seinem Sohn und seinen Zukunftsplänen.

David, erzähl uns von dir

Hallo, ich bin David und komme aus Malta. Ich hatte schon immer eine Leidenschaft für Technologie. Je neuer, desto besser.

Zu Hause kümmere ich mich gerne um unseren „Garten“ auf der Terrasse. Derzeit ist er aufgrund des kälteren Wetters karg. Heutzutage verbringe ich den Großteil meiner Freizeit mit meinem Sohn. Ich glaube, er lehrt mich mehr, als ich ihn :)

Spielzeit mit Sohn Alexander

Was haben Sie gemacht, bevor Sie zu OnTheGoSystems kamen?

Bevor ich zu OTGS kam, arbeitete ich einige Zeit als Freelancer und an persönlichen Projekten.

Davor habe ich viel Zeit als QA-Automatisierungsingenieur bei einem Spieleunternehmen verbracht.

Reisen vor dem Ausbruch der Pandemie. Es ist Zeit, weitere Reiseerinnerungen zu schaffen.

Wie haben Sie von dem Unternehmen erfahren? Wann sind Sie beigetreten?

Als ich OTGS auf einer Remote-Jobbörse entdeckte, passte alles zusammen. WordPress hat mich schon immer fasziniert, OTGS brauchte einen QA-Ingenieur, hat hervorragende Bewertungen und ist vollständig remote. All dies machte den Job zu einer tollen Sache für mich. Ich bin im August 2020 beigetreten. Die Zeit vergeht wie im Flug.

Könnten Sie Ihre Aufgabe bei OnTheGoSystems beschreiben?

Ich arbeite als QA-Ingenieur. Es gibt 3 Hauptteile des Jobs: manuelles Testen, automatisiertes Testen und Kundenservice.

Beim manuellen Testen erhalten wir neue Funktionen, die gerade entwickelt wurden, und führen sie anhand von Akzeptanzkriterien durch verschiedene Testrunden. Diese Kriterien werden zuvor vom Projektmanager oder dem Entwickler (der die Funktion entwickelt hat) definiert.

Es ist ein wichtiger Schritt im Softwareentwicklungszyklus, der sicherstellt, dass unsere Kunden qualitativ hochwertige Software erhalten.

Gelegentlich gelangen Fehler in die Produktion. Dies ist ein weiterer Fall, in dem manuelles Testen verwendet wird. Grundsätzlich testen wir, um einen Fehler zu überprüfen, und öffnen bei Bedarf ein Ticket, damit dieser behoben werden kann.

Automatisiertes Testen ist der Punkt, an dem wir die Tests erhalten, die manuell für eine Funktion ausgeführt wurden, und Software schreiben, die die Testschritte automatisiert reproduzieren kann. Das Erstellen dieser Tests ist sehr wertvoll. Einmal erstellt, können sie jederzeit ausgeführt werden und durchlaufen immer einen genauen Satz von Schritten, was dazu beiträgt, menschliche Fehler zu reduzieren. Ich sage reduzieren, nicht eliminieren, da diese Tests immer noch von Menschen geschrieben werden und Fehler enthalten können. Aber im Großen und Ganzen, vorausgesetzt, ein Test ist korrekt geschrieben, hat man eine zuverlässige Suite automatisierter Tests. Unser Testautomatisierungs-Framework ist in PHP geschrieben und basiert auf Codeception.

Schließlich Kundenservice. Ein QA-Ingenieur zu sein, bedeutet nicht nur zu testen. Es ist ein großes menschliches Element beteiligt. Wir interagieren ständig mit verschiedenen Stakeholdern innerhalb des Unternehmens und indirekt mit Kunden. Es ist wichtig, höflich, zugänglich zu sein und über gute Kommunikationsfähigkeiten zu verfügen. Dieser Teil des Jobs darf nicht unterschätzt werden.

Was ist der schwierigste Teil Ihres Jobs und wie überwinden Sie ihn?

Die größte Herausforderung besteht darin, wenn wir eine Flut von Tickets erhalten, die zum Testen bereit sind und schnell in die Produktion gehen müssen. Gleichzeitig gibt es immer eine Reihe normaler täglicher und wöchentlicher Aufgaben, wie z. B. geplante Releases, die ebenfalls erledigt werden müssen.

So klischeehaft es auch klingen mag, mein tolles Team hilft mir, Herausforderungen zu meistern. Es gibt 3 QA-Ingenieure im Team, und mit guter Kommunikation sowie Planung und Aufteilung der Arbeit kommen wir durch und erledigen die Dinge. Ich glaube wirklich, dass mit dem richtigen Team jede Herausforderung gemeistert werden kann.

Welche Qualifikationen sind erforderlich, um deinen Job gut zu machen?

Qualifikationen… es ist schön, eine formale Ausbildung in Software Engineering zu haben. Dies kann zwar eine gute Grundlage bieten, aber ich würde sagen, dass praktische Erfahrung viel wichtiger ist.

Um diesen Job gut zu machen, muss man ein gutes Verständnis für objektorientierte Prinzipien und idealerweise einige Kenntnisse über Entwurfsmuster haben. Wir verwenden PHP, aber es spielt keine Rolle, welche Sprache man kennt. Solange man bereit ist, eine neue Sprache zu lernen und die gleichen OO-Prinzipien anwenden kann, ist alles in Ordnung.

Abgesehen davon muss man ein gutes Auge für Details und gute zwischenmenschliche Fähigkeiten haben.

Mit welchen Teams oder Teammitgliedern arbeitest du eng zusammen?

Als Mitglied des Systemteams arbeite ich mit verschiedenen anderen Teams zusammen. Wenn etwas mit unseren Websites zu tun hat, läuft es über Systems. Ich würde sagen, dass ich abgesehen von meinem eigenen Team hauptsächlich mit den Design- und WPML-Teams zusammenarbeite.

Sind Sie an WordCamps oder ähnlichen Möglichkeiten beteiligt?

Nein, ich habe noch nie an so etwas teilgenommen. Vor einiger Zeit habe ich mir ein paar Videos online angesehen. Es scheint eine sehr interessante Erfahrung zu sein.

Wenn es um Remote-Arbeit geht, wie sieht ein typischer Tag für Sie aus?

Im Durchschnitt stehe ich gegen 7 Uhr auf, nehme eine kurze Dusche und trinke meinen Kaffee. Um 8 Uhr sitze ich an meinem Schreibtisch.

Ich beginne gerne mit administrativen Arbeiten am Morgen, also gehe ich zuerst meine E-Mails durch und schaue, ob es Code-Reviews gibt.

Nachdem diese Aufgaben erledigt sind, ist es unterschiedlich. Entweder nehme ich ein Ticket entgegen, das zum Testen bereit ist, verbessere oder füge Tests in unserem Testautomatisierungs-Framework hinzu oder bereite einen Testlauf für ein Release in der Produktion vor. Es kann zeitweise recht schnelllebig sein und erfordern, von einer Aufgabe zur anderen zu springen. Es wird nie langweilig :)

Gegen Mittag mache ich Mittagspause (einer der vielen Vorteile des Remote-Arbeitens).

Gegen 17 Uhr ist mein Arbeitstag zu Ende.

Nach der Arbeit spiele ich mit Alexander und wir essen zusammen zu Abend. Nachdem meine Partnerin ihn ins Bett gebracht hat, gehe ich etwa 40 Minuten spazieren, um abzuschalten.

Um 23 Uhr bin ich normalerweise bereit, ins Bett zu gehen.

Alexander isst an meinem Reißverschluss – warum auch nicht!

Was sind Ihrer Erfahrung nach die besten und schwierigsten Dinge am Remote-Arbeiten?

Die besten Dinge: Man muss nicht zur Arbeit pendeln (spart viel Zeit), man kann zu Hause zu Mittag essen, man verbringt mehr Zeit mit seiner Familie. Bei Bedarf kann man seine Zeit flexibler gestalten.

Die größten Herausforderungen: Ich habe einige Zeit gebraucht, um mir etwas einfallen zu lassen, weil Remote-Arbeit erstaunlich ist. Wenn ich etwas erwähnen müsste, würde ich sagen, dass es manchmal schwieriger sein kann, tatsächlich mit der Arbeit aufzuhören. Man muss wirklich diszipliniert genug sein, um sich selbst zu sagen: „Stopp, der Tag ist vorbei“.

Irgendwelche Hoffnungen und Pläne für die Zukunft (persönlich oder beruflich)?

Weitere 10 Jahre :) Ich plane nicht sehr viel in die Zukunft. Eigentlich noch nie. Sobald sich die Pandemie etwas beruhigt hat, wäre es schön, irgendwohin zu reisen. Auf einer Insel zu leben ist toll, aber ab und zu die Beine zu vertreten ist ein Muss.

Komm und arbeite mit uns

Sind Sie daran interessiert, in einem weltweit verteilten Team zu arbeiten, das Wachstum und Weiterentwicklung fördert? Sind Sie bereit, die Macht der Technologie für eine bessere Zukunft zu nutzen?