At a Glance
- Tasks: Join Canonical as a Security Software Engineer, focusing on enhancing security across all product teams.
- Company: Canonical is the publisher of Ubuntu, dedicated to open-source software and security innovation.
- Benefits: Enjoy remote work, annual bonuses, personal development budgets, and travel opportunities.
- Why this job: Make a real impact on security while collaborating with diverse teams in a dynamic environment.
- Qualifications: Exceptional academic record, experience in security, and proficiency in programming languages like C or Python.
- Other info: Roles available in every timezone; travel twice a year for team events.
The predicted salary is between 36000 - 60000 £ per year.
This is a general track for security-focused engineering in every team at Canonical, across all levels of seniority. Apply here if you are already an exceptional security-focused software engineer. Most product engineering teams at Canonical include one or two spaces for dedicated security-oriented software engineers. Their role is to challenge the entire team to think more deeply about security. They contribute to the product as engineers too, but their primary focus is to improve security through state of the art practices - from table-top threat model exercises to architecture reviews, from extended security testing with fuzzers and static analysis tools to external security analyst liaison.
We also build a number of products that are entirely motivated by security technology and requirements, such as our AppArmor kernel investments and our hardening, compliance and certification toolkits for Ubuntu. As the publisher of Ubuntu we also handle long-term security response and hardening for the entire operating system and open source universe. Working with tens of thousands of upstreams means that we need to be fluent in every major programming language, and design, build and adopt sophisticated tools that enable us to work at scale and speed with confidence.
These roles encompass all aspects of product security, including feature development, vulnerability response, proactive security and open source community participation. All security roles interact closely with many of the other Canonical engineering and development teams, Canonical customers and our partners across the open source community.
Location: We have open roles for security specialist software engineers in every timezone.
What you'll do
- Define, implement and document new security features
- Lead security-oriented thinking in a product engineering team
- Analyze, fix, and test vulnerabilities in Canonical and open source Software
- Contribute to Ubuntu and upstream projects to benefit the community
- Audit and analyze source code for vulnerabilities
- Integrate new tools in our security infrastructure, pipelines and processes
- Achieve and retain various security certifications
- Extend and enhance Linux cryptographic components - specifically with modules such as OpenSSL/Libgcrypt - with the features and functionality required for country-specific compliance such as FIPS and CC certification
- Work with external partners to develop CIS benchmarks
- Design and develop hardening automation for Ubuntu
- Monitor the security industry for new developments
- Develop, test and maintain new software capabilities
- Provide guidance and support to other engineering teams
What we are looking for in you
- An exceptional academic track record from both high school and university
- Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
- Drive and a track record of going above-and-beyond expectations
- A thorough understanding of the common categories of security vulnerabilities
- Modern engineering techniques to find and fix them
- Familiarity with open source development tools and methodologies
- Skill in one or more of C, Python, Go, Rust, Java, Ruby or PHP
- Experience as a security champion
- Experience driving security within a wider SDLC process
- Professional written and spoken English
- Experience with Linux (Debian or Ubuntu preferred)
- Excellent interpersonal skills, curiosity, flexibility, and accountability
- Passion, thoughtfulness, and self-motivation
- Excellent communication and presentation skills
- Result-oriented, with a personal drive to meet commitments
- Ability to travel twice a year, for company events up to two weeks each
Optional skills we also value
- Clear and effective communication with the team and Ubuntu community members
- Experience working with Linux Kernel
- Security Certification experience and knowledge in FIPS and/or CC
- Experience with OVAL (Open Vulnerability Assessment Language)
- Knowledge of and familiarity with low-level Linux cryptography APIs
- Demonstrated high learning ability
- Performance engineering experience
What we offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
- Distributed work environment with twice-yearly team sprints in person
- Personal learning and development budget of USD 2,000 per year
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues
- Priority Pass, and travel upgrades for long haul company events
Security Software Engineer employer: Canonical
Contact Detail:
Canonical Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Security Software Engineer
✨Tip Number 1
Familiarise yourself with Canonical's products and security practices. Understanding their approach to security, especially in relation to Ubuntu and open source projects, will help you demonstrate your alignment with their goals during interviews.
✨Tip Number 2
Engage with the open source community by contributing to relevant projects. This not only showcases your skills but also highlights your commitment to security and collaboration, which are key aspects of the role.
✨Tip Number 3
Prepare to discuss specific security vulnerabilities you've encountered and how you addressed them. Being able to articulate your problem-solving process will set you apart as a candidate who can lead security-oriented thinking within a team.
✨Tip Number 4
Network with current or former employees of Canonical on platforms like LinkedIn. Gaining insights from their experiences can provide you with valuable information about the company culture and expectations, helping you tailor your approach.
We think you need these skills to ace Security Software Engineer
Some tips for your application 🫡
Tailor Your CV: Make sure your CV highlights your experience in security-focused software engineering. Emphasise your familiarity with programming languages like C, Python, or Go, and any relevant projects that showcase your skills in vulnerability analysis and security practices.
Craft a Compelling Cover Letter: In your cover letter, express your passion for security and how you can contribute to Canonical's mission. Mention specific experiences where you've driven security initiatives or improved security processes in previous roles.
Showcase Relevant Projects: Include examples of projects where you've implemented security features or conducted vulnerability assessments. This could be personal projects, contributions to open source, or professional work that demonstrates your ability to enhance security.
Highlight Soft Skills: Canonical values excellent communication and interpersonal skills. Make sure to mention instances where you've effectively collaborated with teams or communicated complex security concepts to non-technical stakeholders.
How to prepare for a job interview at Canonical
✨Showcase Your Security Knowledge
Make sure to highlight your understanding of common security vulnerabilities and modern engineering techniques during the interview. Be prepared to discuss specific examples from your past experiences where you identified and mitigated security risks.
✨Demonstrate Your Programming Skills
Since the role requires fluency in various programming languages, be ready to showcase your skills in C, Python, Go, Rust, Java, Ruby, or PHP. You might be asked to solve coding problems or discuss your previous projects, so brush up on your technical knowledge.
✨Prepare for Scenario-Based Questions
Expect scenario-based questions that assess your ability to lead security-oriented thinking within a product engineering team. Think about how you would approach security challenges and be ready to explain your thought process clearly.
✨Communicate Effectively
Excellent communication skills are crucial for this role. Practice articulating your ideas and experiences clearly and concisely. Be prepared to engage in discussions about security practices with both technical and non-technical stakeholders.