Windmill

Open-source platform to turn scripts into internal apps & workflows

Founding Rust Software Engineer

$60k - $120k / 0.40% - 1.00%
Location
Paris, France / Remote
Job Type
Full-time
Experience
1+ years
Connect directly with founders of the best YC-funded startups.
Apply to role ›
Ruben Fiszel
Ruben Fiszel
Founder

About the role

Windmill is the sweet-spot between Retool and Temporal, it is fully open-source and has a hub for sharing scripts and flows

We are a small but mighty team and compete with well-funded proprietary alternatives such as Airplane, Pipedream, Superblocks or even Retool. As such, we need to make fast-paced, iterative and sustainable software design choices. Windmill is an enterprise platform that integrate all components to build your entire backoffice on top of it (one can see it as the complementary to Supabase for everything that is not external user facing), a flow builder (with an open spec for flows) based on composing minimal and reusable scripts, and an highly available distributed systems with workers to run jobs and flows. It is built with Rust, Postgres, sandboxing (nsjail) and Svelte for the frontend. You will work independently but in an highly collaborative setting as an engineer to make Windmill a delightful, scalable and performant product.

The full architecture is available in our docs but the gist of it as follows:

  • PG database that store the resources, scripts, flows, users, etc
  • PG database also store the job queue, later we will provide adapters to kafka/redis/nats
  • We have an "api server" in Rust (sqlx + axum)
  • And workers that are HA/horizontally scalable that pick jobs from the queue, execute them (those tasks are Go/Python/Typescript being executed in an nsjail sandbox fork and then stream+store the result back on PG)

We have defined an open-source spec around flows called OpenFlow which is approximately a sequence of modules (where most modules are plain scripts inlined or from your hub/workspace or can contain flow themselves and do things such as for-loops). The state of the flow is stored in the database and modules are executed one-by-one by the first available worker. When a worker is done with a job, it updates the state of the flow and push the next job. As such, it is a distributed FSM.

About the interview

  1. Intro call with Founder, to do a quick eval if there is a mutual fit, we also talk about logistics there (remote, location, visas, etc) (30 min)
  2. Intro call with the team: This is a team game, everyone must feel comfortable working with you (and mutually) (30 min)
  3. You get familiar with the Windmill codebase and architecture available on the Github repo, you ping us once ready
  4. You tell us about ideas and features you would be excited to work on and we discuss how you would implement it from high-level to low-level details (2h)

Why you should join Windmill

Windmill is an open-source developer platform and runtime to turn scripts into workflows & internal tools. It is the sweet-spot between Retool and Temporal, and an open-source alternative to Superblocks, Airplane and Pipedream.

Scripts in Python or Typescripts have their parameters analyzed and turned automatically into standalone apps and no-code modules. In flows, scripts can be sequenced into powerful workflows. It is similar to no-code tools except that each module is a script underneath and scripts can be shared on the WindmillHub for everyone to reuse in their flows. Windmill is an all-in-one queue/worker runtime, script editor, flow builder, secret management platform, OAuth platform credentials in a platform fit for enterprise with groups, granular permission and audit logs.

In addition the platform provides automatic generation of the UI by reading the scripts' parameters, cron scheduling, separation of credentials and logic, versioning, importing scripts from Github and more.

There are two modes of triggering for flows and scripts:

  • With a cron schedule (parametrizable from the platform)
  • Being triggered by a webhook (specific to each script/flow) or from the automatically generated UI

The main insight is that available no-code tools today are intuitive for non-technical users but lacks the extensibility that code provide. On the other hand, writing code is only 10% of the work. You then have to deal with credentials, separatig sensitive values, deploy your script through CI/CD, handle permissions, build a UI, handle errors and so on.

Windmill is easy to deploy, works out of the box and replaces all of an org's infra.

Windmill
Founded:2022
Team Size:3
Location:Paris, France
Founders
Ruben Fiszel
Ruben Fiszel
Founder