Backend Engineer (East London)

£40-80k, 0.3-0.6% stock options

View as PDF

Who said a job description had to be a one-pager?

Your time is valuable, and so is ours. And this is a huge decision for both of us.

So we've done our best to provide you with all the information you need to decide whether to pursue this opportunity – or just as importantly, not pursue it.

Table of contents

  • TLDR – is this for me? // should i read on, or move on?
  • About Stepsize // why do these people get out of bed in the morning?
  • About this role // where would i fit in? why does it matter?
  • Requirements // are we meant to be together? 💞
  • Next steps // ok i'm sold, what now?

TLDR – is this for me?

Read on if...

  • You would be proud to help people create software
  • You care about the quality of your work
  • You want to be challenged and grow
  • You are self-motivated
  • You seek out different & opposing points of view
  • You enjoy healthy debates and scrutinise consensus

Move on if...

  • You're happy with the way you do things
  • You find it difficult to move forward when some people disagree with you
  • You dislike uncertainty
  • You're looking for a stable job that won't change much

About Stepsize

Our mission is to make software development universally accessible.

Software fuels progress, but creating and maintaining it is hard. It’s painful to think about all the ideas that never saw the light of day because of this, and how different the world could be if they had.

We want to live in a world where anyone can create software on their own, without technical knowledge.

This is a multi-decade plan. We’re aware of it, but we don’t shy away from it.


We can’t make software development universally accessible today, but we can accelerate it. So the journey begins with software development teams.

Today we help teams access and use knowledge to create better software faster

Agile engineering teams face a really tough challenge: their codebases change constantly which means it’s impossible to have accurate and up-to-date internal documentation. This is particularly problematic for teams growing rapidly or those with high turnover.

Our product solves this problem by creating self-maintaining documentation, automatically tying together data from all the tools these teams use every day. We start with the assumption that codebases are evolving constantly and generate documentation that is tailored to capture change, like a version control system. The traditional approach is to capture the state of things at a single point in time, ideally the present – this cannot work in a world of continuous delivery.

With Stepsize knowledge doesn’t get lost, time isn’t wasted digging it up, and teams are happier and more performant.

Tomorrow we’ll help teams turn knowledge into superpowers to create better software faster

Embedded in this data are insights about how to work smarter. Certain mundane activities can be automated while others can be done better with assistance. Tomorrow's teams will get superhuman amounts of 💩 done.


This paves the way to our long term vision of universal software development.

The data software development teams generate in their day-to-day represents how human concepts become functioning software. By assisting teams in that process, we'll gradually deepen our understanding of how the sausage gets made. Eventually, Stepsize will become a sausage software factory.

About this role

As a backend engineer, you’ll be responsible for delivering, monitoring, and scaling the web services behind our product.

You’ll work on a very modern codebase and use the latest technologies to solve complex problems. Our backend consists of a few services – some micro and others larger than we’d like – running in containerised environments and bringing together all the moving parts that power our product. This includes authentication and security, analytics and monitoring, and ingesting / transforming / blending third party data and keeping it up to date.

You’ll find yourself collaborating closely with data engineers to define the architecture and APIs of data-intensive services, and you’ll lead the delivery of the rest of the backend which ranges from authentication to billing, caching, monitoring, and more.

Our backend currently runs on:

  • TypeScript
  • Express and Koa with routing-controllers
  • PostgreSQL, ArangoDB, and MongoDB
  • Redis and Kafka
  • Docker and Kubernetes
  • Stackdriver, Redash, and Grafana
  • Google Cloud Platform

Requirements

Work experience

Basically, building scalable and robust web services is what you do for a living.

Relevant experience:

  • Working out how to break down complex backends into loosely coupled and sanely-architected services
  • Implementing standardised API patterns (REST, RPC, GraphQL)
  • Scaling backends from first release to a robust & highly available state
  • Building secure applications with multi-tiered access levels
  • Working with web services in containerised environments

Technical knowledge

More than anything, you've shown an ability and hunger to pick up new technologies to get things done. Technology is a means to an end.

Relevant technologies and knowledge:

  • Typed languages (we use Typescript – you’ll have to pick it up quickly)
  • Web frameworks and API patterns (REST, GraphQL, RPC)
  • Administering and optimising databases of all kinds (we use PostgreSQL, ArangoDB, and MongoDB)
  • Containers (we use Docker) and their orchestration (we use Kubernetes)
  • Networking

Note that these are the technologies we use today but they’ll evolve over time and you’ll contribute to this evolution. The service-oriented architecture affords us a lot of flexibility.

Personality

We look for people who behave, communicate, and think in ways that exemplify the culture that we want to preserve and nurture as the company grows.

Behaviour

Initiative

Something can be done better? Something doesn't look right? You take it upon yourself to bring it up and do something about it.

Ownership

Your work is yours. You own the journey, the successes, and the failures.

Pragmatism

You adapt to the situation at hand. In particular, you recognise:

Team work

You cultivate good teamwork and understand its value. You make the most of your teammates’ knowledge, and you enjoy helping them back.

Communication

Listening

You realise that being a good communicator is mostly about being a good listener.

Efficiency, clarity, and precision

You value efficiency so you're constantly solving for the shortest path solution in any exchange.

Understand > convince

You focus on understanding the other person's perspective when you have a disagreement before even considering convincing them that yours is the right one.

Over-communicate

You have a tendency to over-communicate to build alignment with the team.

Thought process

Intellectual curiosity

You see your education as a life long project and driving it forward a priority.

Intellectual security

You see being wrong as an opportunity to learn from your peers rather than as a display of weakness or something to be ashamed of.

Intellectual honesty

You look for the best argument for and against every idea, regardless of where the idea came from, and in the end the best argument wins. Ego never gets in the way of truth.

Intellectual humility

You respect established knowledge, recognise its value, and make the most of it whenever you can...

Intellectual independence

...but ultimately you make up your own mind about things. Even about things that are widely accepted to be the case.

Next steps

  • Play around with our dev app (email hello@stepsize.com, password StepsizeDem0)
  • Drop us a line at join@stepsize.com and tell us a bit about yourself and why you'd like to apply for this position (include some sort of CV please)

Equal opportunity

We’d hope this went without saying, but sadly it doesn’t, so we want to explicitly note that we’re an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.