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
推薦によるプロダクト改善とマイクロサービスが噛み合った話
Search
Hazumi Ichijo
June 07, 2023
Technology
2
4k
推薦によるプロダクト改善とマイクロサービスが噛み合った話
https://findy.connpass.com/event/283285/
での発表資料
Hazumi Ichijo
June 07, 2023
Tweet
Share
More Decks by Hazumi Ichijo
See All by Hazumi Ichijo
Rubyのコード削除したい時 僕がやること
hazumirr
0
180
テーブル駆動テストと状態
hazumirr
4
2k
オンラインテストしようと思った その日に開始できる環境を目指して
hazumirr
0
940
ChatGPTで僕が知っていることまとめ
hazumirr
3
3k
プロダクトチームとどう 協業し分析環境を改善するか
hazumirr
2
1.5k
bqv速習会
hazumirr
6
6.8k
Protobuf on Rails Tips
hazumirr
1
940
Before Chaos Engineering
hazumirr
1
810
推薦のためのdata pipelineのモニタリングとロギング
hazumirr
3
5.3k
Other Decks in Technology
See All in Technology
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
240
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.4k
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
220
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.3k
ユーザーストーリーマッピングから始めるアジャイルチームと並走するQA / Starting QA with User Story Mapping
katawara
0
200
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
130
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1.1k
Datadogとともにオブザーバビリティを布教しよう
mego2221
0
140
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Building Applications with DynamoDB
mza
93
6.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Side Projects
sachag
452
42k
Speed Design
sergeychernyshev
27
790
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Making Projects Easy
brettharned
116
6k
Designing Experiences People Love
moore
140
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Transcript
© 2023 Wantedly, Inc. 推薦によるプロダクト改善と マイクロサービスが噛み合った話 みんなの経験から学ぶ、マイクロサービスへの挑戦と課題 LT大会 Jun. 7
2023 - Hazumi Ichijo
自己紹介 © 2023 Wantedly, Inc. 一條 端澄 @hazumirr/@rerost 略歴: 2018~
: ウォンテッドリー株式会社 • 2018/04~ 推薦基盤チーム Eng ◦ 2019/10 推薦ロジックのマイクロサービス化 • 2021/09~ 推薦チーム PjM • 2022/06~ 推薦チーム Leader 趣味: テトリス・旅行
自己紹介 © 2023 Wantedly, Inc. 一條 端澄 @hazumirr/@rerost 略歴: 2018~
: ウォンテッドリー株式会社 • 2018/04~ 推薦基盤チーム Eng ◦ 2019/10 推薦ロジックのマイクロサービス化 • 2021/09~ 推薦チーム PjM • 2022/06~ 推薦チーム Leader 趣味: テトリス・旅行
© 2023 Wantedly, Inc. https://www.wantedly.com/projects
目次 1. チーム構成の説明 2. 問題点 3. 直後に得られた効果 4. 3,4年経っても継続して得られた効果 5.
なぜ噛み合ったか © 2023 Wantedly, Inc.
チーム構成 © 2023 Wantedly, Inc. データサイエンティスト (以降 DS) 推薦基盤 (Backend,
MLOps) 推薦チーム
チーム構成 DS: 推薦アルゴリズムを構築する 推薦基盤: 安定したデリバリーをする © 2023 Wantedly, Inc. ユーザー
推薦基盤 DS
チーム構成 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc.. DS 推薦基盤
チーム構成 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc.. Python Ruby on Rails
チーム構成 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc.. 依存関係が思ったより複雑
問題点 1. 依存関係が複雑 • 不必要な認知負荷 • スコアを改善したくても複雑で大変 2. 障害時の影響範囲を狭められない •
RDBやElasticsearchが相乗りしている状態 • 依存関係が複雑なので、思わぬところも壊れてしまう 3. 並列処理を行えない • レスポンスタイムによりプロダクト改善に制約がかかる © 2023 Wantedly, Inc.
マイクロサービス化 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc..
マイクロサービス化 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc.. ここをマイクロサービス化 & 依存の整理
マイクロサービス化 © 2023 Wantedly, Inc. 募集のスコア ユーザの入 力に合わせ て募集推薦 iOS
Android Web 募集一覧 API Push通知 発見タブ API etc..
マイクロサービス化 © 2023 Wantedly, Inc. 募集のスコア iOS Android Web DS
他のチーム 推薦基盤 ユーザの入 力に合わせ て募集推薦 募集一覧 API Push通知 発見タブ API etc..
マイクロサービス化 © 2023 Wantedly, Inc. 募集のスコア iOS Android Web Python
Ruby on Rails Go ユーザの入 力に合わせ て募集推薦 募集一覧 API Push通知 発見タブ API etc..
マイクロサービス化の結果 1. デリバリーのリードタイムが短縮 • 1週間 -> 2,3日 2. 障害時の影響範囲が局所化 •
全体に波及する障害はごく僅かに 3. レスポンスタイムが向上 • 2000ms -> 200ms © 2023 Wantedly, Inc.
マイクロサービス化して3,4年経過後 1. DSだけでリリース可能に • 2,3日 -> 30分 • https://www.wantedly.com/companies/wantedly/post_articl es/309759
2. スケーラビリティが向上 • データ量が10倍に • https://www.wantedly.com/companies/wantedly/post_articl es/300907 => これらの変更もあり、施策数が増えプロダクトのコア指標が継続的に向上 © 2023 Wantedly, Inc.
なぜ噛み合ったか 1. チームが出すユーザーへの価値や能力と切り方がマッチ • 認知負荷を下げる • チームの境界と一致 => 単独で改善ができる 2.
責務が明確 • ユーザーとユーザーの入力に応じ適切な募集を出す 3. ユーザー価値が高い箇所 © 2023 Wantedly, Inc.
© 2023 Wantedly, Inc.