2022年4月8日(金)にTechPlay主催による「PayPay Growth Tech! ~ユーザー数4500万人、大規模サービスを支えるコーポレートエンジニアによる新機能開発/分析基盤/CRMの裏側~」と題した採用オンラインイベントが開催されました。
2018年にサービスを開始してからわずか数年でユーザー数を急拡大したフィンテック企業であるPayPayは現在約40か国の国から集まった多様なメンバーで構成されています。従業員は数千人になっていますが、まだまだ会社は成長段階であり「未完成」です。現在も新たな価値を世の中に創出するために、日々多くの仲間が世界中から参画し、拡大し続けています。
今回のイベントは、そんなPayPayの社内業務システム開発を担うエンタープライズエンジニアリング部でご活躍いただきたいJavaエンジニア/データエンジニア/セールスフォースエンジニア向けのオンラインイベントでした。
当日はPayPayで働く社員が、PayPayのコーポレートエンジニアの開発の裏側についてお話ししました。イベントに参加した方もそうでない方も、ぜひ本記事をチェックしてみてください。
※本記事の対象となる求人は、日本語能力が必須となるため、文中の資料は日本語のみでのご提供となります。
登壇概要
多数の機能をスピーディに実装するフルスクラッチ開発とは?
マイナンバー連携における本人確認機能で数日かかった認証を2分に短縮した裏側

岡田 寛史(おかだ ひろし)
エンタープライズエンジニアリング部 / 部長
最初に登壇した岡田 寛史氏は、まずPayPayの事業とエンタープライズエンジニアリング部について説明した。
PayPayはヤフーとソフトバンクの共同出資会社という印象が強いが、インドのコード決済サービスのトップ企業であるPaytm社から技術アドバイザリーを受けている。

岡田 寛史
PayPayの年間決済回数は20億回を超えます。ただ、我々としては単なる決済サービスだけでなく、金融、O2O、ソーシャル、P2Pなどと連携することで、スーパーアプリに成長させる構想を描いており、ブランドの統一などを進めています。

PayPayには、約40カ国の国籍から構成される多様なメンバーが集まっている。社内の公用語は日本語と英語。外国人の割合が日本人より多い部署もある。
社内のコミュニケーションは英語・日本語両方で行われており、大きな会議では通訳メンバーが立ち会い、通訳を専門に行うチームもある。資料は英語・日本語両方で作られるので、英語が苦手なメンバーでも、特に苦労することはない。
エンタープライズエンジニアリング部は、約50名の社員から構成され、チームは7つ。日本人が多い部署とのやり取りが多いこともあり、日本人の割合は85%ほどだという。

特徴的なのは、2018年の会社設立後、ここ数年で一気にメンバーが増えたこと。実際、岡田氏ならびに本日の登壇者も、ここ1~2年で新しくジョインした40名ほどの中のメンバーだ。

岡田 寛史
我々の部署はセールス、コーポレート、プロダクトの開発・運用部門、すべての部署とコミュニケーションし、それぞれが事業を進める上で必要な社内業務システムやITサービスの開発を全社横断的に担っています。社内ではEE部と呼ばれています。

マイナンバー連携における大量審査を短期間で対応可能に
続いては、具体的にどのような取り組みで全社の事業推進に貢献しているのか。各部署のケースが紹介された。
まずは、開発2チームが取り組んだeKYCの効率化や内製化について、引き続き岡田氏が紹介した。eKYCとは「electronic Know Your Customer」の頭文字を取った言葉で、オンライン上で本人確認を行う手法や技術を意味する。

岡田 寛史
以前は免許証などの本人確認書類と、顔認証による審査方式のみで、ユーザー自身でスマホのカメラを使って、様々な角度から顔写真を自撮りする手間がありました。また、審査工程のサーバーをサードパーティに依存していたため、申請から承認までに数日かかっていました。このままでは年末年始に実施するキャンペーンに対する、大量の申請処理は難しい状況だと予測しました。

そこで開発2チームは、ICチップが内蔵してあるマイナンバーカードを利用した審査方式システムの開発に取り組んだ。さらに、外部に出していたサーバー連携、審査工程を内製し、効率化することで、最終的な人による目視審査のボリュームを減らすことにも成功した。

岡田 寛史
取り組みの結果、申請から承認までがわずか数分というリードタイムに削減され、1日数万件を超える申請と審査に対応できました。この取り組み以外でも、様々な業務システムの内製化を進めています。

PayPayの大量データを捌く心臓部「分析基盤」
全社データを統合し、1時間単位でレポート配信するアーキテクチャの裏側

三重野 嵩之(みえの たかゆき)
エンタープライズエンジニアリング部 / データマネジメントチーム
続いてはデータマネジメントチームの三重野 嵩之氏が登壇。システムアーキテクチャを紹介するとともに、PayPayならではの特徴を語った。

