./backfill.dev --hello-world

July 23, 2022

We’re launching the private beta of Backfill to users 🎉

Backfill is a service that allows engineers to better manage, and execute internal engineering scripts on their production systems.

Background

We’ve spent the last decade working in engineering for various SaaS companies, one of the common themes we’ve observed was how little resource was given to developing internal tooling.

In every tech company we’ve worked for, there was typically a folder (or git repo) full of one-off, or reusable scripts that were used to perform engineering tasks - from fixing up user data due to a bug, backfilling data for a migration, running ad-hoc analysis of data, or running a report. The list goes on.

Typically to run these scripts, an engineer would need to have access to the production system, and then they would execute the script via the terminal.

Although this works, there are a couple of problems with this workflow:

  • Lack of security - To run a script, an engineer would need access to credentials for the production environment, or access to a host which has credentials.
  • Tracking who ran what - There’s no centralised way of tracking what script was run, and by who
  • Only engineers allowed - Typically only engineers will be able to run these scripts as they’re not designed to be operated by people outside of the engineering function.
  • Waiting for long running scripts - Once a script has been started, the engineer will have to keep the terminal open until it’s finished, this becomes tedious when the script needs to run for a couple of hours.

Companies usually put off addressing these pain points because it’s not a core part of the actual product they are shipping. This means internal tooling always remains at the bottom of the development roadmap.

Building out more robust internal tooling isn’t straightforward, it requires significant engineering time and resource - which companies aren’t willing to commit.

How backfill solves these problem

We think Backfill solves a lot of the problems with internal tooling. Backfill isn’t a no-code, or low-code solution, you still need engineers to write your scripts.

What Backfill does is to take care of the tooling around how you manage, run, and execute your existing scripts, without you having to make major changes to the way your existing scripts work.

The benefits of Backfill:

  • Control who can run scripts on production - You can choose who is able to create, run, and view scripts. The entire engineering team can have access to all scripts, or specific teams can have access to scripts that perform more sensitive operations.
  • Approval requests - You can turn on approval requests for your production environment, so that anyone who wants to run a script must get permission from another engineer, or an engineer from a specific team
  • Friendly interfaces for non-engineers - You can use our UI builder to quickly create a frontend for scripts, so that people in marketing, operations, or other non-technical teams can have access to scripts in a safe, and friendly way.
  • Better manage long running tasks, and get notifications - When a long running task is executed, we keep all output it produces, and you can setup a notification to inform you when it finishes.

To get started, get on our waitlist