All services

Engineering Practices

Two developers walking a seated team through code shown on a large screen behind them

There's no shortage of advice about how software should be built. The difficult part is applying that advice to a real product, with real deadlines, an existing codebase, and customers who would prefer that everything continue working.

I help teams improve practices such as Test-Driven Development, Behaviour-Driven Development, automated testing, refactoring, evolutionary design, continuous integration, and collaborative programming.

That doesn't mean pursuing perfect test coverage or refactoring every questionable piece of code on sight. It means building the feedback and confidence needed to make the next important change safely, and leaving the code a little better than we found it.

Sometimes that begins with a failing test. Sometimes it begins by trying to understand what a fifteen-year-old method is actually doing. Sometimes it begins by deleting something nobody needs.

As always, it depends. What doesn't change is the need for fast feedback, clear intent, and professional judgement.

Who this is for

Development teams who want to improve practices such as TDD, BDD, automated testing, refactoring, and collaborative programming.

What it involves

Test-Driven Development, Behaviour-Driven Development, automated testing, refactoring, evolutionary design, continuous integration, and collaborative programming.

Ready to discuss your situation?

Let's talk