三重野 嵩之
BigQueryは初期から導入しています。アプリからのデータはもちろん、コールセンター、Google Analytics、Salesforceなどからもデータを取得し、Airflowで管理・モニタリングしています。

スライドにはLooker、Data StudioといったBIツールが示されているが、SQLや直接データを扱えるリテラシーの高いユーザーが多いそうだ。
パフォーマンスとコストの兼ね合いで重要な指針である、スロット(リソース)管理についても説明された。以下のグラフの色の違いは、プロジェクトやリソースの消費量である。
絶対に落としたくないクエリ、落ちてもよいクエリでプロジェクトを分離し、リソースも割り当てており、Flex Slotsも利用。リソースを大量に消費するクエリを自動で落とすなど、運用が楽になったと三重野氏は言う。

クエリの監視においてはLookerを活用。リソースを消費しているクエリのトップ50を可視化している。なお、クエリ監視においては、BigQueryの常設機能INFORMATION_SCHEMAも併用している。

三重野 嵩之
データマートが大きくなるにつれ、どのデータを使って分析を行っているのか、トレーサビリティが難しくなってきます。そこで我々はツールを活用し、BigQueryの実行ログからデータの経路(テーブル)を可視化することで、データリネージしています。

データリネージのlineageとは、日本語に訳すと系統や血統を意味する。データの軌跡が一目で分かるデータマネジメントにおける手法であり概念ともいえる。

三重野 嵩之
データリネージを作成していると、障害が起きたときにどのダッシュボードやテーブルに影響があるのか、依存関係も含めて一発で分かります。データマートの設計時に役立つなど、様々なメリットがあります。
また、データマネジメントチームの主業務、大半を占めるデータエンジニアの役割については以下のように紹介された。

355万カ所超の加盟店で利用され、小規模店舗から誰もが知る大規模チェーンまで、さまざまな法人顧客を最適に支援する法人向け機能のバックエンド開発の裏側

藤田 文彰(ふじた ふみあき)
エンタープライズエンジニアリング部 / セールスフォースチーム / リーダー
最後の登壇は、セールスフォースチームの藤田 文彰氏。まずは、PayPayにおけるセールスフォースを活用した大規模CRMシステムの概要図を示し、次のように語った。

藤田 文彰
Salesforceの領域では、大きな法人から個人商店のような加盟店と、PayPayの利用者のサポート情報をまとめて管理しているのが特徴です。また、大手飲食チェーンといった加盟店の場合は、一つひとつの店舗での管理も行っています。大きな法人の場合は、管理はセールスフォースで行いますが、実際の商談は担当営業が直接行うことが大半です。

スライド右側の領域は自社のインフラであり、業務システムや管理システムは岡田氏が紹介した開発2チームの担当領域。ビッグデータ領域は三重野氏が紹介したDWHであり、こちらもSalesforceとAPI連携している。
さらには、外部のサードパーティアプリとも連携している。サードパーティアプリ連携においては、高いセキュリティを意識。いわゆるIDとパスワード認証ではなく、認証基盤と連携し、情報の暗号化を行うなどSSL認証を導入した。ファイルのダウンロードやアップロードもスキャンなどで徹底した上で、すべての営業活動はSalesforceを軸に行っている。
チームで開発したSalesforceアプリの中から代表的な3つが紹介された。

藤田 文彰
加盟店審査アプリはいかにもSalesforceらしいアプリですが、PayPayでは加盟店が記入するページだけでなく、内容を審査するオペレーターのアクションも同一ページ内で行うといったカスタムを施しています。

「SCナビ」は個店営業が出先で申請や確認、営業向けの通知情報などが簡便に確認できる。PCではなく、iPadでの作業を念頭においたポータルアプリだという。
包括代理店PTNサイトは名称通り、加盟店を包括的に取りまとめる代理店向けのアプリだ。パートナーである加盟店はこのアプリを使えば、Salesforceでの複雑な操作をすることなく、審査依頼や結果を確認できる。代理店は、Salesforceでその状況を確認することができる。
セールスフォースチームでは、主に3つの役割を担うメンバーから構成されている。PM/PMOはビジネスサイドと要求を擦り合せたり、開発工程管理などを行う。エンジニアはそのSalesforceアプリの開発を担う。ただ、外部アプリやシステムとの連携があるので、各システム担当者とのやり取りも多いそうだ。
サービスデスクは、実際に社内でSalesforceを使う社員からの問い合わせに対応したり、Salesforceに関する各種課題を解決していく。

藤田 文彰
ここまでの歩みはスピードを重視していたため、スクラッチ開発で各種アプリを開発し、実装してきました。しかし、今後さらに事業をスケールするためには、CRMの高度化が必要となります。そこで、一元管理できるSalesforceの標準ツールを採用することも考えています。
具体的には、営業支援向け「Sales Cloud」やカスタマー向けの「Service Cloud」であり、後者においてはプロセスの自動化、CTI連携、ナレッジマネジメントなどにもチャレンジしていきたいと意欲を示した。

