Home > Find Jobs

Job Search

A tropical beach
Ocient company logo

Ocient

USA, UK, Canada, Germany, India

Posted on: 14 February 2024

Experience

n/a

Work

n/a

Employee Type

n/a

Salary Range

n/a

Software Engineer in Test

Location: Remote (US, Canada, Germany, UK, India)

Hiring Manager: Query Processing Team Lead, Darius Russell Kish (Please don’t contact me directly. I’ll read your application, don’t worry!)

Estimated salary range: $130,000 to $150,000

  • The salary offered for this position will be based on a candidate’s experience and skill demonstrated during interviews and other evaluations

About Ocient

Ocient is a hyperscale data solutions company headquartered in Chicago, IL, enabling organizations to analyze trillions to quadrillions of data records in seconds. Over the past five years, Ocient has built a SQL compliant data warehouse for Petabyte and beyond datasets that is 10x to 50x times faster than competitive OLAP databases.

About the team

The Query Processing team at Ocient handles the full landscape of parsing, validating, optimizing and executing SQL queries - covering both deeply theoretical and practical topics in the Database implementation field. The team ensures queries are correct and valid, the SQL is lowered into an optimal, executable representation, and the resulting plan is efficiently executed over petabytes of data across tens to hundreds of nodes. The team values theoretical topics in Programming Languages, Relational Algebra and Distributed Algorithms – while also caring about performant implementations of SQL optimizers and execution engines. Query Processing works closely with our Test Infrastructure, Quality Assurance and Customer Operations teams to evaluate and improve performance on existing and new customer workloads, while also implementing new functionality to enable customer success.

Understanding performance in distributed SQL databases can be extremely challenging. The landscapes of data volume, distribution, query shapes and optimization decisions all confluence to affect the observed runtime of queries in a database. While customers may only care about walltime for their queries regardless of their use-case, addressing performance ab initio requires an understanding of how these factors have come together for the customer’s use-case. Ensuring Ocient will be performant for new, unseen workloads and evaluating performance in testing environments has proven a challenge for Ocient. We are seeking a software engineer with strong interests in test infrastructure and performance analysis, specifically as they relate to the world of distributed databases.

We’re looking for someone who is

  • Passionate about testing and measuring performance in large scale distributed systems

  • and/or: interested in data and workload generation, and understanding how they target and stress components of the database

  • and/or: interested developing infrastructure to measure key performance metrics in a database to understand and identify bottlenecks

  • A lifelong learner who is interesting in becoming both an expert in SQL database workloads and also how they play against implementations

  • Collaborative and communicative

  • Works independently to see their vision through

Responsibilities

  • Work closely with peers to develop performance test infrastructure for Query Processing components

  • Be a mentor and example to junior engineers on the team, help to grow them as developers in the realm of testing

  • Provide feedback on processes within the organization to eliminate developer pain points

  • Collaborate strongly with QA and our Tools team to implement tests onto nightly CI, QA infrastructure, and improve existing test infrastructure

Qualifications

  • Bachelor's degree in Computer Science or equivalent

  • Relevant work experience designing and developing test infrastructure

  • Direct experience with testing performance of data warehouses and data analytics engines

  • 1+ years work experience as a Software Engineer working in Python or similar test infrastructure language, and experience measuring performance in compiled languages

  • Experience developing on Linux and in large, version controlled projects

How we measure success

  • By the end of your first month you’ll have begun to develop an understanding of Ocient’s architecture and our current testing methodology, as well as collaborate with the Tools team and Hiring Manager to understand the current vision for performance testing at Ocient

  • Within three months you’ll have begun work alongside the Tools and QA teams to implement new automated testing and report generation. You will use the knowledge you gained from small-scale performance projects to start designing generalized solutions to performance measurement - e.g., data and workload generators, scale and portability of tests, measurement and understanding of performance over time.

  • By the end of your first year you will have built a strong understanding of performance in a distributed OLAP database. You will be a technical leader within the organization regarding performance testing methodology and will continue to develop a repertoire of infrastructure and tests targeting performance within Ocient.

Interview Process

  1. We’ll take a look at your resume and cover letter

  2. Recruiter Screen – a quick call with our recruiter, Rebekah, to discuss the position

  3. Hiring Manager Chat

    1. You’ll have a short chat with Darius about your background, interest in the role, and evaluate team fit

  4. Coding Interview 1 with a member of the QP team

  5. Test Design Interview with a member of the QP or Test Infrastructure team

  6. System Design Interview with a member of the QP team or architectural staff

  7. Hiring Manager Recap

    1. You’ll either meet again with Darius, or a staff member of the Test Infrastructure team to dive deeper into fit and interests

  8. Offer extension

Ocient provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type and makes all hiring decisions without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.

 
 

Tags

python
Apply to job