Where does your day go?

Working with teams in larger enterprises who are trying to adopt an agile way of working often throws up some interesting challenges, where a team who are trying to change their way of working must interface with the organization around them. In this situation, ideally there are strong and proactive management, who use their empowered … Read more

Working with low test coverage

Having good test coverage is invaluable to a software team, because it gives them the ability to make changes and quickly see the results. A good test suite serves 2 main purposes: it provides a safety net that shows the impact (intended or otherwise) of changes to the codebase, and it provides documentation of both … Read more

Is Continuous Release for you?

Continuous Release is the practice of releasing code to end-users in a fully automated fashion, releasing every commit that passes checks with no batching. It is the logical extension of Continuous Integration (CI) – where all commits by a team are to a central branch, with no batching – and Continuous Deployment (CD) – where … Read more

Welcoming new starters

For a lot of people – especially engineers, who can tend to be quite introvert – joining a new team can be both an exciting and nervous experience. Hopefully while recruiting you’ve used the interview process to select not only technically the best candidate but also someone who will fit into the team, which reduces … Read more

Agile Architecture

One of the significant changes in building a system in an agile way is the role of architecture and planning. Agile methodologies are often described against the comparison of a “waterfall” methodology, where in the “waterfall” approach, one of the issues is “big design up front”. The agile manifesto calls for responding to change over … Read more