Developers.IO 2019に行ってきたので興味を惹かれた発表のメモをまとめます。 主にカルチャー系の話ですね。
クラスメソッド 資料
企業理念「オープンな発送と高い技術力によりすべての人々の創造活動に貢献し続ける」はあったが、より具体的な部の理念を作った。 「AWSに関する圧倒的な量のノウハウを用いて、AWSインフラを安く早く構築し、AWSのことをまるっとおまかせしてもらうことで、顧客のビジネスに貢献する」
企業理念+部の理念を実現するために求められる行動を明文化した。
キャリアパスを意識しながら人事考課を実施 (資料より) ### 360度評価の導入 300人突破したぐらい
AWS 公開資料なし?
お客様視点でものを考える 常により良いものを求める 開発前にWorking Backwards 社内の情報共有のためにプレスリリースを書く 2ページのwordドキュメント
長期的に物事を考える Working Backwardsの最終目的が受け入れられていれば途中でうまくいかなくてもその仕事を続けられる
失敗に寛容 失敗したときに得た学びを社内に積み上げる 長期に渡り失敗していない場合は新しいビジネスが生まれる可能性がほぼない 最大の失敗fire phone チームは解散し、アレクサに ノウハウを活かす 全部目標を達成するとできそうなことを目標にしたと言われる。設定目標が低すぎたということ。 目標を達成したかどうかは考慮されない いけると思ったけどいけなかったことを好んでチェックする 学びなどが評価
会社を揺るがすような判断は一般社員に訪れないのでどんどんやろう 訪れたら経営層の問題 メディアは許可なく発信できない
パワーポイント禁止 パワーポイントは喋る人とセット 配置転換になったときわからなくなる 文章は本人がいなくなっても済むようにする
AWSはマイクロサービスアーキテクチャで実装 それぞれのアプリケーションには単一の目的だけをもたせる アプリケーションの連携経路はAPIに統一
最初はメンテナンスしやすい システムが巨大になると一人の人間が理解できる物理限界に どこかいじるとどこに影響あるかわからない クラウド使っているのにスケーリングはCPUとメモリを増やすだけ 把握できなくなると組織の古株が腹くくって判断するしかなくなる デプロイしていいですかというメールが飛び交うccに大量のアドレス。把握してる人探し 組織に新しく配属された人間が全く活躍できなくなる 上の人にYESと言ってもらわないとやりたいこともできなくなる #### マイクロサービスへ 分割されたアーキテクチャに対しては小さいチームしか割り当てないように 2枚のピザでお腹いっぱいになる人数を上限 6~8名 チームがデプロイ、リリースの権限を持つ マイクロサービスアーキテクチャを採用しても最終的なリリース判断が一人では機動能力が全く活かせない 腹くくって任せる必要がある 制御が難しくなる欠点はある イベントドリブン型は非常に重要 せっかくAPI経由の疎結合で非同期に処理できるのにずっとwebソケットで通信しっぱなしとかは避けたい
アジャイルだよねという話はよく聞く ドキュメントを後回しにしようという話 AWSはドキュメンテーションのサイクルはどうしているかという質問が多い アジャイルソフトウェア開発宣言https://agilemanifesto.org/iso/ja/manifesto.html マイクロサービスはAPIを基本として連携 既存のAPIの改修や新規のAPIのリリースは最大限の注意 AWSの場合EC2のAPIはユーザーが使うものと社内の他のサービス開発で使うAPIは同じ APIの挙動に影響を与えるタイプと与えないタイプのデプロイで注意するポイントはある程度変わる 一つのアプリケーションには単一の目的だけ持たすのが基本ポリシー APIの挙動に影響を与えないバージョンアップはそんなに発生しない ほとんど影響を与えるバージョンアップ ウォーターフォールが属性が近い それぞれのサービスがリリースの権限をもった独立したチームが自分たちの判断でリリースできるのが重要 外から見るとアジャイルのように見える AWSでは一つの組織が複数のマイクロサービスを開発しているより、 実際は別々の会社が存在しているに近い構成でやっている
クラスメソッド 資料
どうするか?
-> AWS検証がカウントエオ全員分用意し、興味をもとに案件以外でも技術を触ってもらう
-> アウトプット前提でいろんなイベントに参加
楽しさを阻害しない
責任と裁量を与えてじぶんで仕事を管理 マイクロマネジメントしない
インプットがないとアウトプットできないので、必然的にインプットを行うようになる
ブログを書くことによる副産物-> 自然と登壇できるようになる? いろいろなイベントで約2週間の間に8イベントで約60人のメンバーが登壇
相互理解 信頼関係の確立 埋もれてしまう課題をキャッチアップ 成果を最大にする手伝い プライベートな相談 頻度は1週間または2週間に1回 時間は基本30分
互いを理解し目標や課題に対するアクションプランについて話し合う
自律的にアクションを行う前提でエンジニア自身がタスクをコントロール
進捗報告は大きいものはしてもらうが細かいものはパフォーマンス出してアウトプットに向けてほしい
失敗を買わがる必要のない雰囲気と環境 チャレンジしたことが称賛される
ドーパミン型モチベーションで維持
(資料より)