Job Description
Canonical is seeking a Software Engineer to join their Data Platform team. This team is responsible for the automation of data platform operations, with the mission of managing and integrating Big Data platforms at scale. Canonical is looking for candidates from junior to senior level with interests, experience and willingness to learn around Big Data technologies, such as distributed event-stores (Kafka) and parallel computing frameworks (Spark).
The Software Engineer will collaborate with a distributed team to write high-quality Python code, debug issues, and interact with upstream communities. The role involves creating and automating infrastructure features of data platforms, ensuring fault-tolerant replication, TLS, installation, and backups.
This is a globally remote role with travel required for internal and external events.
Responsibilities:
- 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
Requirements:
- Proven hands-on experience in software development using Python
- Proven hands-on experience in distributed systems, such as Kafka and Spark
- Have a Bachelor’s or equivalent in Computer Science, STEM, or a similar degree
- Willingness to travel up to 4 times a year for internal events
What Canonical offers:
- Fully remote working environment
- Personal learning and development budget of 2,000USD 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