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
“駆け出しPlatformチーム"の立ち上がりとこれから
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
RevComm_inc
September 26, 2024
Technology
270
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
“駆け出しPlatformチーム"の立ち上がりとこれから
RevComm_inc
September 26, 2024
More Decks by RevComm_inc
See All by RevComm_inc
フロントエンドの状態管理とMiiTelにおける事例の紹介
revcomm_inc
3
900
Company Deck -English-
revcomm_inc
4
500
2024-02-07 ソフトウェアエンジニアリングの枠を超えて:テックブログ運営で見つけた自分の役割(DevRel/Tokyo #89 〜テックブログ運営〜)
revcomm_inc
0
140
エンジニア不足の中で どう技術的負債と向き合ったのか RevComm Research の場合 -
revcomm_inc
6
9.7k
Feature Flagについて本気出して考えて実践してみた
revcomm_inc
9
9.1k
快適なテスト体験を実現する、Djangoのテスト思想と工夫
revcomm_inc
0
2.1k
Djangoの特徴とRevCommにおける選定理由
revcomm_inc
1
1.2k
会社紹介資料/Company Deck
revcomm_inc
4
120k
エンジニア向け_会社説明資料/Company Deck for Engineers
revcomm_inc
2
97k
Other Decks in Technology
See All in Technology
【セミナー資料】Claude Code をセキュアに使うための考え方と設定の勘どころ / Claude Code Webinar 20260616
masahirokawahara
2
420
SONiCのLinuxベースを活かしたZabbix監視
sonic
0
230
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
420
AI-DLCを “そのまま導入しなかった”話 ~組織に合わせてアジャストした 私たちの実践共有~
hiroramos4
PRO
0
220
PostgreSQL 19 新機能概要 OSC Hokkaido 2026
nori_shinoda
0
160
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
1
380
フィジカル版Github Onshapeの紹介
shiba_8ro
0
290
いまさら聞けない「仕様駆動開発入門」 〜AI活用時代の開発プロセスを考える〜
findy_eventslides
2
160
Android の公式 Skill / Android skills
yanzm
0
160
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
3k
攻撃者視点で考えるDetection Engineering
cryptopeg
3
2k
Lightning近況報告
kozy4324
0
200
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
698
190k
sira's awesome portfolio website redesign presentation
elsirapls
0
280
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
200
A Soul's Torment
seathinner
6
3k
Paper Plane (Part 1)
katiecoart
PRO
0
9.1k
Color Theory Basics | Prateek | Gurzu
gurzu
0
370
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
How to Talk to Developers About Accessibility
jct
2
240
Are puppies a ranking factor?
jonoalderson
1
3.6k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
970
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Transcript
Copyright © RevComm Inc. “駆け出しPlatformチーム"の立ち上がり とこれから 2024.09.24 @Platform Engineering Meetup
RevComm 玉城 翔
Copyright © RevComm Inc. contents 1. 自己紹介と会社紹介 2. 当時の現状と課題 3.
Platformチームの立ち上がり 4. 過去3ヶ月の取り組み 5. チームのこれから
Copyright © RevComm Inc. 玉城 翔(たましろ かける) - 株式会社 RevComm Technology Dept./Analytics
Div./Analytics Group/Platform Team - RevCommでは主にAmazon OpenSearch Servieceを使った検索システム周りの開発/保守 /運用を行ってきました。 自己紹介 3
Copyright © RevComm Inc. コミュニケーションを再発明し 人が人を想う社会を創る
Copyright © RevComm Inc. 電話営業や顧客応対を自動録音、AIが文字 起こし、解析・可視化することにより、顧 客と担当者が「何を」「どのように」話し ているか分からない、というブラックボッ クス問題を解消し、商談獲得率・成約率の 向上やセルフコーチングを後押しします。
Service ビジネス向けスマート電話
Copyright © RevComm Inc. Culture フルリモート フルフレックス プロフェッショナル 自由と責任を 尊重する文化
Copyright © RevComm Inc. Language and tools 言語/ フレームワーク インフラ/運用管理
コミュニケーション
Copyright © RevComm Inc. Platformチームの 立ち上がりと活動 8
Copyright © RevComm Inc. 開発規模(最近3カ月間のコントリビューター数) • アプリケーションリポジトリ: 34人 • IaCリポジトリ:
13人 開発状況 • 複数の機能チームによるモジュラモノリス開発 • プロダクトの初期ローンチから6年経過したモノレポ • モジュラモノリスのサブアプリケーションが36 MiiTel の開発状況 9
Copyright © RevComm Inc. • サービスのリリース頻度が週1回のため、1回のリリース内容が大規模になる。 ◦ アプリケーションリポジトリでは、頻繁に開発に携わるチームが4チーム、それ以外に2、3チームが不定期に関与 している。 •
リリース内容が大きいため、営業時間外の21時からリリース作業を行い、30分〜1時間程度かかる。 • 本番環境へのリリースは複数チームの変更が含まれるため、気軽にリリースできず、お互いに遠慮し合ってリリースが 滞りがちになる。 • エンジニアの内部作業用コマンド群も同じコードベースで管理しているため、コマンドの追加や改修の反映が遅れ、オ ペレーションに支障をきたすことがある。 • CIの実行タイミングによってテストが不安定になり、失敗することがある。 • サービスに対するメトリクスが十分に整備されていないため、SLAやSLOを正確に設定できない。 • 内部で複雑なリカバリ処理が実行されているため、InternalServerErrorが見逃されることがある。 ◦ これにより、サービスレベルを正確に判断することが困難になっている。 • 複数チームが独自にライブラリを導入しているため、管理責任が不明確になり、ライブラリのアップデートが滞りがち になる。 • 管理責任が不明確なソースコードの改修が、チーム間でたらい回しになることがある。 • 上記のような問題が発生した場合、最終的には長期在籍のベテランエンジニアに確認することが多く、特定の個人への 負担が大きくなる傾向がある。 • etc 当時の課題 10
Copyright © RevComm Inc. 背景 2024年7月、エンジニア組織全体でチームの再編が行われました。MiiTel開発グループ内では、チームトポロジー に基づいたチーム分けが実施されました。その結果、我々のチームは「Platformチーム」というチームタイプとし て立ち上がりました。 チームミッション 他のチームがそれぞれのミッションに集中できるように社内プロダクトを提供して支援する。
Platformチームの立ち上がり 11
Copyright © RevComm Inc. Platformチームの構成と特徴 • Platformチームのメンバーはマネージャーを含めて5人体制になります。 • チームメンバーそれぞれが異なる得意分野を持っており、チームトポロジーに基づくPlatform チームとしての開発は全員にとって初めての経験です。
• RevCommにとってもPlatformチームは前例のない試みだったため、リサーチチーム立ち上げ などの実績を持つマネージャーに開発手法の枠組みを準備してもらい、手探りの状態でスター トを切りました。 Platformチームの立ち上がり 12
Copyright © RevComm Inc. 最初の1ヶ月半..... Platformチームとして管理・提供する内部開発者向けプラットフォーム(IDP: Internal Developer's Portal/Product)や、前述の課題に対する具体的なアクションプランがない状況で した。そのため、立ち上げ当初は以下のような軽微な修正を行いながら、MiiTelの開発環境にお
ける課題の洗い出しに注力しました。 • 軽微な修正例: ◦ Pythonバージョンアップ ◦ 検索システムのPythonクライアント移行 ◦ ライブラリのアップデート ◦ Terraformバージョンアップ ◦ 実行ログの修正 ◦ エラーログの修正 ◦ テストカバレッジの計測 ◦ etc これまでの取り組み 13
Copyright © RevComm Inc. 課題の洗い出しと改善点の特定 • MiiTelの開発環境における課題の洗い出しに注力しました。この段階は後の開発に重大な影響 を及ぼすため、十分な時間をかけて取り組みました。 • 課題の洗い出しを経て、Platformチームとして注力する2つの主要な改善点を特定しました:
1. IaCリポジトリの改善 2. 検索システムの改善 これまでの取り組み 14
Copyright © RevComm Inc. IaCリポジトリの改善 課題 • GitHub Actionsを用いたCI/CDで一部自動化を実現しているが、本番環境へのリリースは複数 チームの変更が同時に発生するため、気軽にリリースできず、リリースが滞りがちになってい
る。 • 一部のリソースが自動化されていないため、terraform planを実行するまでデプロイ状況が把 握できない。 • 過去に存在したチームが開発したソースコードの管理責任が不明確になっている。 • 不要なソースコードが残存している。 これまでの取り組み 15
Copyright © RevComm Inc. 課題に対する取り組み GitHub Actionsを用いたCI/CDで一部自動化を実現していますが、本番環境へのリリースは複 数チームの変更が同時に発生するため、気軽にリリースできず、リリースが滞りがちになって います。 •
Platformチームがリポジトリの管理者として運用を開始しました。 • リリースフローを整備し、各チームに周知を行いました。これにより、各チームの担当者が明 確にリリース作業に参加できる環境を構築しました。 • 定期的なリリース監視を行い、当面の問題を解消しています。 これまでの取り組み 16
Copyright © RevComm Inc. 課題に対する取り組み リリース作業者が気軽にリリースできない根本原因は、CI/CDの一部しか自動化できていない点と、複数チー ムの変更が同時にリリースされる現状にあります。 • 現状のリポジトリ改修では状況改善が難しいと判断し、新しいリポジトリを作成してリソースを移行する方針を採 用。
• CI/CDにAtlantisというセルフホスティングのGolangアプリケーションを使用予定。 • 新リポジトリでは、チームまたはマイクロサービス単位でディレクトリを準備。 • Atlantisを活用し、各チームが独立して自由にリリースできる環境を提供予定。 これまでの取り組み 17
Copyright © RevComm Inc. 検索システムの改善 検索システムにはAmazon OpenSearchを採用しており、MiiTelのデータベースに保存された通話履歴をこのシステムと同 期させることで、MiiTelサービス内で検索機能を提供しています。この構成において、主にデータ同期システムに課題が 存在しています。 課題
• アプリケーションの一部として組み込まれている • 変更の影響が広範囲に及ぶ • オペレーションの制限 これまでの取り組み 18
Copyright © RevComm Inc. 課題に対する取り組み オペレーションの制限 • データ同期の一時停止による課題に対処するため、fan-out構成の導入が進められていま す 。
これまでの取り組み 19
Copyright © RevComm Inc. 課題に対する取り組み アプリケーションの一部として組み込まれている 変更の影響が広範囲に及ぶ • データ同期システムをMiiTelサービスリポジトリから独立させる必要があります。 ※これは検討段階にあり、fan-out構成の導入完了後に実施する予定です。
これまでの取り組み 20
Copyright © RevComm Inc. チームミッション 他のチームがそれぞれのミッションに集中できるように社内プロダクトを提供して支援する。 • セットアップ済みのECS/EKSを社内の必要とするチームに提供している。 • 以下のコンポーネントを適切にバージョンアップデートしている:
◦ EKS ◦ EKS アドオン ◦ EKS ミドルウェア(例:Cluster Autoscaler) ◦ Kubernetes ネイティブサービス(例:ArgoCD) ◦ エージェント(例:Datadog Agent) ◦ etc • セットアップ済みかつインデックス済みのOpenSearchを提供している。 • ECRの脆弱性スキャンなど、適切なセキュリティツールを提供している。 • GrafanaやPrometheusを使用したサービスの監視を実現している。 • CI/CDの管理およびコンサルティングを行っている。 • SRE実践(例:カオスエンジニアリング)を行っている。 • 上記の業務の効率化および自動化を推進している。 チームのこれから 21
Copyright © RevComm Inc. Thank you! 22