メルペイ VPoE による2021年の振り返り

こんにちはこんにちは。 Merpay Advent Calendar の1日目を、メルペイ VPoE の @hidek がお届けします。

はじめに

今年もあっという間で、12月に入り残りわずかとなり、Advent Calendar の季節になりました。今年も Merpay Advent Calendar を始めるにあたって、1年を振り返ってみたいと思います。ちなみに、このネタで書くのは2019年、2020年に続き、三年連続になるわけですが、このメソッドは大変楽なので、毎年ネタで困っている CTO/VPoE の方々に改めてオススメします。

ところで、今年の個人的な新たなチャレンジとしては、スパイスからカレーを作るということにハマりました。

今まであまり料理をすることはなかったのですが、スパイスの分量をしっかりと計って作ると PDCA サイクルを回せるという点で、エンジニアリングに近いものを感じて楽しんでいます。

それでは今年もなるべく赤裸々に振り返ってみたいと思います。

組織的な話

Merpay Tech Fest 2021

2021年はメルペイとしての初めての大規模技術カンファレンス、Merpay Tech Fest 2021 を開催することができました。実は2020年の春にオフラインで開催予定として進めていたのですが、新型コロナウイルスの影響で泣く泣く中止をした経緯があります。が、今回オンライン開催という形ですが開催することができました。

オンライン開催にあたって、チームでいくつか工夫をしました。

通常オフライン開催であれば、1セッション40分〜60分、1日朝から夕方まで6時間〜8時間くらい、1〜3日間くらいの開催というのが多いと思うのですが、オンラインで長時間ビデオを見続けるというのは、視聴者も飽きてしまうということで、1セッション10分〜30分、1日全セッションで1時間半から2時間くらいに収めて、5日間の開催というタイムテーブルを組みました。これにより、仕事の合間にカジュアルに見てもらうことができたのではと思います。

また、カンファレンスの醍醐味はスピーカーとの直接のやり取りだと思っていたので、ただ収録したビデオを流すだけではなく、セッションの間はスピーカーにチャットで待機してもらって会話に参加してもらったり、1日の最後に振り返りと Q&A の時間を設けて、視聴者とのインタラクティブ性を大事にしました。

結果多くの人に参加していただき、「メルペイの技術を知ってもらって、メルペイのことを好きになってもらいたい」という思いとともに、様々なジャンルの技術的なチャレンジを紹介できたと思います。これについては来年も是非開催したいと思っています。

ソウゾウ / メルコイン / メルロジ爆誕

2021年はメルカリグループとして1月にソウゾウ、4月にメルコイン、10月にメルロジと新たに3つの子会社ができた年でした。新たなグループ会社ができるにあたって、メルペイからも多くの仲間が異動をしました。

当然このような社内公募からの異動は、組織としては工数的に減るために色々と影響があります。しかし、そもそも振り返るとメルペイも、新たなチャレンジとして多くの仲間がメルカリや旧ソウゾウから異動をして立ち上げた経緯があります。メルペイも設立してから3年ほど経ち、新たなチャレンジをしたいと思っているメンバーも多い中で、メルカリの外ではなく、中で新たなチャレンジの場を作れたということは、結果的には良かったことだったのではと思います。

また、このような異動に対してもある程度受け入れることができるだけの規模の組織に育ったということでもあると思います。なお、各社絶賛採用中なので興味のある方はチャレンジお願いします。

YOUR CHOICE

YOUR CHOIDE 2021年は新型コロナウイルスが猛威をふるった一方で、秋頃から落ち着きを取り戻しました。その中で、After/With コロナを意識した新しい働き方をメルカリグループ全体で考える機会となり、打ち出したのが「メルカリ・ニューノーマル・ワークスタイル “YOUR CHOICE”」でした。これは「個人と組織のパフォーマンスおよびバリュー発揮がもっとも高まるワークスタイルを、自ら選択して決めることができる」というコンセプトを元に、オフィス出社もフルリモートワーク勤務も社員が自由に選べる制度です。

メルカリグループは新型コロナウイルス蔓延前は、出社をして同じ場所で働くことを推奨していて、原則的には永続的なリモートワークを認めていない文化がありました。が、緊急事態宣言下でリモートワークを強いられる中で様々なチャレンジをしてきた結果、オフィスで集まって働く良さもあるし、リモートで働く良さもある、ということで個々人の働き方を尊重する、今回の形にシフトすることになりました。

メルペイでも実際に何人ものメンバーが地方に移住しはじめたり、逆にオフィスに来る人も増え始めています。その裏ではオンボーディングの整備や、月に何度かオフィスでランチパーティーを開くなど、様々な工夫がなされています。

技術的な話

メルペイスマート払いのマイクロサービス化

