The Execution layer is the core of Inngest and the primary way in which users interact with the platform. It’s the SDKs that they write code with, the orchestration engine those SDKs power, and the data produced. It’s extremely fun, rewarding, and technical work that provides interesting challenges and deep gratification
About us: Inngest is solving long standing developer problems in a novel way which means we’re creating first-of-it’s-kind solutions. We’re building tools that developers use every day in their own products, so efforts to improve UX and performance are primary.
Importantly, you’ll need a strong product mindset and an interest in developer tools. This role has the opportunity to be polyglot, working on a Go backend and SDKs in many languages.
The role
Execution Engineers curate the developer experience for every person using Inngest, and so must have a strong intuition for clean, idiomatic API design. DX is critical to Inngest, and achieving the ideal abstraction is key.
Alongside the SDKs, you’ll also work on the underlying execution engine and APIs that make orchestration, step functions, and events work, providing the building blocks for every developer to access durable, reliable code from anywhere in their stack.
You’ll work with the systems team who build the underlying infrastructure that the executor sits on top of, and the console team, who build the core local and cloud product that gives visibility into how our functions execute.
Your work will directly impact millions of developers, and you’ll collaborate with our designers, engineers, and founders to build the best experience possible.
This role requires working time overlap with US PST. Ideally, you’d live in the SF Bay Area, but for strong candidates you may live anywhere in the United States. Our systems engineering team is in San Francisco and works in person several days a week.
What you’ll do
-
Architect and implement solutions in our execution layer, our SDKs, and our core systems (eg. step APIs, orchestration, etc.)
-
Work in Golang, Typescript, Python, and/or other languages to help build and shape our SDKs
-
Plan and implement Inngest’s execution logic at hundreds of thousands to millions of requests per second
-
Contribute to systems architecture and infrastructure changes as we grow
-
Collaborate with team members to track metrics and data across function runs, events, traces, and telemetry
-
Work with backend engineers to design APIs that can be used across the Inngest cloud dashboard, dev server and CLIs
-
Dogfood the Inngest product and develop ideas for improvements, features, or integrations
-
Communicate with our users through Github, email and Discord
-
Write technical specs for features and documentation for our users
Ideal candidate
-
You have a love of developer tools and empowering other developers to succeed
-
You appreciate simplicity and have worked to create succinct abstractions for other developers, even if it’s harder to design and build
-
You’ve been working on distributed systems for several years
-
You’ve used Go or similar statically typed languages professionally for two years or more
-
You’ve architected, or been involved in designing, systems that handle scale
-
You understand engineering trade-offs and can make correct judgement calls on approaches available
-
You understand how to observe, monitor, and maintain the systems you design
Bonus points
-
Experience managing open source, user-facing code and responsibly managing the lifecycles of those projects
-
Deep technical knowledge of one or many languages, such that you can create abstractions that do incredible things for users
-
Experience working distributed, event-driven systems, and thinking about determinism within those systems
What your first 90 days will look like
-
First week: you’ll learn how we work as a team and our approach to growth. You’ll also start to learn our system architecture and hopefully make a couple of small contributions to an SDK or part of the Execution engine
-
By day 30, you’ll be proficient with our weekly cadence of work and have contributed a new feature to our Executor, an SDK, or some other component. You’ll fully understand our company, product, and growth strategy and start to build up context for your product mindset.
-
By day 90, you’ll have shipped significant changes to our open source projects and cloud platform. You also helped define the specs. You’ll have learned where you can contribute outside of the engineering domain (growth, UX design, DevRel, etc.) and contributed ideas around product and growth. We’re all aligned and mutually excited about how we work together now and in the future!
What we build with
-
Backend: Go, Postgres, FoundationDB, Valkey, Clickhouse, PubSub/Kafka, k8s
-
APIs: gRPC internally, GraphQL and REST APIs for UI
-
SDKs: TypeScript, Go, Python, Kotlin, more to come
-
Hosted on AWS, GCP and Bare Metal
-
Github, Linear, Slack, Notion, Figma