Inngest is solving long standing developer problems in a novel way which means we're creating first-of-its-kind solutions. We're building tools that developers use every day in their own products.
The Execution layer is the core of Inngest and the primary way in which users interact with the platform. As a software engineer on the Execution team, you'll 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.
You'll 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.
Architect and implement solutions in our execution layer and our core systems (eg. step APIs, orchestration, etc.).
Plan and implement improvements on throughput and latency at hundreds of thousands to millions of requests per second.
Contribute to systems architecture and infrastructure changes as we grow.
Work in Golang, Typescript, Python, and/or other languages to help build and shape our SDKs.
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.
3+ years working on distributed systems.
Experience with Go (Golang) in production.
You've architected or been involved in designing systems that can handle massive-scale.
Deep knowledge of Typescript, Python or other typed languages.
You've used Redis and ClickHouse.
Good understanding of gRPC and Protocol Buffers (protobuf).
Experience contributing and managing open source, user-facing code.
Backend: Go, Postgres, FoundationDB, Redis, 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, Discord (Community), Slack, Notion
Here's what our hiring process for this role is like:
Application . Please note: While we have several engineering roles open at times, we recommend applying to only one role. If during our review or interviews we think you'd be great for a different position, we'll re-route your application internally.
Screen Interview . An introductory call to share what it's like to work at Inngest and make sure our expectations are aligned.
Technical Positioning Interview . Chat to one of our engineers to understand how your technical skills could fit into our team.
Technical Interview . A deeper interview with a couple of our engineers, focused on your past experience and problem-solving approach.
Product/Collaboration Interview . A chance to meet more of the team (including a founder) to talk about product mindset, and how we'd collaborate day-to-day.