building teams that build great systems

How does an architecture leader balance the technical and human aspects of their role? Architecture leadership goes beyond creating robust designs - inspiring teams, aligning technical decisions with business goals, and building an environment where innovation thrives.
improving your continuous improvement

improving your continuous improvement

High-performing teams aren’t born, they evolve. Behind every successful software engineering team is a commitment to improving their processes, tools, and outcomes. It's not just about fixing mistakes but about learning from experience, embracing feedback, and finding ways to do better every day.

model your threats

There is a huge overlap between good software design and secure systems, you can enable both by thinking about threats early and including threat modelling as part of your design process.
(how) does your system behave

(how) does your system behave

Forget for a moment test cases, code coverage, functional specs ... if someone asked you to describe the behaviour of your system (or a part of the system), could you describe it in a few minutes?