2019年の振り返りでは、メルペイスマート払いのリリースをするにあたって技術的負債を負った話、2020年の振り返りでは、その影響がメルペイスマート払いの定額払い機能リリースに当たって大きく影響をした話をしました。このサービス自体は伸ばすことができたのですが、技術的には大きな影を落とし続けていた問題でした。

2021年はこの問題が大きく改善できた年でした。詳しくは Merpay Tech Fest 2021 での @tk8 さんの発表で説明されていますが、もともとメルカリのモノリスの機能を流用して、完全にマイクロサービス化ができていなかったため、データの二重管理など多くの運用コストがかかっていたものを、完全にマイクロサービスに移行する作業を行って改善しました。

ここに至るまでは、振り返りを元に改善のための人的リソースを専門に充てるなど、チームが自発的に改善に動いてくれました。この件について、3年連続で反省文を書かずに済んだのでメンバーには本当に感謝しています。

新しいメルカリ Web

2021年はメルカリ Web を大きく刷新することができました。

メルカリWeb

メルカリはこれまで iOS と Android のいわゆるネイティブアプリケーションを優先的に開発してきました。一方で、Web アプリケーションは少なからずの利用がありながらもモダンさに欠けている状況にありました。これは主に、レガシーなシステムが多くを占めていたため、技術的負債による生産性の低下が要因にありました。

詳細は @1000ch のこちらの記事を読んでいただければと思うのですが、改善にあたって古いものから新しいものへ徐々に移行するのではなく、横並びで新たなものを作り一気に移行するという手段を選びました。その際に、アーキテクチャの刷新だけではなく、開発プロセスの刷新や組織の変更にも着手しました。

結果、8月に並行リリースができ、9月からは完全に移行することができました。成功の要因としては、こちらもメルペイスマート払いのマイクロサービス化同様に、リニューアルのために専任のチームを設けることができたことが一つあったと思います。

まだまだネイティブ版とは機能差異があるのですが、個人的にも Web には大きな期待をしているところではあるので、力を入れていきたいところではあります。

Feature Store と Vertex AI Pipelines の導入

Machine Learning の領域でも改善が進みました。

こちらも詳しくは Merpay Tech Fest 2021 での @Liu の発表にありますが、既存のシステムでは機能ごとに異なるパイプラインが作られているため保守性が損なわれていたり、重複する特徴量を都度作る必要がある無駄が発生していました。

これらを解決するために、新たな取り組みを行いました。パイプラインの保守性の問題に関しては、Vertex AI Pipelines の導入により、モデルのトレーニング・デプロイを共通化して解決を図りました。また特徴量を共有化することによるコスト削減は、Feature Store として Feast を導入することで解決しています。

このような取り組みは、保守性やコスト削減だけではなく、結果としてエンジニアがモデルの開発や改善に、より時間を費やすことができるようになるため、生産性の向上や品質の改善にも繋がります。2021年はこのような取り組みにも時間を割くことができるようになりました。

今はまだ不正検知領域への利用ですが、この領域を広げていくことと、予測プロセスにおいてもパイプラインの共通化、品質管理向上などもやっていきたいと思っています。

サプライチェーン攻撃によるデータ流出

2021年を語るにあたって、避けては通れないのが、Codecov への不正アクセスに端を発した、サプライチェーン攻撃の影響です。ソースコードと顧客情報の一部流出について、まずはお客さまに多大なご迷惑をおかけしてしまったことは、私たちとしても大いに反省しています。また、これにより社内のデータ管理体制を大きく見直し、今も引き続き改善を行っています。

私たちは日々の開発にあたって、社内外の様々な開発エコシステムに依存しています。現代の開発においては、社外の開発エコシステムを全く使わないということは、様々な理由で難しいのが現状です。また、社内だけで開発エコシステムを完結すれば完全なセキュリティが担保できると、そう言い切れないのも事実だと思います。

今回私たちとして特に痛感した点は、開発エコシステムを選定する上で、よくリサーチをすることは大前提の上で、ゼロトラストの考え方の元、どこかでクラウドサービスの認証情報などが流出する可能性があることを前提としたシステム設計と情報の整理を行うことだと感じています。もちろん流出しないように最善の対策はするものの、一方で流出してしまったときにも、追加のネットワークでの制限などであったり、検知をなるべく早くするなどの二重、三重の防御策を考える必要性を再認識し、対応を進めているところです。

ご迷惑をおかけしてしまったお客さまには、重ねてお詫び申し上げるとともに、改善に努めたいと思います。

まとめ

2021年のメルペイはメルカリグループとして拡大を続けながら、コロナ禍における様々な組織的取り組みをしてきました。技術的には今回取り上げたもの以外にも様々な技術的な改善が進んで、生産性向上の礎ができました。

一方で、より安心・安全な仕組みづくりが問われた年になりました。来年以降は、Go Bold なチャレンジを忘れず、安心・安全を技術でより向上できていければと思っています。

それでは良いお年を!(まだ早い)