Software Engineer- London
Role details
Job location
Tech stack
Requirements
-
Builder at heart: You have 2+ years of experience as a software engineer (we'll level appropriately based on experience).
-
Problem solver: A track record of sucessfully solving real human problems.
-
High Agency: driven to solve the most important problems even if no one has told you to
-
Iterative Development: experience in shipping MVP solutions, gathering feedback and improving solutions to solve user pain faster.
-
Strong technical skills: adept at JavaScript and React, including performance implications in browsers.
-
Strong communicator: clear, concise and direct.
-
Backend: Golang
-
Frontend: TypeScript / React / Next.js
-
Infrastructure: Terraform, AWS
-
Containerization: Docker
-
Database: PostgreSQL
-
APIs: GraphQL (Hasura, Apollo)
Benefits & conditions
We're hiring across multiple levels.
-
If you're earlier in your career, you'll build and ship core features with guidance.
-
If you're more experienced, you'll take ownership of entire product areas, lead by example, and help shape the future of Flow's engineering culture.
-
How to Build an MVP - Michael Seibel
-
Code-first vs Product-first - Zach Lloyd
-
Simple Made Easy - Rich Hickey (Watch the first 25 mins)
- Speed over everything. If you go over a pothole at 20 mph, you really feel it. If you go over at 200 mph, you barely feel it. Everything we do, we need to do with urgency. This is our superpower and why we win. This is a discipline that requires effort and focus every day.
- Own, Downscope, ship, iterate: We work in small, fast cycles. Our philosophy is to downscope and ship. The goal is to get a v1 out today and learn from seeing it used. We work with users not at them. Execution is the sole currency by which our customers value us. This does not always mean success at the first iteration, but we must be fully committed to delivering.
- Fundamentals done well: Most success comes from mastering the basics. The trade off is always scope, never quality. This is why we prioritize simplicity. Doing so requires extreme clarity of thought: a talent for cutting to the essence of a problem, communicating it well and then solving it.
- Disagree and Commit: To move fast, we have to decide fast. That means debating ideas hard, then committing fully once a decision is made.
- Enjoy the climb: Climbing Everest is hard. The air thins, your body falters, and you pass those who didn't make it. But we're here to keep climbing. This is the work that will define us. Enjoy the climb. The view at the top only means something if you loved the journey getting there.