Principal Software Engineer - Encryption
Atlassians can choose where they work – whether in an office, from home, or a combination of the two. That way, Atlassians have more control over supporting their family, personal goals, and other priorities. We can hire people in any country where we have a legal entity. Interviews and onboarding are conducted virtually, a part of being a distributed-first company.
Whatever your preference - working from home, an office, or in between - you can choose the place that's best for your work and your lifestyle. We call this TEAM anywhere.
In this role, you'll get the chance to:
Regularly tackle the largest and most complex problems on the team, from technical design to launch
Deliver solutions that are used by other teams and products
Determine plans-of-attack on large projects
Routinely tackle complex architecture challenges and apply architectural standards and start using them on new projects
Lead code reviews & documentation as well as take on complex bug fixes, especially on high-risk problems
Set the standard for thorough, meaningful code reviews
Partner across engineering teams to take on company-wide initiatives spanning multiple projects
Transfer your depth of knowledge from your current language to excel as a Software Engineer
Mentor more junior members of the team
Your background
12+ years experience in multiple hands-on software/technology leadership roles, with end-to-end responsibility through the software development lifecycle
Bachelor's or Master's degree (preferably a Computer Science degree or equivalent experience)
Expertise with one or more prominent languages such as Java, Python, Kotlin, Go, or Scala is required, plus experience in at least one additional language
Hands-on experience building encryption, key management, or other security-critical systems at scale
Strong cloud security expertise, with hands-on experience on public cloud platforms (e.g., AWS, GCP, or Azure)
Understanding of the SaaS, PaaS, and IaaS industry and of large-scale distributed systems
Knowledge to evaluate trade-offs between security, correctness, robustness, performance, space, and time
Practice in mentoring other engineers and influencing decision makers throughout the organization
Considers the customer impact when making technical decisions
Experience in CI (Continuous Integration) and CD (Continuous Deployment)