藤田氏は、今後の顧客データのマスター管理に対する取り組みについても触れた。というのも、これまでは顧客に対する営業のアプローチや商談内容が多様で、各企業の特徴が見えづらいという課題があった。

藤田 文彰
特定企業の情報を一元化したマスターデータと、管理を行える基盤をSalesforce内に構築することで、さらなる顧客管理の高度化を実現したいと思っています。この取り組みは、BPRの一環でもあります。
視聴者からの質問に答える質疑応答セッション
セッション後は、登壇者が視聴者からの質問に答える質疑応答が行われた。
- 大規模システムにおいて、機能要件の意思決定スピードを上げるための工夫は?
- 岡田:大規模システムに限らず、意思決定スピードのアップはPayPay全体で大事にしているカルチャーです。工夫としては、意思決定者を増やさない。Slackのチャットでコミュニケーションを頻繁に、それも現場からマネジメント層までがフラットな状況で行えるようにする。リソース配分、案件管理、プライオリティづけなども意識しています。
- AI・機械学習を活用している開発事例について
- 岡田:eKYCでの自撮り画像やテキストの分析などは、いわゆるAI、OCRの技術を使っています。そのほか、お客様からの問い合わせの電話音声をテキスト化し、分類しています。不正取引をしている人の特徴をAIが抽出するなど、様々な場面で活用しています。
- 内製開発における課題は何か
- 岡田:たくさんあります。我々に限ったことではないのですが、まずエンジニアリソースが不足しています。そのため協力会社の力を借りることもあります。事業部との認識ギャップも課題であり、ギャップが生じないように意識的にコミュニケーションしています。
- 機能の大小も含めたリリース判定の基準とは
- 藤田:大規模な機能については最終的にはビジネスサイドがUAT(User Acceptance Test)を行い判定し、リリースします。小規模で影響の少ないケースでは、私が承認した後、リリースマネージャがリリースを行っています。
岡田:大規模な機能変更などの場合は、説明機会を設けて、ドキュメントもしっかりと作り込んで対応しています。逆に、小規模の場合はクイックにリリースすることを意識しています。どちらもバッグログなどの管理ツールを使い、リリースのエビデンスを残すようにしています。
- 大量のトランザクション流入などトラブル対応はどうしているか
- 岡田:キャンペーン時などは、大量のトランザクションが入ってきます。一方で、PayPayのトランザクションは我々一社で完結しているわけではなく、様々なパートナーと関与しています。そこで、普段から関係者と負荷テストを行い、トラブルが発生した場合にはどこに連絡し、誰が担当するのかといった緊急連絡体制を整えています。また、小さな失敗は少なからず経験しているので、その学びをフィードバックすることも意識しています。
三重野:プロジェクトごとにクエリーを分けているので、トラブルを起こしそうな間違ったクエリーが飛んできたとしても、システム全体が落ちるような設計にはなっていません。
- BigQueryでFivetranを採用した理由
- 岡田:当時はETLツールの知識が乏しかったため、一般的なツールを調べて候補を挙げました。その上で、Salesforce、GCPとの相性や実際に導入している他社の評判を参考に導入を決めました。利用して約半年経ちますが、細かい障害を除いては概ね満足しています。
- 絶対に落としたくない、落としてもよいクエリーの分類はどうしているか
- 三重野:難しい質問ですが、重要度よりは緊急度を意識しています。例えば、本日中に絶対に配信しなければいけないクエリは落とせないなど。逆に、3日前の情報でもよければ、再度クエリを流すこともしています。経営判断に直結するクエリーも重要視しています。
- Salesforceの個人・法人に対するレベルの違いも含めたセキュリティ対策
- 藤田:当然、分けて考えています。具体的なセキュリティ対策としては、個人情報は特定のメンバーしか見れないようになっています。自宅からアクセスする際には、VPNなどのセキュリティ技術を導入し、取引先情報は閲覧できますが、個人ユーザーの情報は見れないようになっています。
岡田:CISO(Chief Information Security Officer:最高情報セキュリティ責任者)など、全体のセキュリティポリシーを設計している担当者とも連携しながら、より強固なセキュリティを意識しています。
アーカイブ
PayPayについて
イベントでご紹介した、会社概要や選考プロセスは詳細ページをご覧ください。
また、こちらのPayPay Inside-Outでは求人票からは分からない、PayPayの人や文化を随時発信しています!少しでもPayPayに興味をもった方は、ぜひ会社理解の参考になさってください。
参考情報
協力:Hiroshi Okada, Takayuki Mieno, Fumiaki Fujita / 編集:Hinako
※社員の所属等は、取材当時のものです。