Senior Software Engineer - Go
Design, develop and contribute to a mature distributed systems Go code base. We're looking for experienced Go developers who can show strong technical leadership and engineering rigour. Own the design, delivery and support of features in a highly concurrent, highly distributed system that drives cloud automation and software operations at scale.
As a software engineer on the Juju team, you'll be working on a large open source Go project that powers complex distributed software systems across the world. Juju is the engine behind model-driven operations, providing a means to operate complex software on public cloud, private cloud, Kubernetes and bare-metal. Combined with the Charmed Operator framework, Juju provides a complete solution for applications and infrastructure management.
If you love solving interesting technical challenges in elegant, high-performance ways, come join our globally-distributed team of software engineers in building the future of the software-defined datacenter on the Ubuntu platform.
Many internal and external teams depend on Juju to deliver their products and services - from Canonical Infrastructure Services, our Openstack and cloud delivery teams, to Fortune 500 companies
Who you are
- Proven track record of professional software delivery using Go, C, C++ or similar.
- Hands-on experience developing highly concurrent distributed systems
- Experience with container technologies (Docker, LXD, Kubernetes, etc.)
- Solid networking background and experience
- Degree level education in a technology field
- Experience with agile software development methodologies
- Experience of the Linux and free software world
- Working knowledge of cloud computing and experience with highly-concurrent distributed systems
- Excellent communications skills in the English language, both verbal and written, especially in online environments
- Ability to effectively interact with a diverse group of people (both technical and non-technical)
- Ability to be productive in a globally distributed team through self-discipline and self-motivation, delivering according to a schedule, and to motivate and mentor others to do the same
Desirable traits and experience
- Passionate about software quality and testing
- Experience with packaging (debian, snappy)
- Programming with and operating MongoDB
- Experience working on a distributed team on an open source project -- even if that is outside work open source contributions.
- Demonstrated track record of Open Source contributions
We are proud to foster a workplace free from discrimination. We truly believe that diversity of experience, perspectives, and background will lead to a better environment for our employees and a better platform for our users and customers. This is something we value deeply and we encourage everyone to come be a part of the world of Ubuntu.