Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
アーキテクトに求められるマインドとは / mindset for an architect
Search
iselegant
July 14, 2022
Technology
23
10k
アーキテクトに求められるマインドとは / mindset for an architect
iselegant
July 14, 2022
Tweet
Share
More Decks by iselegant
See All by iselegant
エンジニアとして成長するための持続可能なアウトプット戦略 / Sustainable Output Strategy
iselegant
3
720
人工衛星管制システムにおけるCICD / CICD in satellite control systems
iselegant
8
1.2k
人工衛星の運用を支えるクラウドネイティブ民主化への取り組み / Efforts toward cloud-native democratization for satellite operations
iselegant
5
1.2k
サーバーレスファーストで考えるクレジットカードビジネスの最適化 / Business Optimization for Credit Card by Serverless
iselegant
7
3.4k
全AWSエンジニアに捧ぐ、CloudWatch 設計・運用 虎の巻 / CloudWatch design and operation bible
iselegant
44
17k
ECS Service Connectによるサービスの新しいつなぎ方 / A new way to connect services with ECS Service Connect
iselegant
15
7.1k
PCI DSS準拠から学ぶサステナブルなAWSクラウドネイティブの運用 / Sustainable PCIDSS operation on AWS
iselegant
14
6.9k
コンテナ・サーバレスがもたらす世界と開発者がAWS上で取り組むべきこと / Containers and Serverless Technology for Developers
iselegant
8
14k
SRE on AWSのことはじめ / SRE on AWS
iselegant
9
4.8k
Other Decks in Technology
See All in Technology
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
What if...? 처음부터 다시 LLM 어플리케이션을 개발한다면
huffon
0
1k
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.4k
たくさん本を読んだけど 1年後には綺麗サッパリ!を乗り越えて 学習の鬼になるぞ👹
yum3
0
160
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
シフトレフトで挑む セキュリティの生産性向上
sekido
PRO
0
270
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8.2k
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
テストケースの自動生成に生成AIの導入を試みた話と生成AIによる今後の期待
shift_evolve
0
190
Flutter研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
Featured
See All Featured
Navigating Team Friction
lara
181
13k
Code Review Best Practice
trishagee
58
16k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
Happy Clients
brianwarren
94
6.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
24
1.8k
Building an army of robots
kneath
301
42k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
149
45k
Fantastic passwords and where to find them - at NoRuKo
philnash
42
2.7k
Typedesign – Prime Four
hannesfritz
37
2.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
23
1.9k
Gamification - CAS2011
davidbonilla
78
4.9k
Transcript
アーキテクトに求められる マインドとは 2022-07-14 株式会社野村総合研究所 新井雅也 おすすめの技術書LT会 – vol.4
新井 雅也 M a s a y a A R
A I msy78 金融業界のお客様に向けたビジネス提案やシステム設計、開発、運用を担当。 UI/UXデザインやスマホApp、バックエンドAPIなど、フルスタック領域な守備範囲を持ちつつ、 クラウドを活用した全体のアーキテクチャ設計・開発が得意。 テックリード / エキスパートアーキテクト
u 便宜上、本発表では、ソフトウェアアーキテクチャや ソフトウェアアーキテクトのことを、 単にアーキテクチャ、アーキテクトとして表現しています。 u 「オライリー・ジャパン ソフトウェアアーキテクチャの基礎」にて 得られる知見をもとに、発表内容をまとめています。 発表の前提 https://www.oreilly.co.jp/books/9784873119823/
アーキテクトに求められるマインドとは
アーキテクトに求められるマインドとは そもそも、アーキテクトとは
(明確な定義やキャリアパスはないと言われているが) アーキテクトとは、適切な設計を選択し、 技術標準の枠組みを作る役割の担い手のこと
🙋 「新米 ソフトウェア アーキテクト X氏」
🙋 今の時代、クラウド使って マイクロサービスアーキテクチャで作るのが、 とりあえず最適だと思うのよね〜〜JK 「新米 ソフトウェア アーキテクト X氏」
🙋 今の時代、クラウド使って マイクロサービスアーキテクチャで作るのが、 とりあえず最適だと思うのよね〜〜JK 「新米 ソフトウェア アーキテクト X氏」
🙋 今の時代、クラウド使って マイクロサービスアーキテクチャで作るのが、 とりあえず最適だと思うのよね〜〜JK 「新米 ソフトウェア アーキテクト X氏」 なんて安直な思考に、 皆さんは陥っていないですよね
?????
そもそも、アーキテクチャとは、求められる or 達成したい ビジネス要件の文脈があって、初めて成立するもの u マイクロサービスアーキテクチャのメリットとデメリットは理解していますか? u モノリス構成を含む、他のアーキテクチャは検討しましたか? u マイクロサービスアーキテクチャが、ビジネス上のどのような課題を解決するのですか?
u 実際にコードを書くエンジニアやその他ステークホルダーと事前に共有しましたか?
「Jastrow, J. (1899) “Fact and Fable in Psychology” https://commons.wikimedia.org/wiki/File:Duck-Rabbit_illusion.jpg」より引用 ものの見え方は、人の経験や状況によって左右されることと同じように、
アーキテクチャも解決したい課題によって左右される ウサギとアヒルの図形
つまり、アーキテクチャはすべてがトレードオフの世界である u「どうやって」よりも、「なぜ」のほうが本質 u「アーキテクチャとは、Googleで答えを見つけられないものだ 」 ※「オライリー・ジャパン ソフトウェアアーキテクチャの基礎」より引用
そもそも、アーキテクトとは
そもそも、アーキテクトとは アーキテクチャが持つトレードオフを理解しつつ、 自分たちのビジネス要件と照らし合わせて、 適切な設計を選択し、技術標準の枠組みを作る担い手
アーキテクトに求められるマインドとは そもそも、アーキテクトとは
アーキテクト アーキテクトに必要なマインドとは
アーキテクト 技術トレードオフを理解 ビジネス要件の理解 技術標準の枠組み アーキテクトに必要なマインドとは
アーキテクト 技術トレードオフを理解 ビジネス要件の理解 技術標準の枠組み → 多様な選択肢と洞察 → 要件は日々変化 → チームへの普及と理解
アーキテクトに必要なマインドとは
アーキテクト 技術トレードオフを理解 ビジネス要件の理解 技術標準の枠組み → 多様な選択肢と洞察 → 要件は日々変化 → チームへの普及と理解
変化への追随 技術的な リーダーシップ 学びの幅を広げる そのために・・・ そのために・・・ そのために・・・ アーキテクトに必要なマインドとは
優れたアーキテクチャや技術を幅広くおさえる uアーキテクトでは、「技術的な深さ < 技術的な幅」が重視される傾向 u トレードオフに対する感性が磨かれる u選択するために「知らないことについて知らない」ことを減らす u 単一の技術やプラットフォームに集中すると、そこが安全な避難場所になってしまう u
最新のトレンドを把握し続ける u 古い情報がまだ最先端であるという誤った感覚から脱出する
優れたアーキテクチャや技術を幅広くおさえる アーキテクチャ特性を軸にメリデメを理解する 各アーキテクチャの代表例を知る u レイヤード u パイプライン u マイクロカーネル u
サービスベース u イベント駆動 u スペースベース u オーケストレーション駆動 u マイクロサービス u 運用特性 e.g. 可用性、パフォーマンス、 スケーラビリティ、デプロイ容易性 u 構造特性 e.g. 拡張性、可搬性、メンテナンス性 アップグレード容易性 u 横断特性 e.g. 学習容易性、セキュリティ
変化に追随するためにイテレーティブに取り組む uビジネス特性を理解し、決して最善のアーキテクチャを追求しない u あらゆるビジネス上の問題を解決しようとすると、 汎用的なソリューションになり、単に労力・コストを要する u少なくとも、最悪ではないアーキテクチャを狙う u ソフトウェアアーキテクチャは動的な性質を持つもの u 変更が容易であれば、最初から望ましいアーキテクチャを
正確に設計しなければならない、というプレッシャーも少なくなる The Only Complete Swiss Army Knife https://www.hammacher.com/product/ only-complete-swiss-army-knife
技術的なリーダーシップを発揮する uビジネスと技術の両面の変化を捉え、翻訳し、チームをリードする Simon Brown氏: 私の場合、ソフトウェアアーキテクチャの役割はソフトウェアチームに技術的なリーダーシップ をもたらすことです。私はどんなソフトウェアプロジェクトにも、ある程度は事前の設計が必要 だと固く信じています。コツは「過不足なく」やることです。つまり、初期のハイレベルな構造 を作り、主要なリスクに対処し、チーム全員がともに取り組むべきビジョンを作ることです。 https://www.infoq.com/jp/news/2012/04/frustrated-architect/より⼀部引⽤
u開発チームが技術を選定できるように「ガイド」する uアーキテクチャの決定や設計指針の遵守を徹底する u ルールを逸脱すると、いずれ技術的負債へと変化する u「確証バイアス」に注意を払う u e.g. 「そのアーキテクチャの採用が、間違いなく正しいに違いない」と思い込み、 都合の良い情報のみを集めてしまう。 技術的なリーダーシップを発揮する
まとめ
アーキテクト 技術トレードオフを理解 ビジネス要件の理解 技術標準の枠組み → 多様な選択肢と洞察 → 要件は日々変化 → チームへの普及と理解
変化への追随 技術的な リーダーシップ 学びの幅を広げる そのために・・・ そのために・・・ そのために・・・ アーキテクトに必要なマインドとは
ビジネスの文脈がない アーキテクチャの選択は、 「マッチ棒で家を建てる」のと同じ
🙋 ご清聴いただき、ありがとうございました。