Sr. Software Engineer, Backend Storage Team (Canada - Remote)

Treasure Data, Vancouver, Canada, REMOTE

See jobs at Treasure Data

Duration: Full-Time

Treasure Data builds a Programmable Platform to efficiently enable and scale Customer-centric Data Platform applications across a range of verticals from automotive, to CPG, and even finance.
The Backend team and Core Services group build and manage our primary control plane, orchestration systems, computation layer (Trino, Hive), streaming ingestion, and data lake.

We are looking for engineers with a growth mindset who want to work both inside each of these areas, but also across them to deliver the best experience possible for our customers.
Senior Software Engineers in the Backend Storage team help drive our programmable platform with iterative and rapid delivery of features and improvements to the core data layer. To give the team control over their operational load, they own and are accountable for maintenance and operation of their systems toward industry-leading levels of reliability, scalability and maintainability. This requires working across both product and engineering teams on complex problems where solutions require in-depth analysis and evaluation of multiple competing factors, identifying the best trade-offs for successful delivery.

Success in this role requires a passion for developing and maintaining a data lake layer that’s easy to use and offers industry leading performance. You do this by collaborating with others to achieve our shared goals together in a self-organized team - pursuing autonomy with ownership, while increasing trust and sustainability to evolve continuously together. You are able to effectively communicate ideas, software system designs, implementations and decisions in a clear and concise manner to make others understandable.

Your duties will include:

  • Writing high quality, testable code for our storage systems/services, and assisting with production operations as part of our full team on-call rotation.* Pairing with other engineers to help overcome challenges.
  • Work with Product and other engineering teams to focus the team on high customer value projects.
  • Leading and participating in the system design activities, bringing an experienced perspective to discussions to make the right tradeoffs.
  • Work with technical leads and other engineers directly to break down the roadmap and product requirements for delivery.* Help surface challenges and areas for improvement, assisting in driving our product roadmap.

Your background should include:

  • A minimum of 5 years relevant working experience, operating systems in production.
  • Strong Software Engineering experience, with an ability to work in multiple programming languages (we use JVM languages including Kotlin and Java, as well as Ruby.)
  • Experience with Distributed Systems and operating them as they scale.
  • Experience with RDBMS (Relational Database Management System) and operating them with deep understanding of underlying concepts.
  • Experience operating services running in the cloud (AWS primarily) or virtualized API-driven platforms.
  • Articulate and personable with strong spoken and written English language abilities.
  • Demonstrate the ability to work independently and collaboratively as part of a specialized team.
  • Ability to slow down and communicate clearly and effectively across language barriers.

We would be thrilled if you:

  • Are a student of complex systems theory and how to build resilient and adaptive systems and teams.
  • Have experience working in highly distributed teams, across large time zone differences.
  • Have a deep understanding of the common failure modes in distributed systems.
  • Have read and enjoyed books like "Designing Data-Intensive Application", "A Philosophy of Software Design", "Systems Performance", "Accelerate", "Release It!",  and "Nonviolent Communication".
More about Treasure Data and Core Services

We design, build, and operate a distributed and dynamically programmable orchestration system that controls everything from SQL queries against our multi-tenant data lake to customer-specified code (Python and more) in serverless environments. Fronted by Ruby on Rails APIs, backed by priority queues and process supervisors, this layer is responsible for managing all customer data operations.
To power these operations, we self-host and operate distributed SQL engines (Trino, Hive) similarly in a multitenant environment to process both customer- and machine-generated queries. We self-host these engines in order to uniquely and deeply integrate data governance features for everything from basic access control through sophisticated PII and GDPR requirements.
The data lake at the foundation of all of this is built with first-class governance facilities, and adaptively schedules and performs continuous optimization of all data in its care. It is fed by streaming and microbatch ingestion layers (100k+/sec event counts), that also provide in-stream custom processing specified in a sandboxed environment. Constructed from a dynamically-typed (schema-on-read) block store, we have unique indexing and optimization challenges to solve.

Who we are: 
Treasure Data employees are enthusiastic, data-driven and customer-obsessed. Our actions reflect our values of honesty, reliability, openness and humility. Treasure Data moved to remote-based work in March 2020 and is committed to ensuring it remains agile to accommodate shifting preferences of its workforce. While we are not working shoulder-to-shoulder, we still work side-by-side, finding unique ways to connect and create together while also respecting each other’s life priorities outside of work. We offer competitive salary and benefits and named one of the 2021 Best Places to Work. Treasure Data is an equal opportunity employer dedicated to building an inclusive and diverse workforce. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

What we do: 
Treasure Data is the only enterprise Customer Data Platform (CDP) that harmonizes an organization’s data, insights, and engagement technology stacks to drive relevant, real-time customer experiences throughout the entire customer journey. Treasure Data helps brands give millions of customers and prospects the feeling that each is the one and only. With its ability to create true, unified views of each individual, Treasure Data CDP is central for enterprises who want to know who is ready to buy, plus when and how to drive them to convert. Flexible, tech-agnostic and infinitely scalable, Treasure Data provides fast time to value even in the most complex environments.

Agencies and Recruiters: We cannot consider your candidate(s) without a contract in place. Any resumes received without having an active agreement will be considered gratis referrals to us. Thank you for your understanding and cooperation!

About Treasure Data

Treasure Data’s mission is to bring all customer data together for a single, actionable view of the customer. We’re here to help harness and analyze the information needed to create a data-driven enterprise. Our enterprise Customer Data Platform (CDP) helps you harness and analyze the information you need to create a data-driven enterprise. We bring all your customer data together for a single, actionable view of your customer. Only Treasure Data can handle the scale, security, and complexity required by a global enterprise in a way that empowers business decision-makers to deliver a superior customer experience and creates a unique competitive advantage. We empower you to better know your customers, engage in meaningful ways along the entire customer journey, measure your success and grow your business. Founded in 2011 in Mountain View, California, with offices in Japan and Korea, Treasure Data is backed by Sierra Ventures, Scale Venture Partners, IT-Farm, SBI, INCJ, Bill Tai, and Jerry Yang’s AME Cloud Ventures, among others.

Treasure Data

Want to learn more about Treasure Data? Visit Treasure Data's website.