Team Structure

Minimum Development Team Spec

Our minimum team spec consists of 5 people. 2x front-end developers, 2x back-end developers, and 1x QA engineer. The pairs of developers will either be Senior + Senior or Senior + Mid-level. This minimum spec means a team is a) as small as possible, b) cross-functional and c) able to perform effective code reviews.

Optimal Development Team Spec

Our optimal team spec consists of 7 people and is achieved by adding 1x Junior front-end and 1x Junior back-end developer to the Minimum Spec.

Current Development Teams

We currently have 3 development teams: "Discovery and Conversion", "Retention and Referrals", and "Portfolios and Performance".

Design Team

Our design team consists of 3 people: a Senior Product Designer, a UX Designer and a UI Designer. They act as a floating resource for the development teams and marketing department.

Team Processes

All teams are given autonomy to define their own processes, as long as they don't impact other teams.

All team members have an equal voice when discussing ideas.

Examples include: refactoring Work Item statuses, new backlog templates, PR and Code Review processes.

All teams regularly review their own processes as part of their retrospectives.

Sprints

Our sprints are 2 weeks (9 days) long. They start on a Friday and end on the 2nd Wednesday. The following Thursday is our Sprint Day. Both our current teams are staggered so that Thursday is always a Sprint Day for someone.

Fri 1
Mon 2
Tue 3
Wed 4
Thu 5
Fri 6
Mon 7
Tue 8
Wed 9
Thu Sprint Day

Sprint Day

In the "before times", our Sprint Day would see the whole team come to our London offices. It was a good chance to catch up and spend some face-to-face time with each other. Guidance permitting, we will look to reintroduce some form of social meetup for the teams, when and where appropriate.

Retros

These take place on the final Wednesday of each Sprint. They are held via a Zoom video call and address these 3 questions:

  • Things we should Start doing
  • Things we should Stop doing
  • Things we should Continue doing
All decisions are recorded in the Engineering Wiki for future reference.

Refinement Meetings

These are held every week and run by the Product Owner. They help keep the backlog healthy. As prioritised work items get nearer to being committed to a sprint, the teams need to get more explicit about the tasks involved.

A Day in the Life

What might a random day look like?

Activity Description
Morning Stand-up You'll meet with your team mates, normally over Zoom, first thing in the morning. You'll have updated your backlog items before hand and, during the short call, you'll all talk about yesterday, today and any blockages.
Deep Work We value deep work. The sort of work you can only do when you're uninterupted for an extended period of time. Developers can "go dark" in order to produce better results and avoid distractions.
Pair programming You'll spend time either driving or typing as part of pair-programming. You'll use Microsoft's new Live Share service in parallel with video calling from Zoom.
Estimation planning You'll take part in our regular Affinity Estimation sessions. This is a great way to quickly understand the relative sizes of our backlog items.
Code Review You need to help out your team mates by Code Reviewing their Pull Requests. You'll use this opportunity to promote best practices.
Video conference call We use Microsoft Teams for our internal chat rooms but sometimes you just need to jump on a video call with someone. We regularly use these to solve problems and resolve issues.
Bug fixes Unfortunately, every software company ships bugs. Fortunately, we have hotfix processes in place to catch, fix and re-deploy products very quickly.
1-2-1 We hold regular fortnightly 1-2-1s. This is an opportunity for you to express any frustrations you're having but also things that have excited you.
Pebble refinement meeting Pebbles are smaller work items that don't naturally fit into a larger feature. We fill the remaining "gaps" in our sprints with these. The refinement sessions are designed to get these work items ready for development.
Backlog maintenance Having a tidy, accurate, and up to date sprint backlog is essential to the smooth running of the team. You'll be expected to be on top of all items you're involved with.

Flexible Working

Expectations

As part of the Engineering Team we expect you to work hard, be driven, inspire your team mates and produce brilliant products. We expect you to be present at all required meetings, on time, and to prioritise the times when other people in the company will need to interact with you.

Permanent Place of Work

Your permanent place of work is our London offices. Travel to and from here is at your own expense.

Where can I work?

You choose. You can work from our London offices, from your home, from a library or other space that suits the type of work you are trying to do on that particular day.

Where can't I work?

  • Anywhere outside the UK.
  • Anywhere that might compromise the security or sensitivity of what you are working on.
  • Anywhere that distracts you or impedes your ability to do your work.
  • Anywhere that doesn't allow you to commute to our London offices, whenever required to, without unreasonable costs, time or effort.