Sander Hoogendoorn

Independent software craftsman

Sander Hoogendoorn is a dad, a freelance consultant, software craftsman, CTO, architect, programmer, post-agile coach, speaker, trainer, and writer. Seasoned in agile, Scrum, Kanban, continuous delivery, (no) software estimation, smart use cases, design patterns, domain driven design, UML, software architecture, microservices, and writing beautiful code.

Sander helps organizations and teams to change and coaches them to optimize ways of working, practices, architecture, code, and tests. Currently, Sander is a chief architect at smart energy company Quby (makers of Toon). Before, he was a director with the agile consultancy 101 Ways, chief technology officer at software vendor ANVA and insurer Klaverblad. Earlier he operated as a global agile thought leader at Capgemini, and partner at consultancy Ordina.

Sander authored best-selling books such as This Is Agile and Pragmatic Modeling with UML and published hundreds of articles in international magazines. He is an inspiring (keynote) speaker at international conferences, he presented hundreds of (in-house) training courses and lectured at many universities. Currently, Sander is working on a new book about new organizations and teams - agile beyond agile.

Sander is well known for his enthusiasm and motivational capabilities, innovative skills, team building, in-depth knowledge of the field, quick adaptation, broad vision, and collaborative skills. An open personality, eager, driven, out-of-the-box thinker. He is not afraid of trying out new paths and techniques and has never been a nine-to-fiver. Having new ideas is a 24/7 process.

Sander Hoogendoorn (in short)

Independent software craftsman

Sander is a dad, a freelance consultant, CTO, software architect, programmer, speaker, and writer. He coaches teams and helps improve architectures and code, currently as chief architect at Quby. He’s written books on agile, modeling, and web tools, and published many articles. Sander is an inspiring (keynote) speaker at international conferences on topics such as changing culture, agile, Scrum, continuous delivery, (no) software estimation, smart use cases, patterns, software architectures, microservices, and web, Java and .NET development.

My current talks

Here's a list of the talks I'm currently doing. There's a wide variety of topics, styles, and material used, from inspirational keynotes to tech talks with lots of code.

It’s a small world after all

How thinking small is changing software development big time

The world is changing fast. More precisely, the world is changing at increasing speed. This means things that were not possible five years ago come into reach. Incumbent organizations need to adapt fast to keep up with new competitors that use new technologies easier, faster and better than they do. As a result, every aspect of software changes towards smaller. Even smaller teams or even micro-teams, less management, flatter organizations, even shorter cycles, and smaller components.

During this energizing and high-paced talk Sander discusses the Cynefin model, shows why software development goes so terribly wrong, how to move beyond Scrum and enterprise agile, why self-organization is not as easy as it looks like, why continuous delivery leads to not doing projects or estimates anymore and why microservices are hard but essential as underlying foundation.

In short (<500 characters)

Our world changes at increasing speed. Things that weren’t possible 5 years ago come into reach. Incumbents need to adapt to match start-ups. We evolve towards smaller, faster, shorter. Smaller teams or even micro-teams, flat organizations, no management, even shorter cycles, smaller components. During this inspiring talk, Sander discusses Cynefin, how development goes wrong, how to go beyond Scrum, why self-organization is hard, why continuous delivery allows you to stop doing projects.

Feedback

Codemotion Rome 2019 (opening keynote). The attendees' results rated your talk as 99% "Good",  0% "Neutral" and  1% "Bad".

Note

This talk serves and has served well as an inspirational (opening) keynote.

How microteams change the way we collaborate. Again.

Introducing the next evolution in autonomous collaboration

Over the years the way projects and teams operate in software development has changed quite a bit. From projects were teams were sliced vertically per discipline, to multi-disciplinary and cross-functional teams in agile approaches and frameworks. Now, as a consequence of increasing velocity, DevOps, DevSecOps and continuous delivery, we are on the move again. In Sander's vision, teams that will be even smaller than in agile, and much more fluent.

Sander has been experimenting with collaboration in teams for years and reasons about this next evolution of collaboration as areas, collectives, and microteams. This talk illustrates how organizations and teams doing software and product development can transition to focus on delivering value using the ever-evolving and self-organizing power of microteams and how to get there using a combination of models, such as Cynefin, the Golden Circle, innovation funnels and backlogs, autonomy, and fewer rules.

Stairway to heaven or highway to hell?

Lessons learned from five years of microservices

Microservices are all the hype. Websites are full of posts, books are being written and conferences organized. There are big promises of scalability and flexibility. However, when you are knee deep in mud as an architect, developer or tester, it’s hard to find out how to get there.

Sander Hoogendoorn, independent craftsman and chief architect at Quby (makers of Toon), discusses the long and winding road his recent clients and projects, both greenfield and brownfield, have traveled towards microservices and continuous delivery. Sander addresses lessons learned about polyglot persistence, domain driven design, bounded contexts, being RESTful, doing API design, continuous delivery, build pipelines, automated testing, and security, illustrated with many real-life examples from several of his diverse clients.

Welcome to the world of micro-apps

How to get the most of front-end microservices using Angular and Typescript

Microservices have been around since a few years, and many organizations are starting to benefit from these autonomous, independently deployable and easy maintainable small blocks of code. However, if you examine some of the popular definitions of microservices, we are still building a single application as a suite of small services.

During this talk, Sander Hoogendoorn will explain and demonstrate how front-end development can also benefit from building it in small autonomous, independently deployable blocks of code, instead of implementing a single monolithic web application. Of course, Sander will use many code examples in Java, Angular and Typescript (and probably some live coding) to illustrate even better how to build micro-applications similar to your microservices.

In short (< 500 characters)

