Upgrade to Pro — share decks privately, control downloads, hide ads and more …

microCMSのエンジニア組織と文化

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 microCMSのエンジニア組織と文化

Avatar for microCMS

microCMS

May 31, 2023
Tweet

More Decks by microCMS

Other Decks in Technology

Transcript

  1. 目次 2 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  2. 自己紹介 3 #microcms_meetup 大西 智也 / Tomoya Onishi @Tomoya_Onishi エンジニアリングマネージャー/個人アプリ開発者

    iOS(Swift), React(TS), WebAPI(Golang) Appleプラットフォームが得意なエンジニア TomoyaOnishi
  3. 自己紹介 4 #microcms_meetup 1位 未来志向 2位 共感性 3位 親密性 4位 分析志向 5位 回復志向 … 34位 競争性

    ストレングスファインダー 性格など • 好きな食べ物:焼きそば • 嫌いな食べ物:トマト • 走れば間に合う電車には走らないタイプ
  4. 自己紹介(経歴) 6 #microcms_meetup • 2013年 ヤフーに新卒入社 • 社内スタートアップを経験 • XP開発を経験

    • CTO室にて技術の追求 • 2022年5月 microCMSに入社 • SNSアプリ • ヤフーメールiOSアプリ • ライブコマース スモールチームでの開発経験 企画、デザインも一緒に考える リードエンジニアとして様々なチームと連携
  5. 自己紹介(経歴) 7 #microcms_meetup • 2013年 ヤフーに新卒入社 • 社内スタートアップを経験 • XP開発を経験

    • CTO室にて技術の追求 • 2022年5月 microCMSに入社 • ヤフオク、PayPayフリマの開発 • アジャイル開発の一種 ◦ エクストリームプログラミング=XP ◦ 企画から開発までのプラクティスの集まり • ペアプロとテスト駆動、CI/CDなどの自動化 • テストの重要性と自動化、省略で生産性を向上 • コードレビュー省略による生産性の高さを実感 一部の考え方を取り込んでいるので後ほど紹介
  6. 自己紹介(経歴) 8 • 2013年 ヤフーに新卒入社 • 社内スタートアップを経験 • XP開発を経験 •

    CTO室にて技術の追求 • 2022年5月 microCMSに入社 • Web、アプリの技術トレンドのキャッチアップ • 機械学習の実証実験 • その他 ◦ 企業内大学にて、リーダーシップや 組織の知見を学ぶ
  7. 自己紹介(経歴) 9 #microcms_meetup • 2013年 ヤフーに新卒入社 • 社内スタートアップを経験 • XP開発を経験

    • CTO室にて技術の追求 • 2022年5月 microCMSに入社 • 開発本部の大まかな方針、ロードマップ • 生産性向上の仕組み作り
  8. 目次 10 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  9. 技術スタック 11 • インフラ ◦ AWS ▪ DynamoDB ▪ Lambda

    ◦ Amplify → Terraform #microcms_meetup • Web API ◦ Node.js → Golang • Web フロントエンド ◦ React
  10. プロダクト開発チーム 13 #microcms_meetup • 新機能の開発に特化したチーム ◦ ストリームアラインドチーム • 3.5人 •

    PdM、デザイナーと協業 • WebフロントだけでなくAPIも開発 • 複雑なものや中規模以上のものはペアで開発 ◦ リッチエディターv2は2人 ◦ 複数画像フィールドは1人 • 定例は週1のみ ◦ 非同期ワーク ◦ 自律した組織
  11. バックエンド開発チーム 14 • インフラやWebAPIなど バックエンド開発に特化したチーム ◦ プラットフォームチーム • 1.5人... #microcms_meetup

    • プロダクト開発チームの範囲外のほぼ全て ◦ 開発環境の運用 ◦ 新機能のインフラ部分の開発 ◦ CI/CD ◦ Terraform移行 • 他のチームを技術的にサポート • 定例などはなく、自律してタスクを進める
  12. 目次 16 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  13. ワークスタイル 17 • 全社的に非同期コミュニケーションに比重を置いている • タスク管理はClickUp ◦ 誰が何をいつまでにやるかがわかる ◦ 自分のタスクを自分で管理する意識

    • 承認のようなものはない ◦ チームで合意が取れれば問題ない • microマネジメントしない(できない😅) #microcms_meetup 自律した働き方が求められる
  14. 目次 20 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  15. 開発方針 21 • 面倒な部分を省略or自動化して、楽しい部分を増やす ◦ XP開発では、これを徹底していてモチベーションも生産性も高く、 心理的安全性も高かった ◦ プログラミングは楽しいが・・実際はそれだけではない ▪

    リリース作業、動作確認(N回)、コードレビュー、アラート対応、事故対応 ▪ 特にアラートや事故対応は精神エネルギーを使うので消耗する ▪ 大きめの機能なら月曜日リリースでその前の土日から気がかりなんてことも... #microcms_meetup リリースに関するハードルは0にしたい
  16. 開発方針 22 • 当然、単純にやらないにはできないので2つの取り組みで解決する #microcms_meetup ◦ 自信を持ってリリースできるようになる (=心理的安全性の向上) ◦ 必然的にシステムの安定性が向上する

    ◦ 不具合やアラートが減り、事故対応が減 る ◦ リリースの自動化 ◦ コードレビューをやめる ◦ AI ◦ etc… 自動テスト 仕組み →楽しい時間が増える
  17. 目次 25 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  18. ChatGPT 27 • ChatGPT ◦ フル活用する ◦ コードの自動生成 ◦ フォーマット

    ◦ わからないことを聞く ◦ 文章を考えてもらう #microcms_meetup
  19. GitHub Copilot Labs 32 • Language Translation ◦ Node.js→Golangへの書き換え ◦

    性能が微妙だからと言って 思考停止しない #microcms_meetup
  20. 目次 37 • 自己紹介 • 技術スタック • チームと役割 • 雰囲気や文化、ワークスタイル

    • 開発方針 • 生産性をアグレッシブに上げる取り組み • 今後の展望 #microcms_meetup
  21. 今後の展望や考え 38 • AIによって破壊的な生産性向上がもたらされた ◦ ちまちま生産性を上げても仕方ない気持ちになったのでアグレッシブに考えている • エンジニアリングマネージャーの仕事は多々あるが、引き続き生産性の向上を軸に • 世間と同じことをやっていては同じ成長率

    ◦ 他の会社の方が優れたエンジニアがいると考える方が妥当 • LLMの登場でプログラミングの部分では差をつけづらくなる ◦ ワークフロー全体の効率化やこの組織ならいいものを作れるという気持ちの醸成などが より重要になる • 組織が大きくなるとやりづらいことは経験しているので今のうちにトライ&エラー
  22. 採用情報 40 • バックエンドエンジニア、プロダクトエンジニアを大募集! • AWS、Terraform、Golang、インフラ、Web API、Webフロントが得意な人 • タスク管理など自律できる人 •

    フレックスタイム • アディショナル休暇制度あり(法定有給に+10日) • 経営陣も含めてプライベートも大事にするワークスタイル https://jobs.microcms.co.jp/