Software Engineer, Desktop Client
Salesforce
Job Summary
A Senior Software Engineer is sought for the Desktop team within the Architecture and Systems organization. This team is responsible for the desktop framework underpinning the Slack desktop client across all platforms, heavily involved in the Electron project. The role involves leading cross-functional efforts to ensure security, performance, and stability within the web and desktop client, contributing to architectural decisions, and improving core systems. The ideal candidate will have deep expertise in Chromium and Node.js.
Must Have
- Lead efforts for OS level stability, security, and code maintainability in Electron.
- Lead cross-functional desktop initiatives to increase developer productivity, performance, or security.
- Maintain and improve core systems for Slack desktop client and Electron framework.
- Contribute to architectural decisions for frontend and desktop infrastructure.
- Proactively identify and remedy communication gaps and issues.
- Deep Chromium experience.
- Deep working experience in Node.js and V8 Javascript engine.
- Experience with performance profiling and debugging tools for web-based desktop applications.
- Familiarity with desktop development.
- Experience writing understandable, testable, maintainable, and scalable code.
- Bachelor's degree in Computer Science, Engineering, or related field, or equivalent experience.
Good to Have
- Experience with large scale open source projects (contributions are a plus).
- Eagerness to learn and teach.
- Strong written and verbal communication skills.
- Empathy in solution design, considering those who build on your work.
Perks & Benefits
- Time off programs
- Medical, dental, vision, mental health support
- Paid parental leave
- Life and disability insurance
- 401(k)
- Employee stock purchasing program
- Company bonus
- Equity
Job Description
A Senior Software Engineer to join our Desktop team within the Architecture and Systems organization. This team is responsible for the desktop framework that underpins the Slack desktop client across all platforms. This team is heavily involved within the Electron project, ensuring the continued success and sustainability of the Electron ecosystem on behalf of the company.
We are looking for an engineer who has deep expertise within Google’s Chromium project, who is eager to lead cross functional efforts to uphold security, performance, and stability within the web and desktop client. This engineer should love to keep up to date with the evolving capabilities of browser and desktop based development, be excited about the opportunity to increase developer efficiency and iterate on desktop security and development best practices alongside the rest of the Desktop and Frontend teams, and look forward to opportunities to collaborate across companies to align interests on a unified Electron vision.
Our success depends on working closely with other teams at the company and at other companies, so communication and collaboration skills are a must. This is an opportunity to work on a team of skilled and impactful engineers that directly affects how the desktop client is built.
What you will be doing:
- Leading efforts across Electron to ensure OS level stability, security, and code maintainability
- Leading cross functional desktop initiatives associated with increasing developer productivity, performance, or security alongside desktop and frontend stakeholders
- Maintain and improve the core systems that power the Slack desktop client and Electron framework, including company and Electron-based infrastructure and tooling
- Contributing to key architectural decisions to adapt our existing frontend and desktop infrastructure to support new product features
- Proactively identifying and remedying communication gaps and issues to reach alignments for complex issues across diverse internal and external audiences and influence organizational goals and strategy
What you should have:
- Deep Chromium experience
- Deep working experience in Node.js and the underlying V8 Javascript engine
- Experience working with performance profiling and debugging tools for web based desktop applications
- Familiarity with desktop development, along with the ability to understand and explain technical trade-offs and complexities of web based desktop applications
- Experience working with large scale open source projects (and having contributed to some is a big plus.)
- Experience writing understandable, testable code with an eye towards maintainability and scalability.
- Eagerness to learn, but similar excitement to teach.
- Strong written and verbal communication skills, equally comfortable communicating with your immediate team, other frontend engineers, or even backend infrastructure engineers.
- Understanding that the perfect solution is informed by the people who will be building on your work, rather than being purely dependent on technical merits. Empathy is a feature.
- Bachelor's degree in Computer Science, Engineering or a related field, or equivalent training, fellowship, or work experience.