The following workshops are typically run privately for your team/organisation at your own offices, but I occasionally run public (open enrolment) workshops via training providers or conferences. See Speaking for a list of upcoming public events.
Software development has changed immeasurably since the creation of the agile manifesto, but attempts to optimise team performance will still fail if good engineering fundamentals are not in place. I've had the privilege of visiting hundreds of organisations over the past 15+ years, spanning almost every industry sector, in almost 40 countries. From startups and small country specific businesses, to scale-ups and global household names. Despite the huge leaps made in the industry, a number of recurring themes have emerged from my conversations with the engineering managers, CTOs, directors of architecture, etc I've met:
This hands-on 1-day workshop focusses on the visualisation and communication of software architecture using the C4 model, providing some pragmatic, practical, and lightweight techniques that you can apply to your work the very next day. You'll learn why most software architecture diagrams are meaningless, how to critique them, how to fix them, and how to use the C4 model to create a simple yet powerful set of developer-friendly diagrams to describe software architecture.
The C4 model is designed for engineering teams and the workshop includes a software design exercise, so the majority of attendees should be engineers or have an engineering background. You're more than welcome to bring along solution architects, enterprise architects, DevOps, infrastructure engineers, technical testers, technical writers, etc too since they will also benefit from the shared language that the C4 model brings.
There are two options for this workshop:
It's very likely that the majority of the software architecture diagrams you've seen are a confused mess of boxes and lines. Following the publication of the Manifesto for Agile Software Development in 2001, teams have abandoned UML, discarded the concept of modelling, and instead place a heavy reliance on conversations centered around incoherent whiteboard diagrams or shallow "Marketecture" diagrams created with Visio. Moving fast and being agile requires good communication, yet software development teams struggle with this fundamental skill. A good set of software architecture diagrams are priceless for aligning a team around a shared vision, and for getting new-joiners productive fast.
This hands-on workshop explores the visual communication of software architecture, and is based upon years of experience working with software development teams large and small across the globe. We'll look at what is commonplace today, the importance of creating a shared vocabulary, diagram notation, and the value of creating a lightweight model to describe your software system. The workshop is based upon the "C4 model", which I created as a way to help software development teams describe and communicate software architecture, both during up-front design sessions and when retrospectively documenting an existing codebase. It's a way to create maps of your code, at various levels of detail. Static structure, runtime and deployment diagrams are all covered, so you'll be able to tell different stories to different audiences.
This 2-day workshop will give you an introduction to a pragmatic and practical approach to software architecture; including technical leadership, communication and how to balance up front design with agile approaches.
This workshop is designed for developers/engineers with an aspiration to move into tech lead/architecture roles, and tech leads/architects who are new to the role.
30 people.