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.