Garden's mission is to keep developers productive and happy in the cloud-native era.
Docker, Kubernetes and other cloud-native technologies have made us better than ever at operating our systems in production, but the day-to-day development experience has been left lagging behind.
Developers spend less time in flow, and more time waiting for builds, debugging scripts, or otherwise fighting their tools. We're here to fix that.
Our platform—which includes our open source core product—allows developers to work on distributed systems with remote, production-like dev environments, while enjoying the same fast and frictionless feedback loops we've come to expect when developing a single service locally.
It's a platform that democratises the kind of advanced developer tooling that only the largest software companies have the resources to build and maintain.
We're still a small team and you'd be joining at a time where you can have a huge impact on our product and our culture. If you've ever thought to yourself that something's not right with our modern development workflows, now's your chance to help fix it!
What you'll do
Our core product is a CLI tool that our users run in their terminal. We also recently released Garden Cloud, a web application that complements our open core product and enriches the experience.
As a Senior UI Engineer, you'll be responsible for designing and implementing user interfaces for the cloud product that take Garden to the next level, delivering an experience that's simply not possible through the terminal. Think log streams, network traces, test results, and other information that's delivered in real time to developers working on distributed systems. We're a small team and you can have a huge impact on the look, feel, and function of our products—products that you'll be using yourself every day on the job.
- You’ll work with the entire team in planning and speccing out the various components of Garden Cloud.
- You'll put a lot of thought into designing the look and feel of individual features—and the product as a whole—with the goal of making complex information feel simple and intuitive.
- You'll work alongside frontend and full-stack engineers in implementing the features, using Typescript and React, and real time-streaming protocols such as websockets.
- You'll lend your expertise to other projects such as our website and (eventually) custom documentation site.
Who we're looking for
Our products are first and foremost geared towards improving the productivity of developers working with complex systems. And developers are a tough crowd. That's why we're looking for someone that has experience with working on these kinds of systems and understands the frustration that friction and poor developer experience brings about.
- You have 5+ years of experience as a frontend engineer with a strong background in designing complex user interfaces. Bonus points for having worked on developer tooling before.
- You have considerable experience with Typescript and modern React codebases. (We use React hooks, React Query, do CSS-in-JS with Emotion, among other things.)
- You appreciate elegant and minimalistic designs, even more so when they're geared towards complex use cases.
- You're passionate about developer tooling and productivity.
- You're happy to work with a team that is still figuring a lot of things out, and values trust, openness, and collaboration while doing so.
We're a small team that tries to keep things simple and lean—and that applies to our interview process as well.
The first step is a 45-minute intro call. The goal is to give both parties a chance to get to know one another and ask questions and discuss the role and culture at Garden. This is also where we discuss salary band and availability.
The next step is a 60-minute technical interview with two of our engineers. There are no string reversal algorithms though. Instead, we anchor the conversation in things you've actually done in the past and dig deep into those.
The final step is a 60-minute presentation where you present work you've done to the engineering team. Depending on the role, this may be something you've done in the past or an assignment we design. We want everyone involved in the process so this is a chance for you to meet the rest of the team and vice versa.