Jay Shah
Wie bist du zu Checkmk gekommen? Was war ausschlaggebend für deine Entscheidung, bei uns anzufangen?
Oliver, unser Tech Recruiter, hat mich via LinkedIn kontaktiert! Und seit dem ersten Kennenlerngespräch hat einfach alles gepasst, ein Interview nach dem anderen. Ich bin froh, hier zu sein.
Was müssen ein Softwareprodukt und das dahinterstehende Unternehmen bieten, damit du auch nach mehreren Jahren noch von ihnen überzeugt bist?
Jedes Unternehmen sollte seine Mitarbeitenden mit Respekt und Fairness behandeln, da diese Punkte die Grundlage jeder Beziehung bilden. Und speziell für Unternehmen, die Softwareprodukte liefern: Das Produkt sollte ein echtes Bedürfnis in der Welt, in der wir leben, ansprechen.
Was macht deiner Meinung nach Checkmk oder dein Team im Speziellen so besonders?
Checkmk erfüllt alle zuvor genannten Kriterien, die mir vorschweben. Kolleginnen und Kollegen zu haben, die dieselben Überzeugungen teilen, hilft enorm, und genau das macht die Zusammenarbeit mit ihnen zu einer wunderbaren Erfahrung.
Einer unserer Entwickler hat unsere gute Work-Life-Balance hervorgehoben. Was bedeutet eine gesunde Balance für dich und wie erreichst du sie?
Die ideale Definition: 5 Tage die Woche jeweils 8 Stunden arbeiten.
Realistisch betrachtet kommt es darauf an. Es gibt längere Tage und es gibt kürzere. Aber sowohl das ideale als auch das reale Szenario haben eines gemeinsam: Eine gesunde Balance kann nur erreicht werden, wenn während des Arbeitstages transparente Kommunikationskanäle zwischen allen Beteiligten etabliert sind. Das führt zu einem effektiven Aufwandsmanagement für alle und ermöglicht so eine gute Work-Life-Balance.
Welche Entwicklungstools nutzt du am liebsten und warum sind sie für deine tägliche Arbeit unverzichtbar?
Die Tools lassen sich in verschiedene Kategorien unterteilen:
- Plattform: Ubuntu / Unix und starke Nutzung von Bash und entsprechenden Tools.
- Entwicklungsumgebung: Git; IDE – VSCode; Python-Umgebung – UV; Docker
- Testen und Testautomatisierung: Python; Pytest; Playwright-python
- Dokumentation: Sphinx (Entwicklung); Confluence (Testen) + Google Drive
- Aufwandsplanung und -schätzung: JIRA
- Workflows: SCRUM
Die tägliche Arbeit als Test Automation Engineer erfordert das Lesen von viel Code und das Validieren neuer Änderungen im Framework. Daher auch die Nutzung von Git und Bash-bezogenen Tools. Eine gut eingerichtete IDE hilft ebenfalls sehr dabei, den Framework-Code zu durchsuchen und Informationen zu verarbeiten – sei es für Reviews oder für Implementierungszwecke.
Was den Workflow angeht, hilft SCRUM beim Wachstum des Teams über einen längeren Zeitraum, da es das Lernen aus den Erfahrungen anderer Teammitglieder ermöglicht.
Kannst du den typischen Lebenszyklus beschreiben, wenn ihr im Team an einem neuen Software-Feature arbeitet?
Grobe Initiativen werden in der Roadmap für das anstehende Release geplant und dann in Features unterteilt. Diese Features werden mithilfe von SCRUM-Praktiken (agile Entwicklung) entwickelt und validiert. Nach Fertigstellung wird ein Feature von Stakeholdern wie Product Ownern, anderen Team Leads und technischen Beratern überprüft. Jegliches Feedback wird im Team besprochen und eingearbeitet.
Dieser Zyklus setzt sich fort, bis die Initiative abgeschlossen ist, woraufhin ein Initiativen-Review durch die Stakeholder durchgeführt wird, um Feedback zu sammeln und auf kritische Probleme zu reagieren.
Wie stellst du die Qualität und Skalierbarkeit deines Codes sicher?
Auf höherer Ebene ermöglicht die Diskussion der Teststrategie zu Beginn einer Initiative ein gemeinsames Verständnis der „Definition of Done“ – sowohl auf Feature- als auch auf Initiativen-Ebene. Die Definition of Done dient als Leitfaden, um zu verstehen, wann eine Softwareimplementierung erfolgreich entwickelt und validiert wurde.
Auf tieferer Ebene stellt das Erstellen von Testplänen für jedes in Entwicklung befindliche Feature sicher, dass die geplanten Anwendungsfälle und kritischen Grenzfälle gründlich validiert wurden.
Worauf legst du bei der Zusammenarbeit mit anderen Feature-Teams und Entwicklern am meisten Wert?
Zusammenarbeit bedeutet gewöhnlich, ein Problem gemeinsam zu lösen und eine Entscheidung zu treffen. Daher ist es für mich am wichtigsten, dass die beteiligten Personen offen für alle im Team geäußerten Meinungen sind. Jede Meinung entspricht einer anderen Perspektive. Nachdem alle Meinungen berücksichtigt wurden, sollte schließlich ein Konsens erreicht werden.
Erinnerst du dich an ein besonders interessantes, spannendes oder schönes Erlebnis, das du bei Checkmk hattest? Falls ja, kannst du uns davon erzählen?
Es war meine allererste „Stunde“ bei Checkmk und ich war für mein Onboarding in München. Ich war vorher noch nie vor Ort gewesen. Ich brauchte dringend Kaffee, und mein Gehirn hat mich einfach zur nächsten Kaffeemaschine geführt. Ohne überhaupt jemanden nach dem Weg zu fragen. Es hat sich einfach ganz natürlich angefühlt, bei Checkmk zu sein.