I Love Being a Programmer… Should I Become a Manager? September 10, 2020

What to think about when considering the jump from programmer to manager.

How software engineering management can be a great career choice for the right person, but also about the sort of impact you, as a manager, can have on the world. Read more >

Growth, Impact, Joy: Should I Join a Startup? May 26, 2020

How by working in startup world you can optimise your life for growth, impact, and joy.

When I’m building a team at a startup, I’ll spend a lot of time talking to candidates and answering questions. One topic that comes up a lot is why join a startup versus a big company, and for good reason. Read more >

The Right-Handed World of Technology December 14, 2015

Why it's right that we focus our efforts when trying to build a more diverse technology community.

I've worked with codebar since its inception two years ago and I’m frequently asked how is it fair to not invite straight white cisgender men to workshops? I have a fresh answer to this question, which I thought I'd share. Read more >

Empowering everybody to be devops February 2, 2015

The Shutl engineering team has been operating with a DevOps mentality for over two years. We started by rebuilding our infrastructure under Chef and embedding our operations engineers into our agile product development process.

These are the practical steps we took to move to a model where our whole engineering team could work on our infrastructure. Read more >

Do We Understand Our Startup Equity Options? August 12, 2014

1 in 4 people with startup equity options is in for a surprise.

After both good and bad experiences with startup equity options, I wrote and researched this piece based upon survey data from the UK and US tech communities. Read more >

Real user data is the only way to reliably test your new release April 29, 2013

On a recent project, we successfully deployed a new implementation of an external API - identical to the outside world but completely re-built underneath. In order to verify the changes before go-live, we intercepted all live user requests and, in addition to sending them to the existing system ("V1"), we asynchronously fired them at the replacement system ("V2"). Read more >

Focus daily standups on value, not activity or individuals November 18, 2012

The daily standup (or daily scrum) is the bedrock of an agile process - and it should be kept enjoyable and useful, because that's the only way that it'll definitely continue to happen. A frequent complaint about this meeting, which erodes from its enjoyability and its utility, is a simple one - that it simply takes too long. Read more >

Continuous Deployment With Feature Flagging August 27, 2012

An important part of our product development process is being able to deploy new versions of features to only a portion of our users, so that we can gather feedback and to improve whilst not disrupting the workflows of our entire customer base.

We do this using feature flags - this mixes perfectly with both continuous deployment and having a customer-focused process, and in this post I'll discuss how we did it and the lessons we've learned. Read more >

Implementing company-wide agile May 14, 2012

We've been looking recently at how we can use agile techniques not only within the product team, but also across the whole company, and over the last 6 months we've evolved our process. Always opting for a daily standup, we started with having the leaders from each team get together every morning - and later extended the attendance to the entire company. Read more >