「0.1秒でも遅ければ、お客さまを守れない」不正検知領域に挑むメルペイのエンジニアが日々感じる“奥深さ”

「信用を創造して、なめらかな社会を創る」──メルペイが創業時から掲げるミッションの実現に向けて、欠かせないキーワードとも言えるのがTrust and Safety(TnS)です。

Trust and Safety(TnS)とは、不正検知を含む禁止行為の監視や対応を行う役割のこと。キャッシュレス決済、オンラインショッピングの需要が高まっていることもあり、TnSの役割はより一層重要なものとなってきています。そんなメルペイのTnSを支えているのが、Trust&Safety Product(以下TnS Product)チームです。

そしてTnS Productチームには不正検知領域での経験が深いエンジニアが多く集まっている…と思いきや、実は「不正検知領域は初めて」というメンバーもいたりします。なかには新機能開発が中心だったエンジニアもいるのですが、なぜ「不正検知」領域を選んだのでしょうか?今までの開発との違いはどこに感じている?

そこで今回は、TnS Productチームのエンジニアリングマネージャーである浅野 潤(@ntk1000)、テックリードの孫 星越(@singyue)、オリジナル機能の開発を担当する李 麗娟 (@rei)にインタビュー。聞き手は、チームマネージャーの田中啓介(@kei.t)です。

※撮影時のみ、マスクを外しています

この記事に登場する人


  • 浅野 潤(Jun Asano、@ntk1000)

    2019年12月にメルペイへ入社。EMとしてネット決済、iD決済、バーチャルカード及びTnS Productを兼務。2021年9月よりTnS Productチーム専任となる。

  • 孫 星越(Xingyue Sun、@singyue)

    2015年に新卒としてジーニーへ入社。フルスタックエンジニアとして複数のプロジェクトを担当。2018年9月にメルペイへ入社。メルペイスマート払いの立ち上げに関わったのち、現在はTnS ProductチームのTL。

  • 李 麗娟 (Reiken Ri、@rei )

    2020年3月にメルペイへ入社。Backendエンジニアとして、コードペイチームで開発を担当したのち、現在はTnS Productチームでおもに不正検知開発を担当。

  • 田中啓介(Keisuke Tanaka、@kei.t)

    2007に年三井住友カードへ入社し、不正検知ルール、新しい技術の導入など不正対策やRPA等を活用したオペレーションの業務効率化を主な担当として従事。2020年メルペイに入社し、メルペイ・メルカリの既存サービス、新規サービスに関する不正監視施策やクラウド移行作業などに従事。直近はマネージャーとしてKYC、TnS Productを担当。


アドテク系からキャリアチェンジした理由

@kei.t:今回インタビュアーを務める@kei.tです。簡単に自己紹介をしますと、私は前職のクレジットカード会社に13年ほど勤めていて、現在はメルペイで不正検知を行うTrust&Safety Product(以下TnS Product)のチームマネージャーをしています。よろしくお願いします!

まず、みなさんがTnS Productのチームにジョインするまでの経歴を聞きたいです。@reiさんからお願いできますか?

@rei:私は新卒でアドテク系の会社に入社し、おもに広告運用をしていました。具体的にはECサイトの新規顧客を増やすために、アフィリエイトなどの集客チャネルに登録した商品データを最適化する「DFO=Data Feed Optimization(データ・フィード・オプティマイゼーション)」を担当していたんです。

その後、スマホ決済サービスを手がけていたOrigamiへ転職。そこではマーチャント(加盟店)向けの審査に関するサービスを開発していました。2020年2月にメルカリグループ入りしたと同時に、メルペイへ入社しています。最初はコードペイチームとしてQRコード決済まわりの開発を行い、2021年2月からはTnS Productチームへ異動。現在は不正検知を行うためのオリジナル機能「オンラインJudge Services」などを開発しています。

李 麗娟 (@rei)

@singyue:実は自分も@reiさんで同じで、1社目はアドテク系の会社です。当時、広告プラットフォームの開発をしていました。チームも少数だったので、前職はフルスタックエンジニアとして幅広く仕事をしてましたね。その後、2018年にメルペイへ入社しました。

@kei.t:アドテク系の会社から、なぜメルペイだったんですか?

