Logo
Cube Dev

Principal Software Engineer SQL API

Cube Dev, New York, New York, United States,


About Cube DevCube is The Semantic Layer platform for data engineers and application developers to make data accessible and consistent across every application.

It helps provide access to data, organize it, and deliver it to every tool so data engineers and developers can build powerful, fast, and consistent data applications.

PositionAt Cube we are building a technology stack for modern analytics. If you are fascinated by the software that powers large technology companies but want the challenges and freedom that come with working in a small startup, then the job at Cube is for you. We are a small and dedicated team in San Francisco, funded by top-tier SV investors, working on making advanced analytics infrastructure developed at large tech companies accessible to all developers around the world.

Cube is used to build analytical APIs over trillion data point datasets in SQL databases (e.g., Postgres, ClickHouse) and data warehouses (e.g., Google BigQuery, AWS Athena, Snowflake). Such APIs serve requests with sub-second latency and high concurrency.

Cube provides SQL API which gives an ability to access Cube from BI tools like Apache Superset, Metabase, Tableau, etc. To achieve that we have implemented a server with the same interface and protocol as the PostgreSQL server has. Under the hood, It uses an advanced rewrite term system powered by EGraphs to plan queries and Apache Data Fusion to execute those.

We're looking forward to further improving SQL API support by providing sophisticated join queries, predicate push down, cost based optimization and post processing capabilities as well as support for more BI platforms and data consuming tools.

That's why we're looking for a Principal Software Engineer to join the Cube team to work on SQL API. You will contribute to Cube and maintain its codebase on GitHub, participate in community support in Slack.

Your qualification

Expert in data structures and algorithms

Base understanding of how databases work

Strong coding skills

Experience in C++, Rust, or any other low-level language

Good communication skills

Fluent English

Previous startup experience or interest in working in a small fast-moving company.

Will be a plus

Experience with Abstract Syntax Trees and parsing

Experience with database query planning process

Experience in data engineering, building analytics applications, or OLAP

Experience with implementing network protocols, analyzing packets

Embedding native code into Node.js or any other language