Windmill is the sweet-spot between Retool and Temporal, it is fully open-source and has a community hub to share scripts/flows/UIs. It is implemented in Rust and Svelte. It allows to turn scripts in Python/Typescript/Go/Bash into shareable apps whose frontend is automatically generated, and dependencies inferred from the imports. Those scripts are at the same time usable as modules that can compose into powerful workflows. Last but not least, we also have an extensive UI builder to make advanced dashboards and admin panels.
Windmill is both easily deployable at small and high scale. The same binary is deployed at all scale but with different deployment options (k8s, docker-compose) and we must ensure high availability in the software and the infrastructure choices that we make and in the SLA that we offers. As a SRE/Platform Engineer, you will ensure that we make the right choices in terms of observability, incident responses, software design, high-availability and infrastructure. windmill.dev's current architecture design is stateless replicated API servers in Rust backed by Postgres instances. Workers (which are specialized by using a flag on the Windmill binary) are pulling jobs from the queue and interacting with the api only. The queue is in Postgres itself but we might move it to redis later.
We offer dedicated instances under the form of separate namespaces in k8s or dedicated cluster in EKS. One of the key challenges will be to improve the observability stack so that supporting this fleet require very little manual work.
Our current stack is:
- AWS: EKS (k8s) + Postgres (RDS)
- Prometheus + loki + promtail for the observability stack. The binary emits logs in JSON that are then parsed by loki.
- Helm + Terraform for IaaS (thinking of migrating to pulumi)
- We use windmill itself to run benchmarks and manual deployment
The team is fully remote, we are a high-ownership, highly motivated team
You can deploy the app locally using: https://github.com/windmill-labs/windmill#how-to-self-host or play with it at https://app.windmill.dev
The ideal profile is keen to do a bit software engineering the backend side (using Rust), maintain our IaaS to the state-of-the-art and take ownership of our whole infrastructure.