At a Glance
- Tasks: Lead the development of Proton Mail Desktop App using Rust and C++ for Windows and Linux.
- Company: Join a mission-driven team at Proton, focused on privacy and user experience.
- Benefits: Competitive salary, remote work options, and opportunities for professional growth.
- Other info: Collaborative environment that values innovation and personal growth.
- Why this job: Make a real impact in creating secure, user-friendly productivity tools.
- Qualifications: Strong experience in Rust or modern C++, with a passion for desktop software development.
The predicted salary is between 60000 - 80000 £ per year.
We expect you to be customer-centric, a continuous learner, and passionate about technology and usability. You are adept at turning technical complexities into seamless user experiences.
Experience:
- Significant, relevant professional software development experience with Rust programming language, or with a very strong background in modern C++ and reasonably complex Rust pet projects.
- Desktop software development: Experience in developing high quality, fast, Windows and Linux cross-platform desktop applications.
- Familiarity with different native and cross-platform desktop UI frameworks (e.g. Avalonia UI, Qt, Electron, etc.). Experience in working both on user interface and on business logic.
Product mindset: A product mindset with a focus on offering outstanding user experience in a successful business environment. Familiarity with key business and product performance metrics.
Engineering leadership: Ability to make architectural decisions and contribute to strategic planning and product directions. Experience in developing scalable engineering solutions. Able to write effective engineering documents (size, quality, content).
Collaborative Skills: Proven ability to work collaboratively in a team environment, excellent written communication skills, and experience working in a distributed team.
Problem-solving: Strong problem-solving skills and the ability to troubleshoot customer issues remotely while protecting our user’s privacy. Knows what proactive solutions to implement to prepare for such scenarios.
Security focus: Understanding of secure coding practices and a commitment to maintaining high levels of security and privacy.
Bachelor's or Master's degree: In Computer Science, Software Engineering, or a related field.
(Desirable) Experience with macOS or mobile cross-platform development.
(Desirable) Familiarity with using unidirectional data-flow (a.k.a. Elm-like) frameworks.
(Desirable) Experience with Grafana, Metabase or other monitoring platforms.
(Desirable) Experience in B2B, preferably in online privacy and/or productivity contexts.
While we prefer candidates who cover the entire skillset, don't hesitate to apply if you're not an exact match, as we're willing to help you grow in certain areas.
What the job involves:
Our business unit, Inbox, is a cross-functional team of about 60 engineers, product managers, designers and data analysts driving the development of Proton Mail, the company’s flagship product, and Proton Calendar. Our mission is to create an end-to-end encrypted solution with a better user experience than any other productivity products on the market. While it is not always an easy journey, it is one that offers the chance to create meaningful impact and drive lasting change that we are fully committed to.
The Inbox Desktop team is responsible for developing desktop clients of Inbox, specifically the Proton Mail Desktop App, Proton Mail Bridge, and the Export tool. We are in the process of rebuilding our client applications on a new, innovative technology stack centred around cross-platform Rust code. We are looking for a Senior Software Engineer to take the technical ownership of the Proton Mail Desktop App on Windows and Linux platforms.
Currently, we use many languages and frameworks in the team like Golang, C++, Qt, JS, TypeScript, React, or Electron. We use standard tools for communication and work organization (Git, GitLab, GitHub, GitLab CI, Jira, Confluence). Our backend runs on premise in Proton’s data centers, and all our client-code is open source and GPL3.
As a Senior Software Engineer in the Inbox Desktop team, you will play a crucial role in driving the development of one of Proton's most vital desktop offerings, the Proton Mail Desktop App. Effective teamwork, data-driven decision-making, using APIs wisely, collaboration with Product, Design, and with other teams are essential aspects of this role.
In the Inbox organization, we believe that a psychologically safe environment is critical to foster innovation, collaboration, and growth. We are rooted in science, and according to both academic research and empirical evidence, teams that feel safe to take risks and express their ideas are more likely to be innovative and perform better: you will play a key role in helping us create such an environment across the entire organization.
Research: Assessing new technologies, supporting cross team and cross business unit technical decision making.
Work breakdown: Transforming product specifications into technical requirements and lead your team to their successful implementation.
Product development: Ensuring high-quality user experiences within our product portfolio by implementing, deploying and maintaining existing and new features.
Scalability: Enhancing software development lifecycle, tools, and processes to improve developer experience and to ensure our solutions are scalable.
Coding: Writing clear, concise and testable code to maintain and elevate the quality of our codebase.
Project management: Managing the scoping, planning and execution of new features, technical initiatives and greenfield projects.
Mentoring: Fostering a culture of learning, creativity, and accountability for the best possible work through mentorship and team development, role modelling quality assurance and performance optimization.
Senior Desktop Software Engineer - Rust/C++ Cross-Platform employer: Proton
Proton is an exceptional employer that prioritises a collaborative and psychologically safe work environment, fostering innovation and personal growth. As a Senior Desktop Software Engineer, you will have the opportunity to work on cutting-edge technology in a mission-driven team dedicated to enhancing user privacy and experience. With a strong focus on employee development and a commitment to open-source principles, Proton offers a unique chance to make a meaningful impact while advancing your career in a supportive atmosphere.
StudySmarter Expert Advice🤫
We think this is how you could land Senior Desktop Software Engineer - Rust/C++ Cross-Platform
✨Tip Number 1
Network like a pro! Reach out to folks in the industry, attend meetups, and connect with people on LinkedIn. You never know who might have the inside scoop on job openings or can refer you directly.
✨Tip Number 2
Show off your skills! Create a portfolio showcasing your Rust and C++ projects, especially those that highlight your cross-platform capabilities. This is your chance to demonstrate how you turn technical complexities into seamless user experiences.
✨Tip Number 3
Prepare for interviews by brushing up on common technical questions and coding challenges. Practice explaining your thought process clearly, as communication is key when working in collaborative environments like ours.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, we love seeing candidates who are genuinely interested in joining our mission.
We think you need these skills to ace Senior Desktop Software Engineer - Rust/C++ Cross-Platform
Some tips for your application 🫡
Show Your Passion for Technology:When writing your application, let your enthusiasm for technology and usability shine through. We want to see how you turn complex ideas into user-friendly experiences, so share examples that highlight your passion!
Tailor Your Experience:Make sure to align your experience with the requirements listed in the job description. If you've worked with Rust or modern C++, mention specific projects or challenges you've tackled. We love seeing relevant examples that showcase your skills!
Highlight Collaboration Skills:Since we value teamwork, don’t forget to mention your collaborative experiences. Talk about how you've worked with others in a distributed team and how you’ve contributed to creating a psychologically safe environment. We’re all about fostering innovation together!
Keep It Clear and Concise:Your written application should be clear and to the point. Use straightforward language and avoid jargon where possible. Remember, we appreciate effective communication, so make sure your application reflects that. And don’t forget to apply through our website!
How to prepare for a job interview at Proton
✨Know Your Tech Stack
Make sure you’re well-versed in Rust and modern C++. Brush up on your experience with cross-platform desktop applications, especially if you've worked with frameworks like Qt or Electron. Be ready to discuss specific projects where you’ve turned technical complexities into user-friendly solutions.
✨Show Your Product Mindset
Demonstrate your understanding of user experience and how it ties into business success. Prepare examples of how you’ve contributed to product development in the past, focusing on metrics that matter. This will show that you’re not just a coder but someone who thinks about the bigger picture.
✨Collaboration is Key
Since this role involves working in a distributed team, highlight your collaborative skills. Share experiences where you’ve successfully worked with product managers, designers, or other engineers. Mention any tools you’ve used for communication and project management, like Git or Jira.
✨Problem-Solving Approach
Be prepared to discuss your problem-solving strategies, especially in troubleshooting customer issues. Think of scenarios where you’ve implemented proactive solutions to prevent problems. This will showcase your ability to think on your feet and maintain user privacy while resolving issues.