メルペイ曾川景介氏、freee横路隆氏、PAY高野兼一氏が語る「お金の価値を支える技術基盤とは」―日本のお金をアップデートする_#02
決済、ビットコイン、会計、資産管理/運用など、テクノロジーを活用したこれまでの金融ビジネスのアップデートが始まっている。7月2日に開催された「日本のお金をアップデートする」勉強会の第二弾では、「お金の価値を支える技術基盤」をテーマに、メルペイ取締役CTOの曾川景介氏、freee CTOの横路隆氏、PAY 代表取締役CEOの高野兼一氏が登壇し、金融サービスで採用されている技術について語った。
メルペイのミッションは「信用を創造して、なめらかな社会を創る」
最初に登壇したのはメルペイの曾川氏。セッションテーマは「メルペイの構想を実現するための技術と組織」。メルペイは金融関連の様々な事業に取り組むメルカリの子会社である。
「メルカリの日米英でのダウンロード数1億800万超、月間のアクティブユーザー数は1050万人。2018年1月〜3月の流通総額は938億円超と、月に300億円はコンスタントにお金が流れる計算となります。つまりメルペイで提供する財布は、300億円が出るものを提供することになる」と曾川氏は説明する。
▲株式会社メルペイ 取締役 曾川 景介氏
2011年、京都大学大学院情報学研究科システム科学専攻修士課程を修了。2011年にIPA未踏ユース事業に採択。大学院修了後にシリコンバレーの FluxFlex社にてWebPayを立ち上げる。ウェブペイ株式会社の最高技術責任者(CTO)としてクレジットカード決済のサービス基盤の開発に従事、LINEグループに参画しLINE Pay事業を経験。2017年11月、株式会社メルペイ取締役に就任(株式会社メルカリの執行役員も兼務)。
メルペイのミッションは「信用を創造して、なめらかな社会を創る」。
「メルカリが『新たな価値を生みだす、世界的なマーケットプレイスを創る』というミッションを果たすために、メルペイが何をすればよいのかを一生懸命に考えました。その中で生まれたのがこのミッションです」と曾川氏は説明する。
メルカリはモノの流動性を高め、いろんな人の間でモノの価値ができるサービスとして成長してきた。
「お金の有無に関係なく、多くの人にこの価値交換に参加してほしいと私たちは思っていますが、それを可能にするにはその価値交換にまつわるお金の問題を解決しなければなりません。そこで、使いたいと思っている人、やりたいと思っている人が、お金がなくても使えるように、やりたいことができるような世界を作っていきたいと考えました。それがミッションの『信用を創造して、なめらかな社会を創る』ということなんです」
お金はやりたいことをやる、欲しいものを手にいれるために必要なリソースである。そのお金を信用という形で提供して、価値の交換をしたり、新しい価値を生み出すことができれば、メルカリはもっと成長できると考え、メルペイというサービスが生まれたのである。
簡単に管理、楽しく支払い、楽しく貯蓄を軸にしたサービス開発
メルペイで提供するサービスでは、フリマアプリ メルカリ内でのグループ決済はもちろん、オフライン・オンライン加盟店で使えるようにするという。
「お金として出したい人もいるので、銀行振込にも対応したい。また、スマートフォンのサービスとして決済だけにとどまらない様々な金融サービスを提供することを考えています」と曾川氏は続ける。
将来的には、投資信託、外貨預金など、手数料が安い形で提供し、多くの人がお金を置いておこうと思えばメルカリの中に置いておける機能も提供することも検討している。
「メルペイ上で使う、貯める、増やすことが可能になる」
メルペイでは、以下の3つのコンセプトを軸にデジタルウォレットの開発を進めている。
- 簡単に管理
- 楽しく支払い
- 楽しく貯蓄
このプロダクトを開発するため、採用したのがマイクロサービスアーキテクチャである。
「Google Kubernetes Engine(GKE)のKubernetes環境下で複数の小さなサービスがつながり、大きなサービスを代替する作りとなっています。また外部の金融機関などが提供するサービスとつなげていくことも想定しています」
気をつけなくてはいけないのは、サービス間のトランザクションの管理。分散トランザクションの解決策として導入したのがState Machine。
「どこかで失敗しても元に戻すことができたり、外部の接続環境が劣化しレスポンスがないときも安全にロールバックできるようになります。非正常に駆動することがないように設計するために、State Machineを導入しました」
State Machineを導入した理由はそれだけではない。並列で動いている複数のマイクロサービスが非同期でも動くようステートの管理をするためでもある。
Go言語を使っている理由について曾川氏は、「型のある言語の多くの人が開発に関わったときに保守しやすいというメリットに加え、実行時にエラーになるとコンパイラで安全性をチェックすることができ、無駄なテストを書かなくても済むため」と語る。
JSONなど型のない言語でもできないこともないが、バーストしたときの責任は、サービス一つ一つのコンポーネントを持たなくてはいけなくなる。
「それをできるだけ防ぐために、横断的なgRPCのプロトコルを用意していて、各サービスが流動して使うようにしている」
セッション終了後は、簡単なQ&A時間が設けられた。
Q1. 分散トランザクションの解決策について。決済が途中で失敗すると、取り消しをして状態を元に戻すことで解決しているが、それ以外の解決方法について何かあれば教えてほしい。
曾川氏:副作用を起こしてしまったモノは、何らかの形で取り消しをする必要があります。日次でデータの整合性のチェックとState Machineである程度リアルタイムに戻していくこと。その選択肢ぐらいだと思います。
Q2. サービスメッシュについてどういう風に取り入れているのか。Kubernetesのオーケストレーション周りのことについて教えてほしい。
曾川氏:今はGKEを使っている。つまりマネージドKubernetesなので、ノードはSpinnakerで管理。人の手を介在しないようにしています。
Q3. 資金移動業の登録をされた。決済プロバイダーとして機密情報のセキュリティ施策について教えてほしい。
曾川氏:PCIDSSは、カード会員情報の保護をするため国際基準で、メルカリ自体は外部サービスにカード番号を預けているので、現状は取得していません。しかし、PCIDSSはセキュリティ基準としてよくできているので、それは参考にしている。メルペイが取得しているのは残高データ。それはGCP上に保存されています。
次のページ :
スモールビジネスを世界の主役にするfreeeの取り組みとは