DocsDocsSlackSlackResources ExamplesSee what's possible with Cube.jsExamples See what's possible with Cube.jsBlogLearn more about Cube.jsBlog Learn more about Cube.jsCommunitySee how to contribute to Cube.jsCommunity See how to contribute to Cube.jsGitHubFile an issue or contribute the codeGitHub File an issue or contribute the codeCube CloudCube Cloud careers /careers /Senior Software Engineer, Database EngineeringatCube.jsType of workFull-timelocationSan Francisco, USA or RemoteAt Cube.js 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.js 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.
We are focused on bottom-up adoption, and most of our software is open-source. At Cube.js you will be part of a vibrant community. Cube.js users often engage with the company on GitHub and Slack.
Thousands of developers are using Cube.js to build analytics applications and we want to help them be successful. That's why we're looking for a Senior Developer Advocate to join our Developer Relations and Community team.
As an engineer of the Cube.js Core team, your main goal will be to build and maintain various parts of open-source Cube.js Core (https://github.com/cube-js/cube.js), community support in our Slack, as well as development of Cube Cloud product.
Some of the things you'll be working on
SQL generation and rewriting. Cube.js is a simple yet powerful way to organize SQL queries. The Cube.js way is to generate the best possible SQL query for a given database while abstracting all complex stuff from users and giving them full power of SQL at the same time. To solve this problem, Cube.js parses SQL queries written by users to understand the structure and rewrites them to apply performance optimizations.
Rollup DB. Cube.js is used to serve analytics for trillions of data points with sub-second response times. To keep up-to-date with growing big data demands and serving speeds we’re developing our own database optimized for serving huge aggregated tables with latencies of several milliseconds.
Cube.js APM. One of the main tech problems for Cube Cloud is to provide APM analytics of Cube.js instances using Cube.js itself. Being purely a dog food problem, large-scale real-time analytics has a lot of challenges, most of which will be solved for the first time ever using the SQL approach.
Expert in database algorithms and data structures: columnar vs row storage, SQL parsing, query planning, indexes, partitioning, join algorithms, filter pushdown optimizations, HLL.
Expert in C++, Rust, or any other low-level language.
Good communication skills.
Previous startup experience or interest in working in a small fast-moving company.
Expert in at least one of the high-level VM languages such as Node.js, Ruby, Python, Java, Scala, C#, or similar.
Experience with contributing to or the maintenance of an open-source project.
Experience in data engineering, building analytics applications, or OLAP.
Experience with Docker and k8s, AWS, GCP.
Apply for this positionFull nameThis field is requiredEmailThis field is requiredA valid email address is requiredResume/CVThis field is requiredCover letter (optional)LinkedIn Profile (optional)Submit
Sign up for Cube.js Releases and UpdatesAwesome product updates; no spam. SubscribeEmail is not validBuilt with ♥️ in San Francisco2020 © Cube Dev, Inc.
ResourcesGetting StartedGetting StartedDocumentationDocumentationExamplesExamplesBlogBlog
Community Slack Twitter Github