Staff & Principal Engineer

Toronto or Remote (Canada) /
R&D Teams – Engineering /
Permanent Full Time
Wealthsimple is on a mission to help everyone achieve financial freedom, no matter who they are or how much they have. Using smart technology, Wealthsimple takes financial services that are often confusing, opaque and expensive and makes them simple, transparent, and low-cost. We're the company behind some of Canada's leading digital financial products, and are growing faster than ever.

We’re a remote-first team and output is more important than face time, so where you choose to work is up to you — as long as you have internet access, you can work from anywhere in Canada. Be a part of our Canadian success story and help shape the financial future of millions — join us! Read our Culture Manual and learn more about how we work.

At Wealthsimple, we are building products for a diverse world and we need a diverse team to do that successfully. We strongly encourage applications from everyone regardless of race, religion, colour, national origin, gender, sexual orientation, age, marital status, or disability status. Wealthsimple provides an accessible candidate experience. If you need any accommodations or adjustments throughout the interview process and beyond, please let us know.

Throughout the interview process, we’ll learn more about your skills and interests to match you with the right team at Wealthsimple 🙌. 

About the role
The role of Staff and Principal Engineer at Wealthsimple share a number of similarities. In particular, both are technical IC roles with impact beyond individual teams. Our Staff Engineers are domain experts that drive the technical direction and impact Product or foundational domain; Principal Engineers are deep subject matter experts that work across all of engineering.  

Scope & impact:

    • Facilitate architecture decisions and build software affecting large parts of the organization.
    • Define best practices and standards that affect multiple teams, and hold teams accountable to these standards.
    • Mentor engineers at all levels and able to approach mentorship at a meta-level (e.g., being able to help shape our approach to mentoring).
    • Improve developer productivity and quality at the level of an engineering “org” (e.g., Trade) or a particular technology (e.g., Rails).
    • Work with other staff engineers to curate and evolve our company-wide technology and tools.

We’re looking for someone who:

    • Is able to clearly and effectively communicate, internally and externally, the organization’s vision and strategy and explain technical decisions, even serving as a translator between different teams.
    • Has experience building, evolving, and maintaining large scalable systems.
    • Contributes to best practices in leadership and people management, especially when it comes to hiring at the senior level.
    • Is a mentor and who will have a large positive impact on morale and company culture.
    • Is an effective listener, consensus builder and effectively incorporates diverse ideas into a coherent vision.

Projects we're working on 🚀

    • Architecting our next-gen unified mobile app
    • Introducing fractional share support to Trade
    • Scaling Trade's order engine to handle the massive influx of orders
    • Standardizing Kafka and Avro across our codebases
    • Building out our load-testing capabilities
    • Introducing component-based architecture patterns into our codebases
    • Migrating our frontend architecture to TypeScript
    • Developing platform-centric data models
    • Fraud / Risk platforms that leverage machine learning models.
    • GraphQL schema gateways for both internal and external clients.  

Our tech stack:

    • We have a service-oriented architecture with 150+ services
    • These services are a mixture of Ruby on Rails, Java/Kotlin, NodeJS.
    • Our front end user interfaces are written in React and React Native with TypeScript.
    • We run a containerized platform on AWS and highly leverage technologies like Aurora, SQS, SNS, S3, Kafka and GraphQL.