Top 5 questions Data Engineers should ask before joining a startup

Advice from a startup founder in the data space on how to find a startup that works for you

Jeff Chou
Towards Data Science

--

Photo by Leeloo Thefirst from Pexels.com

So you want to join a startup huh? I’m not talking about a fancy Series E startup that’s about to go IPO funded by a16z. I’m talking about a real startup, from seed to series B — where every day can feel like you’re either about to soar or crash and burn — and there’s little in between.

Where nothing is certain and the core business is still being “figured out” Where they are still trying to find the elusive “product market fit.” Where your equity could either quadruple or go to zero in an instant. Where “move fast and break things” is the mentality on a slow day.

Sounds like fun.

As a founder of a VC funded startup in the data / technology space, I’ve seen a lot of things and have spoken to a lot of other founders. I have also interviewed countless candidates over the years and wanted to bestow some advice for people who want to interview at an exciting startup.

For data engineers in particular, navigating this space is particularly challenging because the business in a startup can shift quickly— and ultimately that means you need to be comfortable with change and pace.

What’s the difference between a “big company” and a startup anyway?

A lot of readers are probably familiar with working at a “big company” as a data engineer. A startup is an entirely different experience, of which I’ll try to highlight below:

  • Significantly less “siloing” — Big companies typically group people into divisions, and then sub-divisions each with their own sub-managers. By the time you look around, you’ll find yourself in a group in charge of a very narrow scope of tasks without much room to expand. Early stage startups don’t have this issue. You’re lucky if there’s a manager at all, in reality it’s just you and the CEO. You’re going to be exposed to everything from the front end, back end, business, product, customers, and even investors.
  • Zero support — Very large enterprises usually have multiple teams that are responsible for different parts of the data stack. From infrastructure to security to different parts of the pipeline. All of these people can be used to help you with your particular body of work. In a startup, it’s all you. You have to figure out everything, from provisioning infrastructure to figuring out security.
  • Blurry business goals — Large companies are (usually) great at scoping out work so your tasks are quite clear. Usually your work is just a cog in a giant system, so there’s usually clear input and outputs to your work. In a startup, your goal this week can be totally different next week.
    Why? Maybe a new customer came in and wants something different, or maybe the market is changing. Or maybe the product isn’t picking up traction and you need to pivot. Overall, things change and you need to be comfortable with moving targets.
  • Insane pace and change — One huge difference is pace. The most precious resource a startup has is time, especially if it’s VC funded. Every day wasted, is just another step closer to running out of money and closing up shop. Large companies have a lot more financial cushion and typically operate slowly due to bureaucracy and the need to “get alignment” from multiple leaders. One of the consequences for a startup is you need to build and ship fast — tech debt is a privilege. You’re not building for robustness in the beginning, you’re building to ship and get customer feedback ASAP. You can go back and make it better later.
  • Incredible impact- One of the largest benefits to joining a startup is the impact. Due to all of the reasons above, you’ll be building the foundation of the core company product. Literally building it from nothing. Code you write could become legacy code for decades to come. You’ll rarely get that at a large company, where you’ll mostly provide incremental improvements to an existing large machine.

Hopefully the reader has some more context about what it’s like to work at a startup. With the basic differences between startups and large companies out of the way, I wanted to create a list of questions that was specific for a Data Engineer — versus general questions that anyone should ask (e.g. how much runway do you have?). If you want advice on general startup interview questions, let me Google that for you.

The list of questions

So, without further ado, here’s a list of questions for Data Engineers who want to join a startup:

  1. How important are your data pipelines for the business?
    You want to understand how critical the data pipelines are for the business. Are they in the critical path for the business’s customers (e.g. a financial transaction)? Or are they more a support function for background tasks (e.g. financial reporting). Or are they more part of an R&D effort for a possible future expansion.

    The closer the pipeline is to the critical path to the product, the more important and secure this position will be. Of course there’s nothing wrong with working on side efforts, but there’s an increase risk of project churn or layoffs if things get rough.
  2. Do you need to build, maintain, or improve your current pipelines?
    This question helps to understand the maturity of their data pipelines today. If they want you to build something from scratch, well obviously they are a very young company with zero maturity for their pipelines and culture. This could be a good or bad thing, as they probably don’t have any existing best practices and you’ll have to figure everything out. If it’s to improve their pipelines, then you know they have an urgent problem and pipelines are a high priority — which will probably lead to fulfilling (although busy) work.
  3. How did you arrive at your current data stack?
    You want to understand how the existing leadership arrived at their current data stack. This will help inform you of how they think, what their priorities are, and how they think about data. This is very important to help align how they think with how you think. If they just picked random tools and slapped them together without much thought, that could be a red flag for you if you’re more the diligent type.
  4. Do you need to build for speed or scale?
    If the answer is speed, then that means they just want to ship product ASAP and robustness / quality is not a high priority. Literally the phrase “move fast and break things” applies here very well. They just need product to fly. If it’s for scale, then they will need something robust and will probably be OK if it takes some time. This should again be used to see if what they need aligns with how you like to build.
  5. Who’s on the data team now?
    The answer to this may be brief- “maybe you.” Otherwise you want to learn how big the team is, how big it is relative to the rest of the company and how they are organized. This is also another measurement of “data maturity” to help you get an idea of where they are in the growth process. People are typically the most expensive item for startups, so the amount of people on a team can really indicate to you how important the group is to the company.

Hopefully this post gives you some insight into the pros and cons of joining an early stage startup. At a high level, you should be interviewing them as well to see if their priorities, culture, and needs are a match for how you like to work. If it all looks good (and they have a healthy runway), I’d say go for it! You’ll never learn as much nor as fast as you would at a healthy startup.

--

--

Jeff Chou PhD., is the CEO and co-founder of Sync Computing, a company aimed at helping people scale Databricks intelligently. https://www.synccomputing.com