I love a good metaphor at work. There are a lot of options you’ve probably run into: “North Star”, “Vision”, “Map”, etc.
I think “Lighthouse” might be the best metaphor for laying out a long-range plan.
I used the Lighthouse metaphor in my time as an Architect at Twilio. Twilio had grown a very complex, multi-layered, entangled platform that our engineers used to deploy and manage their applications. The platform tried to abstract away the technologies it used under the covers, like AWS, Kubernetes, Terraform, etc. Sadly, new hires that had experience with those technologies couldn’t use their hard-earned knowledge at Twilio. They had to start over and learn “The Twilio Way”.
That’s when I introduced the Platform Lighthouse. Here’s what it encompassed:
- Defined the purpose of the platform
- Addressed the realities platforms face
- Assessed the current state of our platform and how we got there
- Identified Twilio’s future needs based on strategic goals
- Outlined the key capabilities and characteristics required for the platform’s evolution
- Established Development Focus Areas for implementing these traits
- Emphasized the changes our customer teams needed to embrace as we transformed the platform, including a very different take on “Developer Experience.”
It served as a navigational aid, allowing our teams to steer towards our goals effectively.
🔦 The Lighthouse and the Bay of Appropriate Futures #
Similar to a “north star,” a lighthouse guides us. However, we can get closer to a lighthouse than a north star; it provides a more tangible sense of direction. We don’t want to actually reach a lighthouse; that means we would’ve crashed into it disastrously! A lighthouse helps us navigate towards what I call the “Bay of Appropriate Futures.”
We have various options and paths to implement future capabilities. For example, a future capability could be “Strong Identity, independent of compute providers or technologies.” The bay offers different “moorings” for this capability like SPIFFE/SPIRE, Tailscale, “zero-trust” gateways, etc. As long as we move towards the lighthouse, we know we’re iterating towards our goals.
⚓ Guard Rails for Effective Navigation #
I knew that listing capabilities wasn’t enough to stay on track. The Lighthouse also described the characteristics of a future platform. For instance, one characteristic was “Encourages development teams to choose the right tools for their needs, regardless of platform support.”
With capabilities as destinations and characteristics as guard rails, the lighthouse created a clear framework that kept us focused on reaching the bay and prevented us from aimlessly drifting in the vast Ocean of Possibilities.
📈 Long-term Effectiveness #
This Platform Lighthouse served as our guide for several years, evolving along the way. It even turned into our Platform Long Range Plan, receiving annual review and approval from executives. I’ve heard from Twilions that it’s used today!
A former coworker recently told me that he’d adopted the Bay of Appropriate Futures at his new gig, so maybe it’s got some sticking power. 😉
👥 Architecture is a team sport #
The Lighthouse wouldn’t have been nearly as effective without these people: