Staff Software Engineer, Web Application Services
Thunderbird
Get hot jobs first on Telegram
New positions appear faster in our channel
- Location
- Remote
- Job Type
- full-time
- Work Format
- 🌍 Remote Worldwide
- Salary
- $180,000 - $215,000 USD
- Posted
- September 28, 2026
Job Description
Why Thunderbird?
Thunderbird is one of the world’s most trusted open-source email applications, empowering more than 20 million people globally. At Thunderbird, we build privacy-respecting communication and productivity tools that help people manage their digital lives while staying in control of their data.
We are open source by design. Our products are developed transparently and in collaboration with a global community of contributors, and that same spirit shapes how we work: collaboratively, inclusively, and with a shared commitment to putting users first.
Our small but growing distributed team includes more than 65 people across seven countries. As Thunderbird evolves beyond a single desktop application, we are expanding across desktop, mobile, paid services, AI offerings, and enterprise-facing work to build independent, privacy-respecting alternatives to big tech ecosystems.
Our revenue model combines user donations, which help keep Thunderbird’s applications freely available, with paid services that cover the costs of hosted offerings while supporting long-term sustainability and continued innovation.
A note about Thunderbird and Mozilla: Thunderbird Technologies Corporation is the nonprofit-owned company behind Thunderbird email and a growing portfolio of products. While part of the Mozilla family, Thunderbird is a separate entity from Mozilla Corporation and Mozilla Foundation with its own compensation programs, benefits, and employment policies.
To learn more, visit
The opportunity
As a Staff Software Engineer, Services, you’ll help shape the architecture and technical direction of web-based products that extend Thunderbird beyond email. The Services team is currently focused on building offerings such as an appointment calendar and secure file storage and transfer solutions, creating valuable experiences for our users while supporting additional revenue streams for Thunderbird.
This is a Staff-level individual contributor role with significant technical ownership and influence. You’ll work with designers, engineers, and community members to write code, build prototypes, solve complex problems, and make technical decisions that shape our products. You’ll take a holistic view of our code and systems, helping establish the architecture and software patterns that allow our Services products to evolve and scale.
You’ll also take on broad, ambiguous problems that have a direct impact on our goals, from improving our technical architecture to helping grow Services users and subscribers. Along the way, you’ll provide technical and product direction across teams, mentor other engineers, and identify ways to make our systems and processes more sustainable, scalable, and easier to work with.
What you’ll do
- Lead the technical architecture of new Services products, taking ownership of complex projects and identifying improvements that strengthen our systems as they evolve.
- Write code, build prototypes and experiments, and contribute throughout the development lifecycle, from planning and testing through implementation, monitoring, and maintenance.
- Help establish software patterns and make technical decisions across our Services products, including investigating and proposing technology choices.
- Build and evolve analytics and infrastructure that help the team use user-generated data to inform decisions.
- Take on ambiguous, high-level problems with broad scope and direct impact on Services goals, including growing users and subscribers.
- Provide technical and product direction across Thunderbird and lead technical collaboration with other parts of Mozilla and community contributors when needed.
- Work closely with the team and community to surface issues, refine ideas, and develop practical solutions.
- Identify and plan improvements that make our systems and processes more accessible, self-serviceable, lower friction, sustainable, scalable, and easier to delegate.
- Mentor other engineers through code review, documentation, technical discussions, process improvements, and ongoing guidance.
- Stay current with evolving technologies, coding standards, libraries, and frameworks and apply that knowledge to your work.
What you bring
- 10+ years of web software development experience, including experience designing scalable and efficient systems and launching complex web projects at scale.
- Expert-level JavaScript skills and knowledge of at least one additional programming language, such as Python, Rust, Go, or C++.
- An understanding of the business landscape, including challenges and opportunities, and experience collaborating with teams to expand Thunderbird’s user and donor base.
- Experience with front-end frameworks, full-stack development, and/or API development.
- Strong knowledge of software development practices, including testing, code review, and documentation, and the ability to help others develop these skills.
- Experience acting as a technical lead, solving complex technical problems, and providing mentorship and guidance to other engineers.
- Experience collaborating remotely across disciplines such as engineering, product management, QA, and design.
- Excellent written and verbal English communication and documentation skills, with the ability to communicate clearly and concisely with an international, geographically distributed team.
- Comfort working in an open-source environment and a commitment to Mozilla values.
- Ability to learn, evaluate, and responsibly use emerging technologies, including AI-enabled tools, to improve work processes.
- A commitment to continuous learning and staying current with industry trends and technologies.
- Ability and willingness to travel periodically, including internationally.
Bonus points for
- Experience with product management or product-focused work.
What success looks like
Success in this role will look like a strong technical leader who not only helps the Web Services team grow, but also has a direct hand in helping Thunderbird grow and evolve our product offerings.
Over time, your work will help:
- Grow & mature scalable, modern software patterns and architecture across Web Services products.
- Turn new product ideas and complex technical problems into working solutions, prototypes, and experiments.
- Partner with leadership and cross-functional partners (Product, Design, etc) to help generate data-driven product decisions.
- Provide clear technical and product direction across complex, cross-functional work.
- Help other engineers grow their technical, collaboration, and leadership skills.
- Support the growth of users and subscribers as Thunderbird expands its offerings beyond email.
Work environment
This is a full-time, fully remote position. You’ll join a distributed team of Thunderbird staff, open-source community members, and contributors from around the world.
We rely on clear communication, thoughtful documentation, and collaborative decision-making to work effectively across time zones and disciplines.
In this role, you’ll collaborate closely with designers, engineers, cross-functional teams across Thunderbird, other parts of Mozilla, and community contributors.
Compensation & benefits
We benchmark our base salaries to local markets and target the 60th percentile of the peer market. The salary ranges for this role are:
- US: $180,000 - $215,000 USD
- Canada: $155,000 - $190,000 CAD
We may consider candidates with strong skills but less than the required experience. Title, level and compensation will be determined based on qualifications and experience.
In addition to competitive salaries, we offer a comprehensive benefits package designed to support your whole self.
Work & career
- Fully remote work & schedule flexibility
- Company-provided laptop
- Annual bonus program
- Monthly remote work stipend
- Annual professional development stipend
- Access to Coursera learning platform
- Industry conferences
- Company all-hands and team gatherings
Rest & play
- 24 days PTO per year (prorated)
- Your birthday
- Year-end company shutdown
- 9 wellbeing days
- Public holidays
- Other paid leave
- Quarterly wellbeing stipend for personal / family activities
Health & family
- 401(k) / RRSP contributions
- Health, dental, & vision insurance
- Disability insurance
- Life insurance
- Employee assistance program
- Paid parental leave
- Paid sick days
Work eligibility
Applicants must reside in and have permanent work authorization for the country location(s) specified in the posting. We are unable to consider applicants outside of these markets at this time. And, we do not provide visa sponsorship.
How to apply
Please apply directly through our career page. We carefully review every cover letter and screening question, so take the time to answer each fully. We value authentic, thoughtful responses that reflect your own experience and perspective. It is fine to use AI tools to polish your writing, but your answers should be your own. Candidates who submit generic or unoriginal AI-generated responses may be disqualified from further consideration.
Our commitment to diversity, equity, and inclusion
Thunderbird believes in the value of diverse creative practices and forms of knowledge, and knows diversity, equity and inclusion are crucial to and enrich the company’s core mission. We encourage applications from everyone, including members of all equity-seeking communities, such as (but not limited to) women, racialized and Indigenous persons, persons with disabilities, persons of all sexual orientations, gender identities and expressions.
We are an equal opportunity employer. We do not discriminate on the basis of race (including hairstyle and texture), religion (including religious grooming and dress practices), gender, gender identity, gender expression, color, national origin, pregnancy, ancestry, domestic partner status, disability, sexual orientation, age, genetic predisposition, medical condition, marital status, citizenship status, military or veteran status, or any other basis covered by applicable laws. Thunderbird will not tolerate discrimination or harassment based on any of these characteristics or any other unlawful behavior, conduct, or purpose.
We will ensure that qualified individuals with disabilities are provided reasonable accommodations to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment, as appropriate. Please contact us at hiringaccommodations@thunderbird.net to request accommodation.
#LI-DNI
🎯 Who is this job for?
This role is suitable for a Senior/Staff-level engineer with 10+ years of web development experience and a strong record of leading scalable, complex products.
They should have expert JavaScript skills, proficiency in another language such as Python, Rust, Go, or C++, and experience with full-stack development, APIs, front-end frameworks, testing, analytics, infrastructure, and open-source collaboration.
The candidate should be familiar with defining architecture, writing and reviewing production code, building prototypes, solving ambiguous cross-functional problems, mentoring engineers, guiding product decisions, and improving systems for scalability, sustainability, and user growth.
💬 Potential Interview Questions
How would you design a scalable architecture for Thunderbird Services products such as appointment scheduling or secure file storage?
I would begin with clear domain boundaries, stable APIs, and independently scalable services where justified. I would prioritize privacy, security, observability, reliability, and operational simplicity, using prototypes and measurable requirements to validate architectural decisions before committing to unnecessary complexity.
How would you design APIs for a web service that must support both desktop and mobile clients?
I would use well-defined, versioned APIs with consistent resource models, validation, authentication, authorization, pagination, and error formats. Contract tests and backward-compatibility policies would help clients evolve independently while preserving a dependable developer experience.
What JavaScript practices would you apply when building a large full-stack application?
I would use strong modular boundaries, consistent linting and formatting, type safety where practical, and clear asynchronous error handling. Automated unit, integration, and end-to-end tests would protect critical flows, while performance profiling would guide optimization rather than premature complexity.
How would you choose between JavaScript and another language such as Python, Rust, or Go for a Services component?
I would evaluate performance, security, ecosystem maturity, team expertise, operational cost, and long-term maintainability against the component’s requirements. For example, Go or Rust may suit high-throughput or security-sensitive services, while JavaScript or Python may enable faster iteration for application and data-oriented workloads.
How would you protect privacy and user data in a hosted calendar or file-transfer service?
I would apply data minimization, encryption in transit and at rest, strict authorization, secure key management, audit logging, retention controls, and careful access separation. Privacy requirements should be reflected in threat modeling, architecture reviews, automated security testing, and operational procedures from the beginning.
How would you design analytics that support product decisions without compromising user privacy?
I would define a small set of actionable, consent-aware events and avoid collecting unnecessary personal or sensitive data. Access controls, retention limits, aggregation, anonymization or pseudonymization, and documented data governance would help ensure analytics are useful while respecting Thunderbird’s privacy principles.
How would you improve the reliability and observability of a distributed web service?
I would establish service-level objectives, structured logs, metrics, distributed traces, health checks, and actionable alerts tied to user impact. I would also use graceful degradation, retries with backoff, idempotency, timeouts, capacity planning, and incident reviews to reduce both failure frequency and recovery time.
What testing strategy would you use for a complex web application with multiple services?
I would combine fast unit tests, API and integration tests, contract tests between services, end-to-end tests for critical user journeys, and security and performance testing. Tests should run through continuous integration, with production monitoring and controlled experiments complementing pre-release validation.
How would you safely introduce an emerging technology or AI-enabled tool into a production engineering workflow?
I would start with a narrowly scoped experiment and define success, security, privacy, and quality criteria in advance. Human review, data-handling restrictions, reproducible evaluation, and rollback procedures are essential before integrating the tool into development or user-facing systems.
How do you make technical decisions and guide engineers across a distributed, open-source organization?
I would document the problem, constraints, alternatives, trade-offs, and decision in an accessible design proposal, then invite review from affected teams and contributors. Clear ownership, incremental delivery, constructive code review, and mentoring help align teams while preserving transparency and enabling sustainable technical progress.
📋 Job Summary
Thunderbird is a nonprofit-owned, open-source company building privacy-respecting communication and productivity tools for more than 20 million users worldwide. As a Staff Software Engineer, you’ll lead architecture for web services such as calendars and secure file storage, write prototypes and production code, guide technical decisions, and mentor engineers. You’ll work fully remotely with a distributed international team using expert-level JavaScript alongside front-end, full-stack, API, analytics, and infrastructure technologies, with Python, Rust, Go, or C++ experience valued. Compensation is $180,000–$215,000 USD in the US or $155,000–$190,000 CAD in Canada, making this a compelling opportunity to shape privacy-first products, influence open-source technology, and enjoy strong flexibility and benefits.
Required Skills
Never miss a JavaScript opportunity
Subscribe to get similar jobs and weekly insights delivered to your inbox
Hiring JavaScript developers?
Post your job to 8,900+ registered developers. Starting free.
See PricingRelated jobs
Is this your listing? Claim or request removal