I help organisations to build effective development teams by adopting modern software engineering practices.
My preferred way to work is to augment a team as a developer/coach, in order to drive improvement from the inside.
Contact Me for my availability and rates.
Below are examples of some of the areas I can advise on:
- An effective Red/Green/Refactor cycle
- Faster test feedback
- Writing fast, clear and more maintainable tests
- Adding tests to a legacy codebase
- Speeding up a slow test suite
- Avoiding fragile tests
- Making effective use of Git and GitHub
- Techniques to avoid difficult merge conflicts
- Decoupling from frameworks
- Making use of Service Objects
- Introducing a strong culture of code review
- Providing feedback
- Restructuring code when there are no tests
- Improving code without fear of introducing defects
BDD (Behaviour-Driven Development)
- Improving collaboration
- Specification by Example
- Executable Specifications (e.g. Cucumber)
Continuous Integration and Continuous Deployment
- Reducing cycle time
- Deploying with confidence
Automated Code Quality
- Measuring test coverage
- Verifying coding style
- Detecting code smells
- Identifying security issues
Check my Past Work to see the clients I’ve worked with.
I have recently relocated to Toronto as a Permanent Resident, but will consider travel or remote work.