@singyue:当時の日本はビットコインを筆頭に仮想通貨・暗号通貨が盛り上がりを見せているタイミングで、今ほどQRコード決済が普及していませんでした。ただ、個人的には今後QRコード決済は盛り上がるだろう、という思いもあったんです。そうしたなか、当時のメルペイはまだサービスがありませんでした。ゼロから開発サービスに携われて、なおかつQRコード決済の領域で新しい挑戦ができそうと思い、メルペイへ入社。TnS Productチームに来るまでは、「メルペイスマート払い」などを担当していたCredit Design(クレジットデザイン、以下CD)チームにいました。

孫 星越(@singyue)

@kei.t:@ntk1000さんは、いかがですか?

@ntk1000:お2人と同じで、1社目はマーケティングリサーチの会社で、アドテク系のプロジェクトも担当していました。その後、人材企業の社内ベンチャーに参画し、そこでエンジニアからプロダクトマネージャー、エンジニアリングマネージャー(EM)という順にジョブチェンジしました。

そこでの経験を踏まえ、EMとして他の場所でチャレンジしたいと思ってメルペイへ入社。入社後はネット決済やTnS Product(当時はAML)、iD決済など、3つのチームを掛け持ちしていましたね。2021年9月からTnS Product専任のEMとなりました。

「不正する人をいかに防ぐか」を考えてシステムをつくる新たな観点

@kei.t:みなさんは、バックグラウンドに不正検知領域があったわけではないんですよね。なぜTnS Productチームへの異動を決めたんですか?

@singyueTnS ProductチームのBackendエンジニアに求められる技術スタックは、他チームとは異なります。例えば、公開されていないリポジトリもあるなど。技術スタックだけでなくエンジニアリングに対する考え方も異なるため、新しい分野に挑戦するつもりで異動を決めましたね。

@ntk1000:自分の場合は前任者が退職し、「引き継ぎをお願いできないか」と言われたのが正直なきっかけです(笑)。ただ、実際にTnS Productチームに行ってみると、自分の強みを活かせる領域だと思えるところがあったんですよね。TnSは決済などのフロント部分というより、基盤を整えるための裏側の仕組みです。自分のエンジニアとしてのは得意領域は基盤を整えていくことにありました。また、前職でも活用していたAWSが導入されていたので、技術的に親和性もあったんです。

浅野 潤(@ntk1000)

@rei:私はメルペイのローテーションプログラムの仕組みを使い、TnS Productチームに異動してきました。ネット決済を行うチームへの異動も考えていたのですが、それでは当時やっていたコードペイチーム時代とやることがあまり変わらない。個人的にも新しいことが好きなので、AWSやSplunkを使っているTnS Productチームが良いと思ったんです。

実際に異動してみると、自分のこれまでのシステム設計に対する考え方と違っていて驚くことばかり。例えば、コードペイでは決済のトランザクションを気にする必要がありました。なぜなら、「お客さまに決済してもらうこと」を前提にシステムをつくっていたから。でもTnS Productチームでは「決済させないこと」のほうが大事だったりする。売上より「不正する人をいかに防ぐか」を考えてシステムをつくる観点は面白いですね。

「常に進化」をやめてはいけないプレッシャーと魅力

@kei.t:TnS Productチームでは、どのような仕事をしているのでしょうか?

田中啓介(@kei.t)

@ntk1000:EMとして、基本的にはBackendチームのアサインを調整したり、キャリアのサポートをしたりしています。また、TnS Productチームは自社開発した独自の基盤を使っているのですが、それをメルペイ以外のサービスにも採用しようとしていくプロジェクトも進めています。

@singyue:僕はテックリード(TL)として、技術の選定などを行っています。TnS Productチームの仕事は不正検知ということで、悪い人と戦っている感じがありますね。とはいえ、システムを進化させれば、それをハックしようとする人のレベルも高くなっていく。常に進化していかないといけないところには難しさを感じることもあります。システムの仕様も頻繁に変わりますし、今までにないアイデアで施策を行う必要もある。なので、細かな技術の調整はけっこうしていますね。

@kei.t:@singyueさんはCDチームでも機能開発をしていましたよね。TnS Productチームで「ここが違う」と感じたところは?

@singyue:CDチーム時代は、トランザクションを考えることが多かったです。一方でTnS Productチームは大量のデータからできるだけ早い段階で集計し、不正かどうかを判断していかなくちゃいけない。そのスピード感を考えながら基盤を作る点は、TnS Productチームならではです。

@kei.t:CDチームだと、そこまで複雑になることはなかった?

