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
Mercari Engineer's meetup for students vol.2
Search
sapuri
September 25, 2019
Technology
0
2.6k
Mercari Engineer's meetup for students vol.2
Mercari Engineer's meetup for students vol.2 の発表資料です。
https://mercari.connpass.com/event/145420/
sapuri
September 25, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
Why every SwiftUI developer should care about the Environment - iOSKonf25
peterfriese
0
160
Next.jsと状態管理のプラクティス
uhyo
6
2.4k
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
28k
SONiCにて使用されているSAIの実際
sonic
0
330
AIフレンドリーなプロダクト開発を目指して 〜MCPを橋渡しにした環境移行〜
shinpr
0
140
newmo の創業を支える Software Architecture と Platform Engineering
110y
5
670
Azure の裏側を支える SRE の世界
tsubasaxzzz
2
210
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
75
21k
スイッチのBMC、つかってますか?
sonic
0
480
使えるデータ基盤を作る技術選定の秘訣 / selecting-the-right-data-technology
pei0804
10
1.7k
インラインRBSコメントに鯛pe checkersもニッコリ
sansantech
PRO
2
200
ホワイトボックス& SONiC アーキテクチャ(全体像) - SONiC Workshop Japan 2025
ebiken
PRO
1
430
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
It's Worth the Effort
3n
184
28k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Code Review Best Practice
trishagee
68
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
A better future with KSS
kneath
239
17k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
1 Mercari Engineer's meetup for students vol.2 2019/09/25 @sapuri
2 Backend Engineer Merpay NetPayment Team 2019年4月 メルペイ入社 Twitter: @sapuri_tappuri
辻野 祐希 (@sapuri)
3 インターン Blockchain Team Software Engineer, Blockchain 2017/12 - 2018/06
インターンから配属まで 新卒入社(研修) Software Engineer 2019/04 他社インターン COLOPL, Inc. CyberAgent, Inc. Nintendo Co., Ltd. チーム配属 Merpay NetPayment Team Software Engineer, Backend 2019/06
4 インターン Blockchain Team Software Engineer, Blockchain 2017/12 - 2018/06
インターンから配属まで 新卒入社(研修) Software Engineer 2019/04 他社インターン COLOPL, Inc. CyberAgent, Inc. Nintendo Co., Ltd. チーム配属 Merpay NetPayment Team Software Engineer, Backend 2019/06
5 「Mercari X」もお披露目。メルペイ CTOが描く、信用と価値交換「 Mercari Tech Conf 2018」レポ | mercan
(メルカン) Mercari X
6 「Mercari X」もお披露目。メルペイ CTOが描く、信用と価値交換「 Mercari Tech Conf 2018」レポ | mercan
(メルカン) Mercari X
7 インターン Blockchain Team Software Engineer, Blockchain 2017/12 - 2018/06
インターンから配属まで 新卒入社(研修) Software Engineer 2019/04 他社インターン COLOPL, Inc. CyberAgent, Inc. Nintendo Co., Ltd. チーム配属 Merpay NetPayment Team Software Engineer, Backend 2019/06
8 • 約2ヶ月間の研修 • Training Week ◦ 各分野の基礎的な技術的知識を身につける ▪ Go、Microservices、Backend、Mobile
App、Frontend、AI、QA、Security • Scrum Training ◦ 新卒同士でチームを組んでスクラム開発を体験する ◦ 開発するプロダクトを考えるところからプロトタイプ実装までの全てをやる ▪ どれだけのインパクトがあるか、市場規模は、競合は、もしリリースしたら利益はどれぐ らい見込めるか... ▪ 2, 3週間でプロトタイプを実装して発表する 新卒研修
9 インターン Blockchain Team Software Engineer, Blockchain 2017/12 - 2018/06
インターンから配属まで 新卒入社(研修) Software Engineer 2019/04 他社インターン COLOPL, Inc. CyberAgent, Inc. Nintendo Co., Ltd. チーム配属 Merpay NetPayment Team Software Engineer, Backend 2019/06
10 メルペイネット決済 メルペイ決済がオンライン( EC)・オフライン(お店)双方で可能に お店や サイトで 商品を購入 使わなくなったものを メルカリで出品 メルカリの売上金を
サイトで利用 5月29日にリリースされました
11 バックエンドエンジニアとしてのメルペイ サービスのつくりかた
12 メルペイの裏側 メルペイのマイクロサービスの構築と運用 / CloudNative Days Tokyo2019 - Speaker Deck
GCP上にデプロイされている 40以上のマイクロサービスによってメルペイが動いている
13 • 複数のマイクロサービスを通って決済が行われる • 各サービスはそれぞれ異なる GCP Project 持ち、Project ごとに Spanner
や Pub/Sub などを管理する マイクロサービスアーキテクチャ
14 • GCP Project の作成、Terraform ◦ GCP 上や Kubernetes 上のさまざまなリソースをコードで管理
• コードを書く ◦ 基本的には Go で実装する ◦ サービス間は gRPC で通信する ▪ Protobuf は単一のリポジトリで管理されている ◦ 必要になった人が実装してプルリクを送る(場合による) ▪ そのマイクロサービスのオーナーにレビューしてもらう • デプロイ ◦ Circle CI でテスト ◦ Cloud Build で Docker Image を作成 ◦ Spinnaker で Docker Image を GKE にデプロイ テスト、デプロイ、モニタリング、運用をそのサービスの開発者が行う サービス開発の流れ
15 サービス開発の流れ
16 実際メルペイで働いててどう? :thinking_face:
17 コアタイムが12時から16時 エンジニアには夜型が多い(要出典) 出社時間の自由度が高い
18 現代的な技術スタックや開発環境を利用できる Kubernetes, Spanner, Terraform, Microservices, etc. GCPのリソースを自由に使わせてくれる会社はそうないと思います
19 新卒だから◦◦みたいな扱いはされない 個人の裁量が大きい
20 ドメインリード制 • ネット決済の Backend チームではタスクをある程度大きな分類に仕分けて、 それぞれの担当を決めている(このタスクの分類がドメイン) • それぞれのドメインに Tech
Lead と PM がいる • → チームの Tech Lead に案件が集中しにくい ◦ チームのスケーラビリティが向上する • → 新人でも、ドメインの Tech Lead として仕様の検討から案件に関わる ◦ 特にネット決済は他のチームとの関わりが多いです
21 より良い労働環境のために... 無いものは創る文化
22 Mercafe Pre-order App Slackコマンドからカフェの注文と決済ができる!
23 Mercafe Pre-order App
24 Mercafe Pre-order App
25 • メルカリのOSSリポジトリ ◦ https://github.com/mercari • Spanner のためのツール ◦ wrench:
Schema management tool for Cloud Spanner ◦ yo: A command-line tool to generate Go code for Google Cloud Spanner ◦ zagane: A static analysis tool which can find bugs in spanner's code メルカリのOSS
26 • メルペイの裏側 ◦ 40以上のマイクロサービス ◦ 大まかなサービス開発の流れ • メルペイの労働環境 ◦
出社時間の自由度が高い ◦ 現代的な技術スタックや開発環境を利用できる ◦ 個人の裁量が大きい ◦ 無いものは創る文化 ◦ 周りの人たちが優秀 モノを創るのが好きな人にとっても、技術が好きな人にとっても いろんなチャレンジができて良い職場だと思います☺ 締め