Taking retrospectives to the rest of the business

The Product Development team at Driftrock has been using retrospectives for just over a year and it’s served us really well. In that time we’ve made loads of improvements and changes to how we work. Those changes range from small tweaks to our process to large uncertain ideas which we trial for a limited period. Our process for a retrospective is fairly typical (in my experience); we do them fortnightly and we rotate the facilitator role who runs the session how they see fit.…

Kubernetes: zero-downtime rolling updates

Rolling Update only makes sure that Kubernetes stops pods in rolling fashion - one by one, always ensuring there is the minimal desired amount of pods running. That may seem like enough for zero-downtime deployments. But as usual it is not that simple. During rolling update Kubernetes has to terminate the old versions of pods - after all that’s what you want. But that’s problem when your pod is being terminated in middle of processing HTTP request.…

Driftrock's Journey to Continuous Delivery

Over the last year, Driftrock has been on a fairly typical journey - you might have heard it before - we went from manual deployments and an apathy for shipping software to automated and repeatable deployments with a focus on delivering value. Rather then bore you with yet another post about the merits of Continuous Delivery, though I would like to, I’ll attempt to focus instead on how we achieved this shift.…

Speeding up CI tests using Docker

At Driftrock development team we aim to develop and ship new value and fixes to our customers as quickly and frequently as we can. Important thing that allows us to do so is Continuous Integration. Recently we started experiencing quite long CI test times - around 10 minutes. We do Pull Request reviews in our team and that means that every time we did small update during PR discussion we had to wait 10 minutes to be able to merge changes or ask reviewer to accept the changes and effectively unblock us to do other work.…

How we do production release announcements

At Driftrock we’re a small company that has grown from 8 to 18 people in the last 9 months. That’s not excessive but it still challenged some existing methods of communication. One of those was how we communicate new features which have recently gone live, somewhere along the way we stopped doing this. …

Tech Values

When you join a new company, especially a startup with a small team and a fluid, fast attitude, it can be hard to understand what is the shared vision that you’ll be involved with. Each team will want to do the best job possible to benefit the business, but what are the guiding principles on which to base our decisions? Being a software engineer: coffee, pizza, and trade-offs One of the core aspects of this job is that whatever you do, you can never have your cake and eat it.…