Developers Summit 2018【16-C-6】The Amazon Way~Amazonのソフトウェア開発~ 聴講メモ
講演資料
資料公開予定なし。
概要
外部から伺い知ることが少ない、Amazonのソフトウェア開発の姿について、特にAmazonのバックボーンであるカルチャーを中心に紹介する。
スピーカー
Amazonの西谷さん。
詳細
The culture of Innovation
ミッション
- 地球上で最もお客様を大切にすること
- ここでお客様とは、ものを買う消費者だけではなく、販売者、企業、コンテンツクリエイターも含む。
- 安心感をもたらす
- お客様の生活を楽にする、というコミットメントに根ざしている。
- 常にお客様を起点に行動する
- ミッション、コミットメントのスタート地点として。
- 地球上で最もお客様を大切にすること
Customer Obsessionという考え方。
- Obsessionという言葉の訳は難しいが、お客様への執心、執着というニュアンス。
顧客重視と長期的視点
- 創業時から一貫して変わっていない。
- 1997年の株主向けレターにおいて既に明言されている。
- お客様への徹底的なフォーカス。
- 長期的視点での投資を継続。
- 売上は成長し続けているが、純利益自体はフラットに推移している。
- 得た利益を次の投資として回し続けているということ。
イノベーションの例
こうした投資の結果、いろんな領域でイノベーションを起こし続けている。
創業時のコンセプト
紙ナプキンのスケッチ。以下の要素が配置された図。
以下の循環の中で成長する。
また、以下の構造も含まれている。
- Lower Cost Structure(低コストのオペレーションの実現)がLower Price(低価格化)をもたらし、
- Lower PriceがCustomer Experienceにつながる
イノベーションのための組織づくり
以下を大事にしている
メカニズム
- アーキテクチャ
- 組織
- カルチャー
メカニズム
PRFAQ(PR+FAQ)
プレゼン文化はない。
- アマゾンにはプレゼンを使った会議はほとんどない。
- プレゼン形式だとプレゼンターの喋りが上手ければ、内容も良く聞こえてしまう。
- Amazonで複数名で検討を行う際には、6pagerと呼ばれるレポートを使う。
- ファクトベースの数ページのレポートを先に配布し、
- 数分間読んでもらい、
- その後ディスカッションする。
- アマゾンにはプレゼンを使った会議はほとんどない。
アーキテクチャ
組織
2 Pizza Team
Amazonのチームは2 Pizza team。
- ピザ2枚でまかなえる人数がちょうどいい、という発想。
- アイディアを早く形にしてフィードバックにすばやく対応するには、大規模な組織ではなく少数精鋭でやったほうが効率的。
- AWS含め様々なプロジェクトで適用されている。
こうして作られた2 Pizza teamは、作るものに対するすべてのオーナーシップを負う。
- プロダクトの計画策定 ロードマップ
- 開発
- 運用、カスタマーサポート
"You build it, You run it."
という観点で見ていくと、こんな問答になる。
チームの動き方
全ての機能はサービスチームに存在するが、自身の役割に集中している。
- 開発、ディレクション、支援など、個々がそれぞれの担当業務を専任している。
- (自分たちでお守りをすることになるので)夜遅く起きないようにするために必死に作る。
開発方法についてもチームに権限が与えられている。
こうした動きを実現するためには、チームとして高い水準を維持する必要がある。
- オンボーディングと呼んでいるトレーニング。
- 定義されたパターン、プラクティス。
- レビュー。
- 内部的な技術共有。
- Our Leadership Priniciple
- これについては後程述べる。
- といった原則を徹底的にやっている。
パイプラインについては、上述のカルチャー(独立かつ自由選択的な多数のチーム)から、
- セルフサービス。
- テクノロジ非依存。
- ベストプラクティス。
- 単一目的のサービス群。
- を提供するためのツール群を社内で共有している。
- 利用するかも裁量だが、90%以上のチームが使っている。
こんな感じで、各チームが開発からデリバリまで並列に動くことになる。
- 年間5000万回ぐらいのデプロイが行われている。
AWSは昨年1年間だけで1400ぐらいの機能、サービスをリリースしている。
- ただ、これは対外的にアナウンスしたものだけ。細かいリリースはもっと多い。
カルチャー
文化の根底にはOur Leadership Principleがある
- 14個の行動規範。
- Amazonでは、マネージャであるかどうかに関係なく、全員がリーダとして動くことを求められる。
Web上で公開されている。
- ちなみに中身は何年かに一回変わったりする。
- ただし、一番最初の原則と最後の原則は不変。
- ちなみに中身は何年かに一回変わったりする。
人事評価にも組み込まれている。
以前からもこのOur Leadership Principleは知っていたが、入社して驚いたのは、普段の会話でこのキーワードが出てくること。
- コミュニケーションにおける共通言語として使われている。
- 社外の人が言われても、何のことか分からないが、社内だとニュアンスが伝わる。
Amazonの社員を捕まえて『どのOLPが好きか?』と聞くと、それぞれ異なる答えを返してくれるだろう。
Our Leadership Principle
Customer Obsession
- 全てはお客様から、という発想。
- Empty chairという慣習がある。
- 会議を行うとき、あえて椅子の一つを空けておき、そこにお客様が座っているかのように意識して会議を行う。
OwnerShip
- 長期的な視野に経って役割分担をすること。
- テストで重要なこととして、すべてを自動化しようとしている。
- 運用も全て自動化しようとしている
- 自動化が非常に重要、という考え方が根付いていて、実現している。
- テストをしやすいようにアーキテクト、デザインし、
- テストや運用を自動化するためのアプリのアーキテクチャを考えている。
Dive Deep
Learn and be curious
- 深堀していく。
- Rootcause analysys
- 5Whys
- いわゆる『なぜなぜ』と同じようなことをやっている。
- Brownbag sessions
- 社内勉強会。ランチボックスを持って集まって取り組みをシェアしたりしている。
Frugality
- お客様にとって重要でないことにお金を使わない
- Door Desk
- 社員の机はドア用の板に木の足をつけた簡素なものを使っている。
- 創業時の気持ちを忘れないようにするため。
- この影響で、目黒のオフィスではドアが天井に並んでいたりする。
Think big
- お客様に貢献するために大きな視点を持つ。
- 常識にとらわれない。
Bias for action
- スピード重視。
- 取り組みにはやり直しがきくことも多い
- プロトタイピングとフィードバック。
Hire and develop the best
- 採用時に高いバーを維持する
- 各チームが採用活動をしていると話したが、人が足りないから採用する関係上、本来求めるべきレベルを下回っていても採りたくなる心理がある。
- そこで、そのチームに直接関係ない人が採用に入ってバーを上げるという取り組みをしている。
- カルチャーにフィットするかを非常に重視する。
- カルチャーに合わない人だと、会社の成長を妨げてしまうので。
- 採用時に高いバーを維持する
Have backbone;Disagree and commit
- 敬意をもって異議を唱える。
- 偉い人に対する反論があっても空気を読んで言わない、とかいうのはやめよう、という話。
- ただし、決定には全面的にコミットする。
- 敬意をもって異議を唱える。
Invent and simplify
- イノベーションとインベンションを求めてシンプルに。
- コード、プロセス等全てにおいて。
- イノベーションとインベンションを求めてシンプルに。
Are right, A lot
Earn Trust.
- 話をよく聞く。
Insist on the Hightest Standard
- 常に高い水準。
- 同じ失敗、問題を繰り返さない。
- コードレビューを非常に重視している。
Deliver Results
- 決して諦めない。
重視している点
こういうことを求めていくと『寝ずに働く』しかない。
- のではなく、重要なことにフォーカスするようにしている。
イテレーションを重視している。
- 必ずしも開発に限らない。
- 溜め込みすぎずに、小さくしてなるだけ繰り返す。
- 貯め込むと頻度も下がってしまうのでよろしくない。
MVP(Minimum Viable Product)
- としてモノを作っている。
- 最小限の仕様でモノを作って、お客様のフィードバックをもとにプロダクトを成長させていく。
- マーケットに届ける時間と機能セットのどちらを優先するかは悩ましいが、トレードオフして必要最小限の仕様で届けていく。
- いろいろ考えて、でかいモノを作っても、お客様にマッチしなかったら嬉しいものにはならない。
さいごに
- Every day is still Day Oneという言葉がある。
- 常に毎日が最初の一日である。
- 現状に満足せずに新しい挑戦をし続けよう。