The true architect's way (AKA ShuHaRi)

The true architect's way (AKA ShuHaRi)

Quite recently I've shared my personal interpretation of "seniority" in tech (based on the concept of "leverage" - shamelessly stolen from Andy Grove ...). This term ("seniority") is frequently closely associated (as an enabler) to the role of an "architect" - which is another topic I use to share my thoughts about from time to time. So far I've been depicting an architect as:

  • a navigator
  • a technical product owner
  • a person accountable for 1 of 3 pillars in the concept of "triumvirate of power"

But there's one more personal lesson about what does it mean to be an architect that I find very important, but I didn't write about it so far. Why don't we fill this gap today?


To do that, I'll need to introduce to you an odd-sounding Japanese word (or rather - a cluster of words) - "ShuHaRi".

This concept is very old & it comes from martial arts domain - ShuHaRi is a description of stages while you're learning and mastering a certain discipline:

  • Shu is when you learn tools/techniques/moves from others and start using them in practice (yes, the 1st word that comes to mind should be kata) - you apply others' lessons and gradually gain a better understanding of them (their applicability, constraints, consequences, ...)
  • Ha is when you start reaching out further - you look for more inspirations, you search for more sources, you start mixing various approaches to learn how they co-op, mix or just differ. It means going beyond the single script - your understanding deepens, but you're still mainly learning from others
  • Ri is the ultimate stage - all your past lessons & experiences have built the capital of your own knowledge & understanding deep & vast enough for you to ... shape your own (creative) approach; you're not anymore a follower, but a creator - your own conclusions and awareness (that you've built up) are enough for you to progress independently and get better results

You can read a bit more about it at Martin Fowler's Bliki. According to Fowler, this concept was introduced into tech by Alistair Cockburn in his famous book from 2001.

I realize the concept itself sounds weird. And very "spiritualistic". I had the same impression several years ago when I've read/heard about it for the first time (it was some sort of Agile community event). My perception has changed drastically when I realized how it REALLY works in practice - for me, nothing better than ShuHaRi describes the essence of what MASTERY is.


OK, but we were suppose to talk about architect(s):

Ambitious, talented engineers like how this job title sounds - being decisive, being respected, knowing things, building grand stuff while having a seat in the 1st row. They are eager to make the first step on this path, they've already read a book or two, attended few conferences, watched few courses & presentations. It was enough for them to learn about modern-day architectural "building blocks" - containers, orchestrators, services, bounded contexts, RESTful APIs, etc. They've got an understanding (or at least - so they think) of each block individually & they assume it has earned them architect's spurs.

No, with all the respect - it hasn't.

All those elements of the puzzle are only the "Shu" step, the 1st of 3. While real architect starts at "late Ha" (2nd step) or even better - at "Ri" (the final step). And the difference is hell-of-a-practice, real hands-on experience, tons of both successful & failed (more of those ...) experiments - in scale, under the load, in real-life scenarios (not in a greenfield pet project used by no-one).

"Ri" never ends. But it doesn't mean it's static. The learning never ceases, but the growth can be infinite. One's "Ri" can't be copied (by someone else) - everyone needs to invent her/his own path. Being an architect can't be learned dry, in "laboratory" conditions, out of the trenches.

"Ri" can be very painful & humbling. But it can also be very satisfying & bring a lot of fulfillment. Once you have enough humility, patience, courage, grit & iron skin.

Sebastian Gebski

About Sebastian Gebski

Geek, agilista, blogger, codefella, serial reader. In the daylight - I lead software delivery. #lean #dotnet #webdev #elixir. I speak here for myself only.

Comments