Golden Analytics — Query Challenge
The Challenge This is a challenge for potential query engineers to solve. The context of the challenge is a business intelligence application. This application will need to issue analytical queries (e.g. selection/projection, aggregation,…
Create a free account to upload your work. Your progress saves as a draft until you submit.
What You'll Be Doing
The Challenge
This is a challenge for potential query engineers to solve.
The context of the challenge is a business intelligence application. This application will need to issue analytical queries (e.g. selection/projection, aggregation, filtering, joins, calculations) against a set of tables on a remote database server and return the results. The long-term goal would be to support many different relational databases, with this API serving as the translation layer between the application and those databases.
The goal of the project is to make an API that can express these kinds of queries and execute them across a set of relational database backends, without having to worry about the details of how they are implemented on each backend. You'll demonstrate this by writing a driver application that uses your API to execute queries against both backends, and a testing framework that demonstrates how you'd test your API against these databases, architected to expand to others in the future.
From a language and technology perspective, we would prefer if you demonstrated all of this in Node/TypeScript (this is our current platform), but you can select another platform if you like. You should use the Docker image goldenbeers/golden-query-challenge:1.0 on the project. It contains two databases (MySQL 8 and Postgres 17) pre-loaded with sample data.
We expect you to use AI in completing this challenge. Please keep track of your major prompts and how you guided the AI during the project. We also don't expect you to get everything to polished completion. Expect to spend about 45 minutes on the challenge, and keep track of what you would do if you had extra time to spend on it.
AI will likely get you most of the way there. After you have your basic API in place, pick one way to extend it (an advanced SQL feature, an interesting third database, etc).
Things you should deliver
- One video (~6 minutes). Start with a short intro: tell us who you are, one thing about yourself that isn't on your resume, and what specifically excites you about Golden Analytics. Then walk us through your API and why you designed it this way. One take is fine. We're listening to what you say, not how polished you sound.
- A driver application demonstrating some of the queries below and your one extension
- A test suite for your API using the provided databases
- A README, written by you (not the AI): summarizing the design of your API; describing your major prompts and where you redirected the AI; what you would do if you had more time
Database schema
The sample data is the Northwind database (schema diagram). The link shows a schema diagram with the default relationships between tables.
Sample queries
- The most recent N orders
- The count of customers from a given city, e.g. 'london', or 'mexico d.f.'
- Average number of units per order
- For each employee, the number of shipped vs. unshipped orders
- The total freight / total order price ratio per customer
- The 75th percentile of order price by customer's country
What You'll Accomplish
Design a database-agnostic query API that abstracts backend SQL differences
Execute the same analytical queries against MySQL 8 and Postgres 17 through a single interface
Build a test framework architected to expand to additional database backends
Extend a working API with one advanced feature of your choosing
Direct and redirect AI tooling, and document where your judgment changed the output
How Your Work Will Be Scored
What to Submit
Video Walkthrough
Format: .mp4, .mov, .webm
One video, one take. Start with a short intro: who you are, one thing about yourself that isn't on your resume, and what specifically excites you about Golden Analytics. Then walk us through your API and why you designed it this way.
We're listening to what you say, not how polished you sound. If your file is too large to upload, include a shareable link in your README instead.
Sign in to upload files
Driver Application
Format: no restrictions
Source code for a driver application that uses your API to execute queries against both backends. Demonstrate several of the sample queries from the challenge description, plus the one extension you chose.
Zip your source directory before uploading.
Sign in to upload files
Test Suite
Format: no restrictions
A test framework for your API that runs against the provided MySQL 8 and Postgres 17 databases, architected to expand to other databases in the future.
May be included in the same zip as your driver application. If so, upload the same archive here and say so in your README.
Sign in to upload files
README
Format: .pdf, .doc, .docx, .rtf, .txt, .md
Written by you, not the AI. Cover three things:
- The design of your API and why you made those choices
- Your major prompts and where you redirected the AI
- What you would do if you had more time
Sign in to upload files
Create a free account to upload your work. Your progress saves as a draft until you submit.
On this page