Distributed Systems Software Engineer, Python / Go

Distributed Systems Software Engineer, Python / Go

Vollzeit 36000 - 60000 € / Jahr (geschätzt) Kein Homeoffice möglich
Canonical

Auf einen Blick

  • Aufgaben: Entwickle automatisierte Tests für Cloud-Anwendungen und verbessere CI-Pipelines.
  • Unternehmen: Canonical ist ein führendes Unternehmen im Bereich Open Source und Cloud-Technologien.
  • Vorteile: Remote-Arbeit, jährliches Lernbudget von 2000 USD und Anerkennungsprämien.
  • Weitere Informationen: Globale Remote-Position mit der Möglichkeit zu internationalen Reisen.
  • Warum dieser Job: Gestalte innovative Lösungen in einem dynamischen Team und arbeite an spannenden Cloud-Projekten.
  • Qualifikationen: Kenntnisse in Python oder Go, Erfahrung mit modernen Testprozessen und CI-Tools.

Das prognostizierte Gehalt liegt zwischen 36000 - 60000 € pro Jahr.

Distributed Systems Software Engineer, Python / Go

3 months ago Be among the first 25 applicants

We are seeking a software engineer with a passion for building and validating resilient distributed systems. At Canonical you can build a career and drive the success of those leveraging Canonical's Ubuntu and Juju to build multi-cloud deployable cloud applications.
We see quality engineering as a first class engineering practice and are looking for people who can bring deep engineering insights and a data driven approach to test automation, reporting and data analytics.
The Distributed Systems testing team at Canonical is responsible for ensuring the high quality of Canonical's Cloud solutions based on Juju, Terraform, OpenStack, Kubernetes when deployed under highly diverse conditions, from bare metal in customer data centers to public clouds like AWS, GCE, Azure.
As a software engineer you will have the opportunity to develop CI pipelines which power Canonical's cloud integration testing and reporting. Upcoming initiatives you will have the opportunity to contribute to include expanding deployment capabilities to new clouds and developing AI/ML pipelines for automatic analysis of test results. A successful candidate is interested in tackling these problems, as well as imagining and leading new initiatives within the team and across Canonical.
Location: this is a Globally remote role
What your day will look like

  • Create automated testing approaches and infrastructure for validating reliability, performance, and resilience of cloud orchestration tools and applications
  • Enable engineering teams across Canonical to develop software with confidence by making distributed system testing tooling available across the company
  • Enhance continuous integration pipelines for deploying and testing Canonical's cloud native products such as Kubeflow
  • Deploy, manage, and debug highly distributed systems
  • Monitor and report on automated testing efforts
  • Collaborate daily with a globally distributed team
What we are looking for in you
  • Solid background in modern test processes and strategies
  • Experience with Python or Go development
  • Strong object oriented development skills
  • Ability to develop and ship production grade modern web applications
  • Working knowledge of continuous integration tools such as Jenkins, CircleCI, GitHub CI
  • Knowledge of networking technologies and fundamentals
  • Solid understanding of Linux system architecture
  • A capacity for complex abstract thinking
  • Capability for 2-4 weeks of international travel travel per year
Additional skills that you might also bring
  • Collecting and analyzing large multidimensional datasets
  • Operating data platforms: key-value stores, relational or document databases, event buses
  • Work with cloud technologies such as OpenStack, Kubernetes, Terraform and AWS
  • Developing AI/ML pipelines
What we offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
  • Distributed work environment with twice-yearly team sprints in person - we've been working remotely since 2004!
  • Personal learning and development budget of USD 2,000 per year
  • Annual compensation review
  • Recognition rewards
  • Annual holiday leave
  • Maternity and paternity leave
  • Employee Assistance Programme
  • Opportunity to travel to new locations to meet colleagues from your team and others
  • Priority Pass for travel and travel upgrades for long haul company events
Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world's computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.

Seniority level

  • Seniority level

    Entry level

Employment type

  • Employment type

    Full-time

Job function

  • Job function

    Engineering and Information Technology
  • Industries

    Software Development

Referrals increase your chances of interviewing at Canonical by 2x

Get notified about new System Software Engineer jobs in Leipzig, Saxony, Germany .

Junior Software Engineer - Cross-platform C++ - Multipass

Software Engineer - Solutions Engineering

Software Entwickler .NET & Cloud (m/w/d)

Python and Kubernetes Software Engineer - Data, AI/ML & Analytics

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

#J-18808-Ljbffr

Distributed Systems Software Engineer, Python / Go Arbeitgeber: Canonical

Canonical ist ein hervorragender Arbeitgeber, der eine inklusive und unterstützende Arbeitsumgebung bietet, in der Mitarbeiter ihre Fähigkeiten in der Softwareentwicklung und im Testen verteilter Systeme weiterentwickeln können. Mit einem jährlichen Weiterbildungsbudget von 2.000 USD, flexiblen Arbeitsmodellen und der Möglichkeit, an internationalen Team-Events teilzunehmen, fördert Canonical das persönliche Wachstum und die berufliche Entwicklung seiner Mitarbeiter. Die globale Remote-Arbeitskultur ermöglicht es Ihnen, mit einem vielfältigen Team zusammenzuarbeiten und innovative Lösungen für Cloud-Anwendungen zu entwickeln.

