Drive the future of collaborative open source development tooling as part of the Launchpad team. This is an opportunity for a motivated engineer with a passion for open source software, Linux, and web services to join our distributed team.
Launchpad is a robust platform for managing open source development projects. It includes code hosting and review, bug tracking, package building, translations, and other facilities used by free and open source software developers. It provides essential development infrastructure for major projects such as Ubuntu.
Launchpad is a mature project, mainly written in Python (primarily Zope, with some Flask). You'll be striking a balance between keeping our business-critical services running and expanding our feature set: among other things, we have upcoming work to expand our package building capabilities, improve the development flows provided to our users, and modernize our web UI. If you love keeping large projects well-organized and well-maintained, care about supporting developers, and believe that tests are the key to higher velocity and reliability, you'll fit right in.
Build a rewarding, meaningful career working with the best and brightest people in technology at Canonical, a growing international software company.
What you’ll do
Collaborate proactively with a distributed team
Write high quality code with unit tests to create new features
Debug issues and produce high quality fixes
Review code produced by other engineers
Discuss ideas and collaborate on finding good solutions
Work from home with global travel 2 to 4 times a year for internal and external events
Develop services, features, and enhancements for the Launchpad platform, with API-first development in Python
Who you are
You love technology and working with brilliant people
You are curious, flexible, articulate, and accountable
You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
You have a Bachelor’s or equivalent in Computer Science, STEM or similar degree
You have proficiency delivering robust code to production preferably written in Python.
You have experience and enjoy maintaining and improving large and mature web applications.
You have experience with databases and ORMs (PostgreSQL a plus).
You have familiarity with Ubuntu as a development and deployment platform.
You have a solid understanding of the structure of various software packaging systems, including Debian/Ubuntu packages.