
Remote opportunity at
CanonicalSoftware Engineer - Data Infrastructure - Kafka
Canonical is hiring a Software Engineer for its Data Infrastructure team with a Kafka focus. The group builds managed services for many kinds of data store,…
Career Tools
About This Role
Canonical is hiring a Software Engineer for its Data Infrastructure team with a Kafka focus. The group builds managed services for many kinds of data store, including big data, NoSQL, cache layers, analytics and structured SQL engines, aiming for a managed platform experience comparable to a hosted cloud database. The work involves resilient, mission-critical distributed systems. Openings range from junior to senior, and the team is interested in people who…
Job Description
Canonical is hiring a Software Engineer for its Data Infrastructure team with a Kafka focus. The group builds managed services for many kinds of data store, including big data, NoSQL, cache layers, analytics and structured SQL engines, aiming for a managed platform experience comparable to a hosted cloud database. The work involves resilient, mission-critical distributed systems. Openings range from junior to senior, and the team is interested in people who want to learn about big data tools such as Kafka and Spark.
The team automates data platform operations at scale, including fault-tolerant replication, TLS, install steps and backups. It also provides expertise on data systems to other groups inside Canonical. The role centres on creating and automating the infrastructure features of data platforms rather than processing the data in them. The engineer writes clean, idiomatic Python, debugs issues, engages with upstream communities in public, and works with experienced specialists in many fields.
Applicants need proven hands-on Python development and experience with Spark- and Kafka-style distributed systems. A degree-level study in computing, a STEM subject or a closely related area. Helpful extras include operating SQL databases such as MySQL, PostgreSQL and Oracle, or NoSQL systems such as MongoDB, Redis and Elasticsearch, to near DBA level. Linux administration, cloud experience and Kubernetes operations for persistent data services are also valued. Applicants in European, Middle Eastern and African time zones are considered.
Canonical is a global software company behind Ubuntu, with more than 1,000 colleagues across over 70 countries. It has been remote-first since 2004.
Responsibilities
- Automate data platform operations, covering replication, TLS, installation and backups
- Write clean, idiomatic Python to add new platform features
- Debug problems and engage with upstream communities in public
- Talk through ideas with engineers across the company to settle on sound solutions
- Share expertise on data systems with other Canonical teams
Requirements
- Demonstrated practical Python development experience
- Demonstrated practical work with Spark- and Kafka-style distributed systems
- Willingness to travel up to four trips a year for internal events
- Able to work remotely, with trips abroad totalling 2 to 4 weeks yearly for in-house and outside events
Qualifications
- Degree-level study in computing, a STEM subject or a closely related area
- Experience operating SQL engines such as MySQL, PostgreSQL and Oracle, or NoSQL systems such as MongoDB, Redis and Elasticsearch
- Background in running Linux systems, handling packages and infrastructure operations
- Experience with public or private cloud platforms such as OpenStack
- Experience running Kubernetes clusters for persistent data services
Core Skills
Benefits
- Remote working, with in-person team sprints twice a year
- USD 2,000 yearly budget for learning and development
- Yearly pay review and recognition awards
- Annual holiday leave, plus maternity and paternity leave
- Employee assistance and wellness programme
- Opportunities to visit new cities to meet colleagues
Frequently Asked Questions
Answers are based only on the employer’s listing; where it doesn’t say, neither do we.
What level is the role open to?
The posting says openings range from junior to senior, with the level set by the candidate's experience.
What technologies should candidates know?
Proven experience in Python and in Spark- and Kafka-style distributed systems is required, and interest in big data technologies is important.
Which time zones can the role be filled in?
Applicants in European, Middle Eastern and African time zones are considered.
Does the posting state a salary?
No salary figure is given. Base pay depends on location, experience, knowledge and skills.
Sample Interview Questions
AI-generated questions tailored to this specific role — a preview of the full practice set.