About Hatchet
Hatchet is a distributed, fault-tolerant task queue designed to solve scaling problems like concurrency, fairness, and rate limiting. Our mission is to provide developers with a simple, powerful, and reliable way to distribute and manage background tasks and workflows, enabling them to focus on building great applications.
As multi-time YC founders and CTOs, we have felt the pains of managing complex background tasks and workflows ourselves. We have a transparent, collaborative, and fast-paced culture with a flat organizational structure.
We’re engineers building for engineers. We work closely with our customers in slack to understand their needs and help them achieve their goals. We’re solving the hard infra and architecture problems that are as rewarding as they are thought provoking. Here’s an example of a problem we’ve recently drilled into: https://docs.hatchet.run/blog/multi-tenant-queues.
About the role
Skills: Go, Kubernetes, PostgreSQLThis is an in-person role: we expect at least 3 days a week in our office in Brooklyn, NYC.
Need to know: Go, Distributed Systems, Kubernetes, Docker, gRPC, PostgreSQL
Nice to know: Typescript, Python, Github Actions, GCP or AWS
We are seeking a Founding Engineer to join our early-stage team as our first hire! As a senior Go application engineer with experience implementing and scaling services that run as background tasks, you will play a critical role in building our platform and driving the technical direction of our company.
This is a hands-on keyboard position that will involve working on all parts of our stack, from the core task orchestration engine to the worker SDKs, and collaborating with other engineers and founders. It's a great opportunity for someone to create a lasting impact not only on the primary product but also on the company's values and vision, given our early stage.
As the first member of our engineering team, you will set the culture of collaborating with our customers. We all share the responsibility of providing frontline support and building relationships with our customers.
Responsibilities:
- Design, implement, and maintain the core components of the Hatchet task queue, ensuring high performance, reliability, and scalability.
- Collaborate with the team to build and improve the worker SDKs in various languages, making it easy for developers to integrate Hatchet into their applications.
- Help define and execute the technical roadmap for our platform, balancing technical debt and innovation to ensure we can deliver on our business goals.
- Contribute to the development of best practices, coding standards, and documentation to maintain a high-quality codebase.
- Mentor, and guide other engineers as the team grows, fostering a culture of excellence and continuous improvement.
- Provide support to customers and improve documentation as needed.
Qualifications:
- BS or MS in Computer Science, Engineering, or a related field.
- 3+ years of experience as a software engineer, preferably a strong focus or interest in Go and distributed systems.
- Deep understanding of concurrency, parallel processing, and asynchronous programming patterns.
- Experience with containerization technologies such as Docker and orchestration platforms like Kubernetes.
- Familiarity with cloud platforms, particularly GCP or AWS, and experience designing and deploying highly available, fault-tolerant systems.
- Knowledge of message queues, pub/sub systems, and event-driven architectures.
- Strong communication skills and ability to collaborate effectively with cross-functional teams and customers.
- Passion for building scalable, reliable, and developer-friendly tools and platforms.
Benefits:
- 150k-210k base compensation, 0.5%-2% equity
- Full benefits package, including premium healthcare coverage for you and unlimited PTO.
- Up to 2 work from home days per week.
- Metrocard allowance