A Staff-level Software Engineer specializing in Identity Management, responsible for developing and modernizing authentication and authorization solutions across Canonical's enterprise products and websites, using Go and Python, within a remote, globally distributed team.
Key Responsibilities
Design, implement, and maintain identity management solutions for authentication and authorization across products and websites.
Develop web service APIs using Go and Python to support CLI and web clients.
Review code and collaborate with team members to ensure quality standards.
Create and enhance management, authentication, and authorization API endpoints.
Develop end-user authentication flows from design to deployment.
Write Juju charms to manage operational concerns.
Modernize the identity stack by adopting best IAM technologies.
Lead technical efforts and discussions within a distributed team.
Own the design and delivery of identity management systems at scale.
Requirements
Experience building identity and access management products, specifically with open source software, standards, protocols, and concepts such as OpenID, OAuth, LDAP
Experience implementing authorization frameworks in distributed systems
Technical background in software engineering with a proven track record of owning the design and delivery of systems
Proficiency in writing clean web service APIs supporting CLI and web frontend clients using Go (Golang) and Python
Ability to design and implement new features and enhancements from specifications to production and ongoing operations at scale
Experience reviewing code produced by other engineers and helping to set quality standards
Experience creating and enhancing management, authentication, and authorization API endpoints
Experience crafting end-user authentication flows from design to implementation
Experience writing Juju charms operators to manage operational concerns
Experience modernizing the identity stack of websites and products by driving adoption of best-of-breed IAM technologies
Familiarity with Ubuntu as a development and deployment platform
Exceptional academic record from high school and university
Undergraduate degree in a technical subject or a compelling narrative about an alternative chosen path
Professional written and spoken English with excellent presentation skills
Excellent interpersonal skills, curiosity, flexibility, and accountability
Willingness and ability to travel internationally twice a year for company events, with trips lasting up to two weeks
Benefits & Perks
Compensation is based on geographical location, experience, and performance, with annual reviews and recognition rewards
Performance-driven annual bonus or commission
Distributed work environment with the option to work remotely
Personal learning and development budget of USD 2,000 per year
Annual compensation review
Annual holiday leave
Maternity and paternity leave
Team Member Assistance Program
Wellness Platform
Opportunity to travel to new locations to meet colleagues (up to two weeks twice a year)
Priority Pass and travel upgrades for long-haul company events
Ready to Apply?
Join Canonical and make an impact in renewable energy