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.3k
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
BDD(Cucumber)コミュニティが無料提供しているコンテンツの紹介と現在起きている危機
nihonbuson
4
750
8週連続ウェビナー_イチから学ぶFivetran
cmsuzu
0
170
複数の LLM モデルを扱う上で直面した辛みまとめ
kazuyaseki
1
250
生成AI・LLM時代における 機械学習エンジニアとしてのキャリア戦略・開発戦略 / my-career-and-development-strategies-for-ml-engineer-2024
yuya4
4
880
コードレビューを支援するAI技術の応用
akkie76
2
150
戦略的DDDを実践するための跳躍力 / OOC 2024
pictiny
6
4.2k
GraphQLに入門してみた
chiroruxx
2
130
Why do you get AWS certificates
hirosys
0
120
サービスメッシュ環境における OpenTelemetry 活用 / OpenTelemetry in Service Mesh
k6s4i53rx
2
860
AWS アーキテクチャクイズ
yuu26
2
700
やっていきテスト
k6s4i53rx
0
160
匠MethodとRDRAとICONIXとDDDで実現する一気通貫オブジェクト指向開発
haru860
4
2.1k
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.3k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
The Cost Of JavaScript in 2023
addyosmani
13
3.7k
Thoughts on Productivity
jonyablonski
57
3.8k
How to train your dragon (web standard)
notwaldorf
71
5.1k
Embracing the Ebb and Flow
colly
78
4.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
219
21k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
242
20k
Done Done
chrislema
178
15k
What's in a price? How to price your products and services
michaelherold
236
11k
jQuery: Nuts, Bolts and Bling
dougneiner
57
7.1k
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以上のマイクロサービス ◦ 大まかなサービス開発の流れ • メルペイの労働環境 ◦
出社時間の自由度が高い ◦ 現代的な技術スタックや開発環境を利用できる ◦ 個人の裁量が大きい ◦ 無いものは創る文化 ◦ 周りの人たちが優秀 モノを創るのが好きな人にとっても、技術が好きな人にとっても いろんなチャレンジができて良い職場だと思います☺ 締め