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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
510
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
98k
Other Decks in Technology
See All in Technology
コミュニティの有益性 ~JAWS Days 2026 での体験を通して~ / The Benefits of a Community ~Through My Experience at JAWS Days 2026~
seike460
PRO
0
270
水を運ぶ人としてのリーダーシップ
izumii19
4
990
千葉での単身赴任からAWSをやり続け、千葉に戻ってきた話
yama3133
1
120
WebGIS AI Agentの紹介
_shimizu
0
560
事業会社における 機械学習・推薦システム技術の活用事例と必要な能力 / ml-recsys-in-layerx-wantedly-2026
yuya4
0
160
アジャイルな経理と Claude Code と経営の未来
kawaguti
PRO
3
190
Kiro Ambassador を目指す話
k_adachi_01
0
130
Flow 不死:AI 時代 DevOps 的不變本質
cheng_wei_chen
2
510
Zenoh on Zephyr on LiteX
takasehideki
2
110
【2026年版】 ベクトル検索とEmbedding最前線
mocobeta
23
7.5k
AIをフル活用してオンコール機能のプロトタイプを2日で作った話 / Building an AI-Powered On-Call Prototype in Just Two Days
nari_ex
0
130
元銀行員がAIだけでアプリを量産!「バイブコーディング実演セミナー 」
tatsuya1970
0
110
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
A Soul's Torment
seathinner
6
3k
How to build a perfect <img>
jonoalderson
1
5.7k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
210
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Agile that works and the tools we love
rasmusluckow
331
22k
Building Adaptive Systems
keathley
44
3.1k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.6k
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