@singyue:そうですね。CDチーム時代の難しさは残債、手数料などの計算が複雑だったことです。TnSは、サービス全体の決済データを見つつ、お客さまの取引履歴・属性などが変わったなどの行動から不正かどうかを判断しなければなりません。監視するデータ量が多くなった分、複雜性は上がっています。

@kei.t:その変化にはすぐに慣れましたか?

@singyue:不正検知に関する技術情報が少なかったことには苦労しましたね(笑)。不正検知システムは一般的な決済技術のように、技術そのものがシェアされることがほとんどありません。なぜなら、その技術をハックしようとする人に仕組みがバレてしまうから。だから、探しても探しても見つからなくて…。勘所を見つけるまで、少し時間がかかった記憶があります。大変だったけど、振り返ってみればここもおもしろさの1つと言えるかもしれません。

@rei:大変だけど、目に見える効果を得られるのも魅力ですよね。不正のルールを事前検証してからリリースしているのですが、こうすることで実際にどれくらい防げたかがわかります。これまでの開発では効果を実感しづらいところもありましたが、TnS Productチームでは具体的な成果がわかるので、手応えを感じられるんです。

「不正検知できる機能をリリースして終わり」じゃない

@kei.t:Judge Servicesについても聞きたいです。メルカリではSplunkを活用し、決済後に不正を検知する仕組みがありました。具体的に言うと、取引発生後5〜10分で検知し、不正だと判断したら配送を止めるなどしていたわけです。ただ、これが決済サービスだと「遅い」。決済後に不正がわかっても、お金が戻ってくるわけではないし、さらに不正が行われてしまうケースもある。そのため、メルペイでは即時に不正を防ぐシステムが必要でした。

そして、そのシステムをすべて設計したのが@singyueさんです。振り返ってみて、どうですか?

@singyue:当時はチャージバック(クレジットカード会社がECサイトでの売上を取り消すこと)を防ぐためのプロジェクトが始まっていました。そのなかで「リアルタイムで不正検知できるのがマスト」となり、実際にシステム開発することになったんです。決済では低レイテンシー(遅延時間)のなかで、いち早く検知することが大事。なので、メルペイのJudge Servicesでは、多くのデータを前処理してから保存し、すぐに返せるデータ設計にしなければなりませんでした。そこは、苦労しましたね。

@ntk1000:TnS Productチームでは「不正検知できる機能をリリースして終わり」ではありません。不正対策は、ハックする側と防ぎたい側の双方が常にせめぎ合っている状態です。そのため、常に新しい不正対策をアップデートすること前提で開発していくことになるんです。同時に、新たな不正対策のための機能も考えていく。その両軸で動いています。

また、不正対策という役割は他チームとの連携も欠かせないです。EMとして、チームメンバーの強みやキャリア志向を踏まえて、どのように各プロジェクトへアサインするかはいつも考えていますね。

@kei.t:そんなTnS ProductチームのBackendエンジニアには、どういう人が向いていると思いますか?

@singyue:データサイエンスやデータ処理、機械学習にも関わります。なので、バックエンド開発だけでなくデータプラットフォーム、機械学習に興味がある人にはいい環境だと思います。

@rei:データに対して愛がある人は向いているかもしれないですね。複雜なデータを見ながら「こういうことができる」と考えられる人がいい。技術スタックに関しては入社後1〜2ヶ月である程度できるようになりますが、データに対する目線、感覚などは好きでなければ身につかないと思っています。

@ntk1000:自分も、お2人の意見に賛成です。TnSはバックエンドを中心として、データや機械学習、インフラの知識も用いながら、不正対策というドメインを通じてプロダクトを支えていく。そこが面白いところです。

何より今、コロナの影響を受けてオンラインのトランザクションが増えています。我々としても、不正という領域に対して、より瞬発力高く対応できる環境をつくっていかなくちゃいけない。チャレンジングな状況は、今後さらに盛り上がっていきますよ!

メルペイTnS Productチームでは仲間を募集中です!

関連記事 サクッと読める!✨

「Mercari Summer Internship 2022」の募集を開始しました! #メルカリな日々

メルペイ初!QAエンジニア育成&インターンシッププログラム「Merpay QA Summer Training Camp 2022」の募集を開始します! #メルカリな日々

「Mercari Summer Internship 2021」の募集を開始しました! #メルカリな日々

関連記事 読み応えアリ✨