Job description
Department: Engineering
Reporting to: VP of Product Engineering
We’re looking for world-class developers to join our team in building our Desktop applications. You’ll use the latest technologies and frameworks to build a modern, responsive and highly-performant application providing multiple products in the privacy and security space.
We provide the scaffolding and release vehicles into which multiple product units contribute to creating a super-app of privacy and security services for Windows, Linux and Mac. We:
Build the foundations of the app into which other product units then contribute functionality like VPN and DNS services, password management, and anti-malware.
Define core architecture, including guardrails to enable multiple teams to contribute safely.
Build core functionality in areas such as authentication, user subscriptions, in-app purchases, local and push notifications, in app messages and more.
Configure and manage our build systems.
Operate our test pipelines.
Pick test frameworks and guide other teams on using them well.
Coordinate releases to customers, typically once every two weeks or more frequently.
Coordinate technical documentation.
Provide expertise relating to the Desktop platform as a service for other teams.
Are accountable for:
Quality: especially performance, app stability, battery-life
Velocity: ultimately measured by how quickly we can deliver value to customers
Meeting SLAs for the build and CI systems
Satisfaction of other engineers with their ability to contribute to our Desktop app
Responsibilities
As a member of this team you will:
- Write high quality, well architected, modular code which is easy to read and maintain.
- Design, build, and maintain efficient, reusable, and reliable C++ code targeting different platforms (Linux, macOS & Windows).
- Ensure your code and the application as a whole have excellent automated test coverage.
- Ensure your code follows modern development practices.
- Ensure the app has a clean, simple and robust architecture to enable other teams to easily contribute code.
- Ensure our application functions correctly and looks great on a wide range of Windows, Linux and Mac OS versions and hardware.
- Ensure our application behaves well in a broad range of environments, such as when installed alongside other security software, or in problematic networks.
- Ensure your build and test pipelines are fast and stable.
- Provide high quality code reviews for your team and other contributors to the code base.
- Able to identify and communicate problems with technology, investigate potential causes, propose solutions/next steps, and proactively inform the team of changes.
- Lead by example and provide guidance and mentorship to other developers.
- Provide technical insights for the Product Management team.
- Work closely with the Design Team to design and build great UI and a great user experience.
- Undertake spikes, prototyping and R&D work to investigate feasibility and de-risk complex projects.
- Maintain an excellent velocity.
Requirements
- Proven experience using C++ targeting different platforms.
- Experience in Qt and QML.
- Rigorosity with code quality practices and architectural design principles; passion in creating a testable architecture and product.
- Excellent at writing well architected code using design patterns such as MVC, MVVM and MVP.
- Excellent at writing automated test cases, and following TDD practices.
- Experienced writing thread safe code.
- Experienced with agile software development practices such as Scrum or Kanban.
- Experienced at helping other team members be more productive, and to grow.
- Great communication skills, spoken and written.
- Logical mindset and great problem solver.
- Experience writing technical designs and threat models.
Optional
- Experienced building extensible applications
- Knowledge of VPN technological intricacies.
- Knowledge of Ruby / Python / Bash / Powershell
- Solid understanding of IP networking, including both low-level sockets programming and high-level application layer programming.
- Experience with BDD.
- Knowledge of network and software security
#LI-PS1
Before you apply
- At the moment, we do not sponsor visas in the EU. For Hong Kong, we require at least two years of working experience and a university degree in a related field. For Singapore and the UK, we can only sponsor visas for mid-career or above.
- Please upload your resume as a PDF and do not include any salary or compensation information in it.
ExpressVPN is one of the world’s leading providers of online privacy and security services for consumers. Started in 2009, we’ve grown to have millions of active paying customers, a team of more than 700 people worldwide, and a brand recognized by hundreds of millions of people in 18 languages and more than a hundred countries. We see huge growth in our industry, and are gaining market share through strong execution.