Microservices have been around for a few years. Many organizations benefit from these autonomous, independently deployable and easy maintainable blocks of code. However, in most projects, we still build a single application on top of these services. This talk demonstrates how front-end development can also benefit from building in small autonomous, independently deployable micro-apps, instead of building a single monolithic web application. With many code examples in Angular and Typescript.

Feedback

Codemotion Amsterdam 2019. The attendees' results rated your talk as 90% "Good",  10% "Neutral" and  0% "Bad".

Note

Nice front-end technical talk with code examples and possibly live coding in Angular and Typescript.

Do or don’t. There’s no try. Or is there?

The power of monads explained. Sort of

One of the great things about being a programmer is that you never stop learning. Even after having programmed for almost 35 years, I still improve on the way I write code. Recently the way I write code changed once again when I started to apply monads and especially the Try class.

During a recent project, my team created a small library that ports the behavior of the Scala Try monad. Although at first, this new monad didn't appeal to me, I soon really started to appreciate this style of programming, where we concatenate series of Map() and FlatMap() methods, using lambda’s, and avoiding abundant try-catch blocks, and many if statements and null checks.

In the meantime, I have contaminated many programmers with this style. Developers make it a sport to always start every method with a return statement. During this talk I’ll discuss lambda’s, closures and monads, and demonstrate the power of this simple monad, using many code examples (in Java, C#, and TypeScript). Don't hesitate to join in.

In short

As a programmer, you never stop learning. Recently the way I code changed dramatically when I consciously started to apply monads, starting with a port of Scala’s powerful Try monad. During this talk I’ll discuss lambda’s, closures and monads, and build of a simple Maybe monad, demonstrating the power of monads, using many code examples (in Java, C# and TypeScript). Don't hesitate to join in.

Flow: the worst software development approach in history

Together with Kim van Wilgen, customer director at Schuberg Philis

Ever since we started writing code in the fifties of the previous century, managers and project managers have tried to discipline and structure the way we work. However, no matter how many consultants and coaches are hired to implement increasingly complex process frameworks and methodologies, developers and testers always come up with new simplistic approaches.

During this talk, Kim and Sander will feal with Flow: the worst software development methodology in the history ever, taking inspiration from the worst principles and practices from methodologies such as waterfall, RUP, Scrum, Kanban, Lean, BDD, LeSS , SAFe, Spotify and of course everything continuous. Don't let project failure take you by surprise, be certain!

Building a microservices architecture in small steps

Illustrating the many architectural, design and coding decisions you too will need to make on the way to microservices.

To further improve time-to-market and adaptability in delivering their services, IoT company Quby (well-known for the Toon smart thermostat) is reshaping the their software landscape, which largely consists of a number of mobile applications (built in Javascript and React), web applications and back-end services (Java and Spring Boot) and embedded software (written in C, C++ and Qt).

While the landscape must continue to run and evolve, we started working on a new microservices platform called Fiona, which leverages state-of-the-art technology, such as Typescript, node.js, and additional frameworks, continuous delivery, fully automated pipelines and running on the Amazon AWS cloud. Unfortunately, with microservices, there is no well-described recipe that will take you directly to your desired end state. So, with a small team Sander Hoogendoorn, chief architect at Quby, ventured off to and is trying to navigate through the many big and small decisions you need to make when moving towards a microservices technology on a daily basis. During this interactive talk Sander will take you through the small steps Quby has made, illustrating many of these architectural, design and frameworks decisions made, along the way, with real code examples in Typescript, slowly arriving at a happy state and a set of patterns and coding techniques that evolved along the way.

Sander not only talks the talk, but walks the walk as well. If your company or organization is also underway towards a microservices architecture, and continuous delivery, be sure to visit this talk, as you too will have to answer many of the questions Sander and his team are facing, and have faced in earlier successful implementations.

Domain driven design at the heart of your microservices landscape

How bounded contexts and other patterns help you deliver on microservices promises

With microservices and serverless are the current hypes, there are big promises of scalability, replaceability, and flexibility. However, when you are knee deep in mud as an architect, (front-end) developer or tester, it’s not always easy to see how.

At recent clients, in CTO roles, Sander Hoogendoorn has helped create landscapes of small microservices, that deliver on the promises above, with architectures based on the patterns from domain driven design. Moreover, these landscapes also feature many micro-applications, which are based on domain driven design patterns, that also deliver on the promises of microservices.

During this talk, Sander Hoogendoorn, independent craftsman and chief architect for IoT idea company Quby, discusses the set of patterns such as resources, representations, repositories, entities, value objects and factories that helped build these services and applications in an evolutionary architectural style. Sander also discusses why every micro-application and microservices has its bounded context, and how this domain driven design pattern is essential for enabling these landscapes of small services, of course, using many real-life examples.

Beyond breaking bad

The current state of agile in ten easy lessons

After having coached iterative and agile projects for almost twenty years, author, craftsman and independent consultant Sander Hoogendoorn, looks back on what agile, Scrum, Kanban, XP and other agile approaches have brought us in real-life. In his well-known, high-speed style Sander will motivate why agile is dead, why you need to stay away from Scrum task-boards, how to stay away from estimates and deadlines, the law of large numbers, how to avoid red sprints, how to put your trust in metrics, how to draw owls, that projects are waste, and most of all that you are not Usain Bolt and last-but-not-least he will explain why you should stop doing projects, but focus on roadmaps and minimal viable projects!

In short

After coaching agile for over fifteen years, Sander looks back on what agile and Scrum have brought us in real-life. Sander will motivate why agile is dead, why to stay away from Scrum boards, how to stay out of estimates and deadlines, how to avoid red sprints, how to draw an owl, shows that project managers are not a total waste after all, and that you are not Usain Bolt.

Note

This talk has served well as (opening) keynote to quite a number of agile and development conferences.