Azure アーキテクチャを参照する - Azure Architecture Center
参照アーキテクチャのアーキテクチャ ダイアグラムとテクノロジの説明、クラウド アーキテクチャの実際の例、Azure 上での一般的なワークロードに関するソリューションのアイデアを紹介します。
https://azure.microsoft.com/ja-jp/solutions/architecture/
前回はリーンソフトウェア開発の7つの原則と22の思考ツールについてお話しました。
原則1 ムダをなくす
原則2 品質を作り込む
原則3 知識を作り出す
原則4 決定を遅らせる
原則5 早く提供する
原則6 人を尊重する
原則7 全体を最適化する
このうち、原則4の「決定を遅らせる」を疑問に思われる方も多いです。
普通なら、決定は早い方がいいって言われますよね。
決定を遅らせるという原則が、実は一番重要だと僕は思っています。
物事が完璧に決まっていることなんかないわけですよ。
そして人間は思考の生き物なので、ちょろちょろ考えが変わります。
だから最初に決定してしまうと、後でそれが足かせになってしまう。なので、決定を下すのは直前までしない。
その代わりスピーディーなサービスを提供するために、直前に素早く決定を下せるプロセスを作っておくこと。
これが決定を遅らせるという原則の意義です。
ただ、今まで話したようなことを全部やっても、上手くいかない時ってあります。
「うちの会社で一通りやってみたが、上手くいかない」という方も多いと思います。
そもそも内製化は、既存の概念に対する挑戦なんです。
なので、上手くいかない時は上手くいかないんですよね。
逆に、そのハードルを乗り越えてチームとしてまとまりが出てきたら、上手くいく。
それを達成するには、やっぱりリーダーが必要です。
それもヒエラルキーの中で上に立つリーダーというより、連携型リーダーが求められます。
どういうリーダーかと言いますと、自分で全てを引っ張っていくのではなく、メンバーの持っているものを引き出して、それを全部何かしらの機能に融合させることができるリーダーです。
組織的改善が上手く行っている組織には、必ずそのような優れたリーダーが存在します。
「そんな神様みたいなリーダーっているの?」って、思われるかもしれません。
そこでテックリードなんですよ。
内製化と同じくらい、今回のキーワードです。
テックリードとは何か?
企業に1人いればいいというわけではないし、CTOのように経営に携わることもないです。
テックリーダーは主に以下を推進して、メンバーをリードします。
1. 10人以下くらい組織ではリーダー的存在になる
2. 主にプログラムコードの品質、チームの生産性、アーキテクチャーの3つを担う
3. 問題が発生した時に、技術的な解決に導くために論理的に問題を切り分けする
こういうことを率先してできる人がテックリードですね。
テックリードがチームに存在するとどうなるか?
テックリードがいれば、アジャイル開発のように継続的な改善が可能になります。
また、チームとしての一体感が生まれ、行動に一貫性が出て、さらにテックリードの存在がメンバーの心理的安全性を保ちます。
テックリードが内製化チームに与える価値であり、テックリードは組織文化を牽引する存在と言ってもいいです。
中編でご紹介したコンウェイの法則で言えば、テックリードはマイクロサービスをワンチームでやっても効果がないと気付ける人なんですね。
やっている途中に、このやり方ではダメだと気づき、自分たちの組織を再構成して、メンバーが自発的に動けるような環境を作るわけです。
ところで、実はテックリードはある程度クラウドでできます。
1. クラウドデザインのベストプラクティスなら...
2. ソフトウェアの基本設計なら...
3. アジャイルやるなら...
4. メンバーのスキルを高めたいなら…
とても良いツールなので、これら使えばテックリードの仕事をある程度クラウド側で分散できます。
ただそれでも、チームの生産性を上げるといったクイックな所のカバーは難しい。
そこに関しては弊社では現在サービスを鋭意開発中なので、どうぞお楽しみに。
今回は内製化についてのお話でした。それでは、また。(おわり)
☆本記事はオルターブースYouTubeチャンネルの配信動画をもとに再構成しています。
☆配信動画の本編をご覧になりたい方はこちらから!(小島発表パート)