Canonical

Kontaktdaten:

Canonical Recruiting-Team

StudySmarter Expertenrat🤫

Wir sind der Meinung, dass Sie so Distributed Systems Software Engineer, Python / Go erhalten könnten

Tip Nummer 1

Netzwerke sind entscheidend! Nutze Plattformen wie LinkedIn, um mit aktuellen oder ehemaligen Mitarbeitern von Canonical in Kontakt zu treten. Frage nach ihren Erfahrungen und Tipps für die Bewerbung als Distributed Systems Software Engineer.

Tip Nummer 2

Beteilige dich an Open-Source-Projekten, die mit Technologien wie Kubernetes oder Terraform arbeiten. Dies zeigt nicht nur dein Engagement, sondern gibt dir auch praktische Erfahrungen, die du in deinem Vorstellungsgespräch hervorheben kannst.

Tip Nummer 3

Bereite dich auf technische Interviews vor, indem du häufige Fragen zu verteilten Systemen und Testautomatisierung übst. Nutze Plattformen wie LeetCode oder HackerRank, um deine Programmierfähigkeiten in Python oder Go zu verbessern.

Tip Nummer 4

Informiere dich über die neuesten Trends in der Cloud-Technologie und KI/ML-Pipelines. Zeige in Gesprächen, dass du proaktiv bist und bereit, neue Technologien zu lernen, um zur Weiterentwicklung von Canonicals Lösungen beizutragen.

Wir glauben, dass du diese Fähigkeiten brauchst, um Distributed Systems Software Engineer, Python / Go mit Bravour zu bestehen

Erfahrung in der Softwareentwicklung mit Python oder Go
Starke objektorientierte Entwicklungsfähigkeiten
Kenntnisse in modernen Testprozessen und -strategien
Vertrautheit mit Continuous Integration-Tools wie Jenkins, CircleCI oder GitHub CI
Solides Verständnis der Linux-Systemarchitektur
Kenntnisse in Netzwerktechnologien und -grundlagen
Fähigkeit zur Entwicklung und Bereitstellung von produktionsreifen modernen Webanwendungen

Einige Tipps für deine Bewerbung 🫡

Verstehe die Anforderungen:Lies die Stellenbeschreibung sorgfältig durch und achte auf die geforderten Fähigkeiten, insbesondere in Bezug auf Python oder Go. Stelle sicher, dass du diese Punkte in deinem Lebenslauf und Anschreiben hervorhebst.

Betone deine Erfahrungen:Füge spezifische Beispiele aus deiner bisherigen Berufserfahrung hinzu, die deine Fähigkeiten im Bereich der verteilten Systeme und der Automatisierung von Tests zeigen. Zeige, wie du ähnliche Herausforderungen in der Vergangenheit gemeistert hast.

Anpassung des Lebenslaufs:Gestalte deinen Lebenslauf so, dass er die wichtigsten Qualifikationen für die Rolle als Distributed Systems Software Engineer widerspiegelt. Verwende relevante Schlüsselwörter aus der Stellenanzeige, um sicherzustellen, dass dein Lebenslauf bei automatisierten Bewerbungsprozessen nicht herausfällt.

Motivationsschreiben:Verfasse ein überzeugendes Motivationsschreiben, in dem du deine Leidenschaft für verteilte Systeme und Cloud-Technologien zum Ausdruck bringst. Erkläre, warum du bei Canonical arbeiten möchtest und wie du zur Weiterentwicklung des Unternehmens beitragen kannst.

Wie man sich auf ein Vorstellungsgespräch bei Canonical vorbereitet

Verstehe die Technologien

Mach dich mit den Technologien vertraut, die Canonical verwendet, insbesondere mit Python, Go, Kubernetes und Terraform. Zeige im Interview, dass du nicht nur die Grundlagen verstehst, sondern auch, wie diese Technologien in verteilten Systemen zusammenarbeiten.

Bereite konkrete Beispiele vor

Sei bereit, konkrete Beispiele aus deiner bisherigen Erfahrung zu teilen, die deine Fähigkeiten in der Entwicklung und dem Testen von verteilten Systemen demonstrieren. Dies könnte Projekte umfassen, an denen du gearbeitet hast, oder Herausforderungen, die du erfolgreich gemeistert hast.

Fragen stellen

Bereite einige durchdachte Fragen vor, die du dem Interviewer stellen kannst. Dies zeigt dein Interesse an der Rolle und hilft dir, mehr über die Unternehmenskultur und die spezifischen Herausforderungen des Teams zu erfahren.

Teamarbeit betonen

Da das Team global verteilt ist, ist es wichtig, deine Fähigkeit zur Zusammenarbeit in einem Remote-Umfeld zu betonen. Teile Erfahrungen, in denen du erfolgreich mit anderen zusammengearbeitet hast, um Probleme zu lösen oder Projekte abzuschließen.