Software Engineer - Data Infrastructure - Kafka

Canonical Ltd.
7 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Remote

Tech stack

Artificial Intelligence
Backup Devices
Big Data
Ubuntu (Operating System)
Data as a Services
Data Infrastructure
Software Debugging
Linux
Distributed Systems
Elasticsearch
Fault Tolerance
Python
PostgreSQL
MongoDB
MySQL
NoSQL
Open Source Technology
OpenStack
Oracle Applications
Package Management Systems
Redis
Software Engineering
SQL Databases
Spark
Kubernetes
Information Technology
Kafka
Data Management

Job description

The data platform team is responsible for the automation of data platform operations, aiming to manage and integrate Big Data platforms at scale. This includes ensuring fault-tolerant replication, TLS, installation, backups, and more; and provides domain-specific expertise on these systems to other teams within Canonical. The role focuses on creating and automating infrastructure features of data platforms, not on analysing or processing the data.

  • Collaborate proactively with a distributed team
  • Write high-quality, idiomatic Python code to create new features
  • Debug issues and interact with upstream communities publicly
  • Work with helpful and talented engineers, including experts in many fields
  • Discuss ideas and collaborate on finding good solutions
  • Work from home with global travel for 2-4 weeks per year for internal and external events, * Personal learning and development budget of USD 2,000 per annum
  • Annual compensation review
  • Recognition rewards
  • Annual holiday leave
  • Parental leave
  • Employee Assistance Programme
  • Opportunity to travel to new locations to meet colleagues twice a year
  • Priority Pass for travel and travel upgrades for long-haul company events

About Canonical - Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open-source projects and the platform for AI, IoT, and the cloud, we are changing the world on a daily basis. We recruit globally and set a high standard for people joining the company.

Requirements

  • Hands-on experience in software development using Python
  • Hands-on experience in distributed systems, such as Kafka and Spark
  • Bachelor's or equivalent degree in Computer Science, STEM, or a similar field
  • Willingness to travel up to 4 times a year for internal events

Additional skills that you might also bring

  • Experience operating and managing other data platform technologies, SQL (MySQL, PostgreSQL, Oracle, etc) and/or NoSQL (MongoDB, Redis, ElasticSearch, etc), similar to DBA level expertise
  • Experience with Linux systems administration, package management, and infrastructure operations
  • Experience with the public cloud or a private cloud solution like OpenStack
  • Experience operating Kubernetes clusters and a belief that it can be used for serious persistent data services

About the company

Canonical is building a comprehensive automation suite to provide multi-cloud and on-premise data solutions for the enterprise. The data platform team develops managed solutions for a full range of data stores and technologies, spanning from big data, NoSQL, cache-layer, analytics, to structured SQL engines. We face the problem of fault-tolerant mission-critical distributed systems and aim to deliver the world's best automation solution for managed data platforms. We are looking for candidates from junior to senior levels with interests, experience, and willingness to learn around Big Data technologies such as distributed event-stores (Kafka) and parallel computing frameworks (Spark). Engineers who thrive at Canonical are mindful of open-source community dynamics and aware of the needs of large, innovative organisations.

Apply for this position