Software Engineer, Backend - Payment Core - Merpay
Salary not provided
GoJava
Japanese only
English: IntermediateJapanese: Intermediate
Minimum year of experience: 5
MercariSoftware Engineer, Backend - Payment Core - Merpay
業務内容
Payment Core チームは、メルカリグループの様々なプロダクトから利用される汎用的な決済プラットフォームを開発しています。特定のプロダクトの機能ではなく、グループ全体の決済を支える基盤(Platform / Foundation)として、再利用可能で拡張性の高い仕組みを設計するのがこのチームの役割です。
このポジションでは、こうした基盤ならではの構造的な課題に、オーナーシップを持って向き合っていただきます。
- 分散トランザクションの整合性:複数のマイクロサービスをまたぐ決済処理で、整合性・可用性・レイテンシのトレードオフをどう設計するかや、冪等性の担保、障害時の補償トランザクション、Saga パターンの適用判断などを、実トラフィックの制約の中で意思決定します。
- 金融水準の信頼性:一度の不整合が金銭的・法的な影響に直結します。監査要件、データの正確性、二重処理の防止といった非機能要件を、開発速度と両立させながら満たす設計が求められます。
- 汎用基盤としての設計:通貨や決済手段、利用するプロダクトが増えても破綻しないよう、抽象度の高い I/F とデータモデルを設計します。多通貨・暗号資産といった性質の異なる対象を、いかに一貫した仕組みの上で扱うかが問われます。
- 外部決済プロバイダとの接続:自社で制御できない外部システムの障害・遅延・仕様差異を前提に、堅牢なフォールトトレランスを設計します。
- 大規模トラフィックの安定処理:金融事業として求められる安定性を維持しながら、AI 時代に加速するグループ各プロダクトのスケールを支えます。
いずれも正解が一意に定まらない問題です。曖昧な要件を自ら定義し、技術的な選択肢を比較し、チームを巻き込んで意思決定をリードできる方を求めています。
- 中核的な決済マイクロサービスのアーキテクチャ設計と技術選定をリードする
- 分散トランザクション管理、外部決済プロバイダ接続、決済履歴データ基盤、法人与信管理などの設計・開発・運用をオーナーシップを持って推進する
- Protocol Buffers + gRPC によるマイクロサービス間 I/F を設計し、長期的な拡張性を担保する
- パフォーマンスチューニング、モニタリング、アラート対応を通じてシステムの信頼性を継続的に高める
- 設計レビューや技術的な議論を通じて、チーム全体の技術力と意思決定の質を引き上げる
開発環境
- 開発言語:Go
- インフラ:Google Cloud (Kubernetes Engine, Cloud Spanner, Cloud Storage, Pub/Sub, etc.)
- 構成管理:Terraform
- 分析基盤:BigQuery / Looker / Data Studio
- モニタリング:Datadog / PagerDuty / Sentry
- CI/CD:Spinnaker / Argo CD
- Knowledge Tool:Confluence / Notion
- AI:Claude Code / Codex / Gemini / etc.
- その他:GitHub / Slack
- 開発手法:Agile (Scrum, Kanban, etc.)
応募要件
求める経験・スキル
- メルカリグループおよび各カンパニーのミッションとバリューに共感していただける方
- 5年以上の Web アプリケーション開発の経験
- DB (Spanner, RDB, NoSQL, etc.) におけるスキーマ設計と効率的なクエリ作成のスキル
- Web アプリケーションの運用・チューニング経験、およびセキュリティの知識
- ソフトウェアアーキテクチャの設計とミドルウェア選定の経験
- 曖昧な問題を自ら定義し、オーナーシップを持って開発を推進する力
- 生成 AI を活用した開発フローの効率化を自ら実践し、チームの生産性向上に寄与できる能力
歓迎する経験・スキル
以下の経験を特に高く評価します。
- 大規模・高信頼性が求められる分散システムの設計を主導した経験
- 決済基盤・会計などの FinTech 分野でのエンジニアリング経験、または整合性・冪等性が厳しく問われるシステムの構築経験
- インシデントや技術的負債を、対症療法ではなく構造的に解決した経験
- 設計レビューやメンタリングを通じて、他エンジニア・チームの技術力に影響を与えた経験
- Go、Google Cloud での開発・運用経験 (※Go実務未経験の方でも、Java等での大規模設計経験があれば入社後のキャッチアップが十分可能)
- 新規サービスの立ち上げやサービス成長期におけるチャレンジの経験
- 開発者のリードやマネジメント、プロセス改善の経験
語学力
- 日本語:Independent (CEFR - B2) 必須
- 英語:Independent (CEFR - B2) 歓迎 *業務での使用経験がある方歓迎
最初の6〜12ヶ月で期待すること
入社後すぐに完璧を求めるものではありませんが、このポジションではおおむね以下を想定しています。ミスマッチを避けるための目安としてご覧ください。
- 最初の3ヶ月:決済プラットフォームの全体像とドメイン特有の制約を理解し、Tech Lead やチームメンバーと協力しながら、既存サービスの改善や機能開発を進める
- 6ヶ月時点:1つ以上の決済マイクロサービスの設計判断をリードし、技術的な意思決定にチームの信頼を得ている
- 12ヶ月時点:横断的な技術課題(信頼性・スケーラビリティ・技術的負債など)を自ら定義し、ロードマップに落とし込んで推進している