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
WEBサービスを成り立たせるAWSサービス
takano0131
1
180
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
310
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
10
5k
Wasmの気になる最新情報
askua
0
130
Liquid AI Hackathon Tokyo プレゼン資料
aratako
0
110
LLMプロダクトの信頼性を上げるには?LLM Observabilityによる、対話型音声AIアプリケーションの安定運用
ivry_presentationmaterials
0
550
LLMアプリの地上戦開発計画と運用実践 / 2025.10.15 GPU UNITE 2025
smiyawaki0820
1
640
生成AI時代のセキュアコーディングとDevSecOps
yuriemori
0
130
React19.2のuseEffectEventを追う
maguroalternative
2
500
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
340
Wasmのエコシステムを使った ツール作成方法
askua
0
220
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
It's Worth the Effort
3n
187
28k
Done Done
chrislema
185
16k
How STYLIGHT went responsive
nonsquared
100
5.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Writing Fast Ruby
sferik
629
62k
GitHub's CSS Performance
jonrohan
1032
470k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Rails Girls Zürich Keynote
gr2m
95
14k
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以上のマイクロサービス ◦ 大まかなサービス開発の流れ • メルペイの労働環境 ◦
出社時間の自由度が高い ◦ 現代的な技術スタックや開発環境を利用できる ◦ 個人の裁量が大きい ◦ 無いものは創る文化 ◦ 周りの人たちが優秀 モノを創るのが好きな人にとっても、技術が好きな人にとっても いろんなチャレンジができて良い職場だと思います☺ 締め