4月24日(水)にオンラインで開催された「GMO Developers Night#40」に、オンライン総合決済サービスを展開するGMOペイメントゲートウェイのエンジニアが登壇。
GMOペイメントゲートウェイとその連結会社であるGMOペイメントサービス、三井住友カード様との共同事業であるBNPL(Buy Now Pay Later)サービス「アトカラ」開発の裏側を紹介しました。
目次
登壇者
GMOペイメントゲートウェイ株式会社
- システム本部 関連事業サービス統括部
統括部長 秋山 弘幸 - 後払いサービス部 後払いサービス第2グループ
池田 隆介
森 隆之
坂口 健太
決済事業者は「ミッションクリティカル」「マイサービス」「フルスタック・フルフェーズ」
冒頭では、秋山がGMOペイメントゲートウェイ株式会社(以下、GMO-PG)、およびシステム本部 関連事業サービス統括部について紹介しました。
GMO-PGは、ECを中心とした加盟店と、カード会社や銀行、キャッシュレス決済事業者といった決済会社とをつなぐゲートウェイ機能を担う会社で、多くの決済手段を提供しています。デジタル化の進展とともに多種多様な決済手段の需要が増えたことで、連結加盟店舗数は現在15万店舗を超えています。また、2023年12月末時点では、連結決済処理件数65億件、連結決済処理金額15.8兆円という実績で、営業利益年平均成長率25%の継続を目標に掲げています。
GMO-PGのような決済事業者で働くことの特徴として秋山は、「ミッションクリティカル」「マイサービス」「フルスタック・フルフェーズ」の3点を挙げます。 ミッションクリティカルという観点では、厳しい非機能要件が特徴です。決済に関わるシステムであることから、24時間365日の高可用性・高信頼性、大量処理と低レイテンシー、高セキュリティなどが求められ、不正取引・アクセスと日々戦わなければなりません。
また、GMO-PGは、マイサービス、フルスタック・フルフェーズで完全内製化を実現。要件定義からリリース・運用までのすべての工程を自社パートナー(社員)で実施しています。秋山は「社会インフラの一部を担っているという意識が、やりがいにつながっている」と語ります。
今回の登壇者が所属するシステム本部には、現在約250名程度のエンジニアが在籍しています。拠点の中心は東京・渋谷ですが、福岡にも開発拠点を有しており、新卒・中途合わせて毎年30名程度のエンジニアが入社しています。
システム本部のなかでも、関連事業サービス統括部では、GMO-PGの連結会社であるGMOイプシロンとGMOペイメントサービスの事業を支えるシステム開発・運用・保守を担当しています。今回のテーマでもある「アトカラ」は、同部配下の後払いサービス第2グループで開発を行ってきました。
対面・非対面問わずさまざまなシーンで利用できる「アトカラ」
池田は、アトカラの特徴について説明しました。池田は、入社7年目のエンジニアで、「銀行Pay基盤システム」、「こんど払い byGMO」の開発を経て、2023年10月からアトカラに参画しています。
アトカラは、「クレジットカード不要!スマホだけですぐにお買い物ができる」をコンセプトに2024年2月にサービスを開始した後払いサービスで、対面・非対面問わずさまざまなケースで利用可能です。
非対面利用時には、電話番号、メールアドレスを入力したうえで、支払回数を選択し、SMS認証コードを入力すると買い物ができます。対面決済の場合は、QRコードを表示して、stera terminalで読み取ることで決済が完了します。なお、アトカラの会員審査では、ユーザーの属性情報に加え、GMO-PGが開発したeKYCサービスを利用しています。
他社の後払い型サービスと比較すると、ECと対面決済の両方に対応しているのがアトカラの特徴です。また、3〜36回までの分割払いが選べるほか、6回までであれば分割手数料が無料となるため、ユーザーにとっては使いやすさが大きなメリットです。
アトカラプロジェクトを実現できた要因
アトカラ開発の裏側を明かしたのは、2022年5月に中途入社後、アトカラプロジェクトへ参画した森です。前職では別業界のシステムを担当しており、当初は決済関連の業務知識がまったくない状態でしたが、、「法令対応を含め、専門的な業務知識が必要なプロジェクトのためキャッチアップに苦労しましたが先輩方のサポートでなんとかやってこれた」と話します。
開発初期(2022年5月頃)は、ビジネス6名・開発7名という体制でしたが、ピーク期(2023年8月頃)には、ビジネス15名・開発50名と大所帯に。リリースの時期(2024年2月)には、ビジネス10名・開発25名という体制に落ち着きます。
森は、プロジェクトを実現できた要因の1つとして、マインドを挙げます。「GMO-PGの業務の心得である『全員社長主義』を自覚し、責任感を持って役割にとらわれず主体的に行動する姿勢がよかった」と振り返ります。
また、人材の豊富さも特徴でした。「GMO後払い」、「GMO掛け払い」、「こんど払い byGMO」などのサービスを経験したメンバーや、問題解決力・技術力のあるメンバーが相互に補完し合い、難しい課題に直面しても乗り越えられたといいます。開発面では、システムメンバーを中心に案件を推進したことにより、スピード感のある開発を実現しました。
アトカラのシステム構成は次のとおりです。
多くの機能を有する基幹システム、スマートフォンアプリとWebポータルの顧客管理システム、加盟店管理システム、eKYC、与信システムからなり、その土台にクラウド基盤としてAWSを採用しています。これが、加盟店のシステムと接続する形です。
アトカラシステムの基幹部分の構成と技術スタック
坂口は、アトカラのシステムの基幹部分について解説しました。
2019年4月に中途入社した坂口は、バックオフィスのシステム開発、「GMO掛け払い」、「GMO後払い」を経験した後、2022年10月より「アトカラ」とeKYCのプロジェクトに入りました。普段は九州オフィスに勤務しています。なお、約20名の九州オフィスエンジニアのうち、坂口を含めて5人のメンバーが「アトカラ」を担当しています。
AWS構成は次のとおりです(WAFやKMSなどのセキュリティに関するサービスは省略)。
基幹システムは、「GMO後払い」の資産をベースに構成しており、ECSを利用した動的アプリ、CloudFrontを利用した静的サイト、EventBridge、Step Functionsを利用したバッチアプリの大きく3つに分類できます。内製システムとしては、AWS上のシステムとオンプレミスのシステムがそれぞれあり、AWS上のシステムとの接続にはPrivateLinkを、オンプレミスのシステムとの接続にはTransitGatewayとDirectConnectを利用して接続しています。
構成図のもととなる技術スタックは次のとおりです。
eKYCのシステムは、身分証とセルフィーの撮影機能を提供するSDK、撮影されたイメージの保存や自動審査の機能を提供するAPI、目視審査等の機能を提供するバックオフィスという大きく3つのシステムに分かれています。
以下は、eKYCのSDKとAPIの構成図です。
SDKは、iOS/Android/JavaScriptの3つがあり、それぞれ「アトカラ」のアプリケーションに組み込んでいます。APIは、API Gatewayをはじめマネージドなサービスを多用した構成となっています。
バックオフィスの構成図は次のとおりです。
バックオフィスは、Single Page ApplicationをホストするCloudFrontと、API Gatewayで構成しています。APIと同様、マネージドなサービスを多く利用しているのが特徴です。アトカラに目視審査結果を連携する際は、PrivateLinkを利用して接続しています。
それぞれ技術スタックは次のとおりです。
eKYCの内製化で苦労した話
坂口は、開発時のエビソードとして、eKYCの内製化で苦労した話を紹介しました。
アトカラのeKYCでは、クライアントであるSDKから撮影された身分証やセルフィーのイメージファイルがAPIに転送これを同期的に処理する際、多くの場合は問題にはなりませんでしたが、坂口によると、顔検出やOCRのサービスの応答が劣化することがあったといいます。平均的には4秒以内にレスポンスを返却できていたものの、最大で23秒かかるケースがあったのです。eKYCのAPIは、Amazon API Gatewayを採用しているため、API Gatewayのハードリミットである29秒以内にレスポンスを返さなければなりませんされます。一方、API側では、暗号化、イメージの保存、顔の検出・分析やOCRを実施しています。
これを同期的に処理する際、多くの場合は問題にはなりませんでしたが、坂口によると、顔検出やOCRのサービスの応答が劣化することがあったといいます。平均的には4秒以内にレスポンスを返却できていたものの、最大で23秒かかるケースがあったのです。eKYCのAPIは、Amazon API Gatewayを採用しているため、API Gatewayのハードリミットである29秒以内にレスポンスを返さなければなりません。
そこで、eKYCのAPIでは、この問題に対して非同期関数を利用することにしました。具体的には、API Gatewayから同期的に呼び出しされるLambda関数内ではイメージの暗号化と保存のみを行い、残りの処理は非同期的にLambda関数を呼び出し、非同期処理内で顔識別・分析やOCRを行うようにしたのです。こうした非同期処理化により、APIのレスポンス時間は平均・最大ともに改善できています。
「アトカラ」の開発で登壇者が一番苦労したポイントは?
視聴者からのQ&Aのコーナーでは、「『アトカラ』関連の開発で一番苦労したところ」について登壇者が回答しました。
池田は「法令遵守を含め1つひとつの要件が大きい。それぞれの開発に対する成果物のチェックやスケジュール管理が難しかった」と述べます。
森は「通常のプロジェクトでは業務要件が決まってから案件が立ち上がるが、今回は業務要件が未定の状態でスタートして、徐々に決まっていく形だった。こうしたなかで、画面やデータに落とし込むのに苦労した」と振り返ります。
坂口は「法対応に向けて法務とのミーティングを行っていたが、法律の条文を読む経験があまりなく苦労した」といいますが、「システム・人・契約・お金・データなどの流れが明確になり、サービスの理解度が高まった」と自身の成長につながったことを明かしました。
秋山は「割賦販売法に準拠したサービスをつくるのは初めてだったため、三井住友カード様の知見を活かしながら試行錯誤で進めた」と話しました。
また、「決済の知識がなくてもGMO-PGのエンジニアとして活躍できますか」という質問に対して池田は、 「決済サービス開発未経験のエンジニアも多いが、フラットに意見を言い合えたり、教え合えたりするカルチャーがあるため、未経験でも活躍できる土壌はある」と回答しました。
BNPL国内No.1サービスを目指して
最後に、アトカラの今後の展開について、秋山が説明しました。
まずは、加盟店獲得と認知度の向上です。「生まれたばかりのサービスで、使える加盟店様も少なくブランド認知度も低い。まずは、ご利用いただける加盟店を拡大するとともに、対面決済のstera端末などを活用した認知度向上などを進めていたい」と秋山は語ります。
2点目はサービスレベルの向上です。秋山は「トレンドに敏感で、使いやすい・身近なサービスを目指していく。共同事業者である三井住友カード様と協力し、BNPL国内No.1サービスに育てたい」と意気込みました。
エンジニア採用実施中!
GMOペイメントゲートウェイ株式会社ではエンジニアを積極採用中です。
さまざまなバックボーンを持つエンジニアのみなさまの力を必要としています。
興味のある方はぜひ採用HPをご覧ください。
また、これまで当社エンジニアが登壇したウェビナーやインタビューは以下にまとまっていますので、併せてご覧ください。
https://www.gmo-pg.com/blog/feature/feature03/
さいごに
当日、ご参加いただいた方からは、
「サービスの全容やGMOペイメントゲートウェイの体制や方針等が分かって良かった」
「AWSにおける具体的な設計方法について学ぶことができ、大変参考になった」
「使用例と組み合わせて解説いただき、今後の自身の学習や実務に活かせると感じた」
など、ありがたいお声をたくさんいただきました。
映像はアーカイブ公開しております。
まだ見ていない方、もう一度見たい方は 是非この機会にご視聴ください!
ブログの著者欄
採用情報
関連記事
KEYWORD
CATEGORY
-
技術情報(441)
-
イベント(160)
-
カルチャー(36)
-
デザイン(17)
TAG
- 5G
- Adam byGMO
- AI
- AWX
- BIT VALLEY
- blockchain
- ChatGPT
- cloudnative
- CloudStack
- CM
- CNDO
- CNDT
- CODEGYM Academy
- ConoHa
- CS
- CSS
- CTF
- DC
- Designship
- Desiner
- DevSecOpsThon
- Docker
- DTF
- GitLab
- GMO Developers Day
- GMO Developers Night
- GMO GPUクラウド
- GMO Hacking Night
- GMO kitaQ
- GMO SONIC
- GMOアドパートナーズ
- GMOアドマーケティング
- GMOイエラエ
- GMOグローバルサイン
- GMOソリューションパートナー
- GMOデジキッズ
- GMOブランドセキュリティ
- GMOペイメントゲートウェイ
- GMOペパボ
- GMOリサーチ
- Go
- GTB
- Hardning
- Harvester
- HCI
- iOS
- IoT
- ISUCON
- JapanDrone
- Java
- JJUG
- K8s
- Kaigi on Rails
- Kids VALLEY
- LLM
- MetaMask
- MySQL
- NFT
- NVIDIA
- OpenStack
- Perl
- PHP
- PHPcon
- PHPerKaigi
- QUIC
- Rancher
- RPA
- Ruby
- Selenium
- Spectrum Tokyo Meetup
- splunk
- SRE
- SSL
- Terraform
- TLS
- TypeScript
- UI/UX
- VLAN
- VS Code
- アドベントカレンダー
- インターンシップ
- オブジェクト指向
- オンボーディング
- お名前.com
- カルチャー
- コンテナ
- スクラム
- スペシャリスト
- セキュリティ
- ソフトウェアテスト
- チームビルディング
- ドローン
- ネットワーク
- プログラミング教育
- ブロックチェーン
- マルチプレイ
- ミドルウェア
- モバイル
- ゆめみらいワーク
- リモートワーク
- レンタルサーバー
- 京大ミートアップ
- 協賛レポート
- 基礎
- 多拠点開発
- 大学授業
- 宮崎オフィス
- 応用
- 技育プロジェクト
- 新卒
- 暗号
- 機械学習
- 決済
PICKUP