「私は優秀なエンジニアじゃない」と話すメンバーがマネージャーになり、社内向けCSツールの刷新に挑むまで

2013年のサービス開始から8年が経ち、月間利用者数が2,000万人を突破したメルカリ。しかし今、表向きの成長の裏側で大規模な開発基盤の見直しが全社をあげて進められています。

そのプロジェクト名は「Robust Foundation for Speed(以下、RFS)」。メルカリグループ全体の非連続的な成長を支えるために、ビジネス共通基盤の複雑な技術的課題の解決と抜本的な強化を図るプロジェクトです。

今回のメルカンでは、「RFS」と名付けられたこの大規模プロジェクトに関わるキーパーソン4名を取材。それぞれのキャリアにフォーカスしながら、なぜ開発基盤の大幅な見直しを“今”行うのか。どのような形でプロジェクトに携わっているのかを語ってもらいました。メルカリCTO若狭プロジェクトオーナーである塚メルカリの「トランザクション(取引)」領域を担当する後藤に続く最終回に登場するのはメルカリの「お客さま対応」領域を担当するBackend エンジニアリングマネージャー(EM)のMohan Bhatkar(以下、@Mohan)です。

この記事に登場する人


    • モハン バットカル(Mohan Bhatkar、@mohan)

      インド出身。日本での生活は今年で10年。楽天でエンジニア、チームリード、エンジニアリングマネージャーを経験。2019年4月にBackendチームのエンジニアリングマネージャーとしてメルカリへ入社。新機能や新施策が多く生まれる環境下で安定したチームを作ることに従事。チームマネジメント以外に、データ主導の意思決定に裏打ちされたメルカリグループ全体のインシデント管理プロセスを改善。さまざまな組織管理スタイルを学ぶことに興味を持ち続けている。


大学時代にコーディングを独学、そして日本企業でエンジニアの道へ

ーまずは、@mohanさんがエンジニアの道に進んだ経緯を教えてください。

もともと大学の専攻は電気系エンジニアでした。エンジニアといってもスマートフォンやコンピューター、タブレットなどのマイクロプロセッサのデザインや開発などを学ぶため、ソフトウェアの世界とはまた別ものですね。

ただ、入学した頃からプログラミングやコーディングにも興味があって好きだったんです。なので、大学在学中にも自分でコーディングを試してみるなど、電気系エンジニアと並行して勉強していました。その経験もあり、大学卒業後は楽天にエンジニアとして就職しました。

ーそのタイミングで、インドから日本に移住したんですね。

そうですね。当時、日本語が全然わからなかったので、移住前に日本語の言語研修と試験を受けました。移住してからはプログラミングやソフト開発といったITの研修を受けて、そのあとに部署へ配属という流れでしたね。

ー受け入れ体制が充実していたんですね。日本に来てから大変なことはなかったですか?

最初は楽天トラベルのサービスを担当する部署に配属されました。しかし、研修は受けたもののWeb開発の経験やコンピューターサイエンスの知識が完璧なわけではなかった。そこは日々チャレンジでしたね。

あとは、担当していたサービスが日本向けのサービスだったので、Webサイトの表側も裏側もほぼ全て日本語で作られていたんです。それらをちゃんと理解するためには、日本語の勉強も頑張らなくてはいけないので大変でした。

ただ、仕事において日々何かしらの勉強が必要です。それに仕事は自分一人ですべてできるわけじゃない。そういった考えもあり、同じチームにいたインド出身の先輩はもちろん、他国出身のメンバーと一緒に仕事をしながら日本語を学んでいきました。今思えば、この経験のおかげでこんなに日本語が話せるようなったんだと思います(笑)。
モハン バットカル(Mohan Bhatkar、@mohan)

ーその後、どういった経験を?

4~5年ほどエンジニアとして働きました。その間は、楽天トラベルの一番コアな部分となる取引システムの担当。ちょうど私が入社した2011年頃は、サービスのシステムを古いものから新しいものに切り替えるプロジェクトが始まる時期だったんです。それは良い経験になりましたね。

ーシステム切り替えにはどんな背景があったんですか?

楽天トラベルは国内の旅行サービスとしてはかなりの規模でしたが、さらなる拡張性をもたせるために、楽天のAPI提供が必要だったんです。

ーちょうど今、メルカリがやろうとしているプロジェクト「Robust Foundation for Speed」(以下RFS)に似ている?

似ているかもしれないですね。細かな違いは、前職のシステムは2005年に作られましたが、2011年からAPI設計を中心にサービス構築を行うAPIファーストに変更しています。一方、2013年に作られたメルカリのシステムは、最初からAPIファーストの概念で。私のチームが担当しているCStoolチームもそういった流れで立ち上がりました。

なので、メルカリはそこまでモノリスなシステムというわけではなかった印象が僕にはあります。しかし、この8年で事業の急拡大とともにAPIも膨大になり、これ以上拡張ができなくなってしまった。そのため、今回のRFSで手入れをしていくことになったのです。

前職のシステムでも2016~2017年頃には、膨大になったAPIを一度分割して切り出すフェーズがありました。このようにソフトウェアの世界では5~6年くらいのサイクルで機能数が膨大になったAPIを一度分割し、書き直さなければいけないフェーズが来るのだと思います。

マネージャーロールにフォーカスする理由

ーメルカリ入社のきっかけは何だったんですか?

楽天という大きな企業の大規模なサービス開発を学び、テクニカルリードやマネジメントなどを経験したことで、今度は違う環境で自分を試したいと思っていたんです。スタートアップから成長を続けていたメルカリの環境にはもともと興味を持っていたので、入社を決めました。

ー入社したのは2019年ですよね。そこからどのような仕事を?

私がメルカリへ入社した当時、複雑化しつつあったAPIやCSツールを分割していくフェーズでした。私は前職でシステム切り替えの経験があったことが採用の決め手の1つになっていたようです。入社後は、マイクロサービスマイグレーションのサポートから始めました。また、EMとして入社していたこともあり、最初の一年間はCStoolチームのマネジメントもしていましたね。

ー前職ではエンジニアでした。メルカリでマネージャーにロールがメインになることに戸惑いはなかったんですか?

正直に言うと、私は自分自身をものすごく優秀なエンジニアだとは思っていません。それに、大きな課題やミッションは一人では達成できない。何より自分一人でソフトウェアを開発していくことよりも、チームをリードしてさまざまなエキスパートの人たちと一緒に動いていくことで、ビジネスやミッションの達成、イシューの解決に取り組みたいという思いがありました。そういった理由で、エンジニアからマネージャーにロールへ切り替えたんです。

ーmohanさんはロールの変化をポジティブに捉えていたんですね?

それぞれのキャリアパスによって大変さや課題は変わるので、個人の興味によって選ぶ道も変わりますよね。私の中では「責任感」が重要なマインド。その点から考えても、マネジメントの道を選んだという感じです。私と同じようなマインドを持っている方は、マネジメントのパスも楽しめるのではないかと思いますね。

メルカリで改めて感じた「振り返り」の重要性

ーメルカリへ入社前に思い描いていたことと比べて、ギャップなどはありましたか?

当時のメルカリはまだまだこれから伸びていくフェーズだったので、前職に比べてガバナンスや部署などの仕組み化が十分ではなく、課題もたくさんあることは知っていました。それに対して「どうマネジメントしていくか」という気持ちで入社したので、そんなにギャップはなかったですね。

そして、メルカリに入社して2年以上が経ちます。その間にもフェーズによって課題やアプローチの方法が変わり続けています。私にとっては学びの連続ですね。

ー大手企業とスタートアップの環境の違いが、@mohanにとっては新たな学びにつながった?

私がメルカリで一番良いと感じたところは、きちんと「振り返り」をすること。CEOからエンジニア組織のトップ、各チームに至るまで、新しいチャレンジをした結果がダメだったとしても、「どこで失敗したのか」「何が足りていなかったのか」を話し合う。そして改善点を見つけ、「じゃあ次はこうしよう」と認識を合わせたうえで動くところはメルカリの魅力です。

今回のRFSについても、@wakasaさん(メルカリCTO、若狭建)をはじめとしたマネジメントメンバーが「エンジニアリング組織はどこに向かうべきなのか」を4〜5年前から思い描いて、それに対しての取り組みや振り返りをちゃんとしている。その結果、今回のプロジェクトがスタートしています。

こういったやり方を前職でもやっていなかったわけではない。ですが、メルカリで「振り返り」の重要性を改めて学びました。私個人の成長にもつながっている感触はあります。

社内向けだけど妥協はしない、ビジネス成長に不可欠な「CSツール」

ー今回メルカリが注力していくRFSについて、@mohanさんの担当領域はどう関わっていきますか?

今回のRFSは、メルカリがこの8年間で開発・運用し続けた複雑性の高まったソフトウェアシステムを、これからのビジネス拡大に向けて変えていかなければいけないという認識から始まりました。

私が今関わっているCSツールも8年前から作られたものです。現在では、お客さまの問い合わせ対応のほか、詳細情報や出品物の閲覧、違反出品の検知などさまざまな機能が追加されています。

事業の成長のためにはCSのオペレーションや内部のアプリケーションがきちんと回るような基盤を作って運用していくことも必要。それを担っているのがCSToolチームです。私はEMとして、なにか課題があるときはCTOやそのほか経営陣と話し合いながら解決し、できるだけチームがスムーズにプロジェクトを進められるようにする。これが、メインの仕事ですね。

ー今回のプロジェクトでCSツールに手を入れていくのは、現状ですでに限界を感じ始めているからですか?。それとも、今後のメルカリの事業拡大を見込んで今から対策をしていく目的ですか?

現状のシステムの複雑さを考えると、すでにキャパシティの限界がきている状態です。この7年間でメルカリを利用するお客さまが大幅に増えたことにより、当然CSのオペレーションも増えています。きちんと対応しなければならないし、同時に、今後の拡大にも対応できるシステムが必要です。

ーちなみに、メルカリのCSツールのように、お客さまの問い合わせを効率化していくようなツールは前職にもありましたか?

前職でも社内向けのそういったツールはありましたね。それに比べると、メルカリのCSツールはお客さまの問い合わせ対応だけではなく、社内でさまざまなオペレーションをするために必要な全ての機能が乗っかっている印象です。

誤解を恐れずに言うと、CSツールは社内向けなので、企業によっては「ある程度できていればいいんじゃないか」という考え方をされるときもあります。しかしメルカリは社内ツールであれど「事業を成長させている重要なツール」というマインドが社内的にありますね。

ーmohanさんにとって今回のRFSのプロジェクトに関わる一番のモチベーションは?

ひとつは、8年間かけて運用されて複雑性が高まったシステムを、会社全体として「成長を支えられる基盤に変えないといけない」という認識を持って注力している。日本の企業全体で見ても珍しいケースだと思います。そういった貴重な機会にソフトウェアを書き直す経験自体が、エンジニアにとって大きな成長のチャンスになるのではないかと思います。

もうひとつは、メルカリの事業成長を止めずにRFSに取り組み、基盤への投資も行うことは、かなり大きなチャレンジであるということ。特に新しい事業やチャレンジが多く行われるメルカリだからこそ、大きな変化にも耐えられ、CRE(Customer Reliability Engineering、​顧客信頼性エンジニアリング​)観点も備えたシステムづくりはすごくチャレンジングです。

ー現在、このプロジェクトを一緒に成功させるための仲間を募集しています。なにか伝えたいことはありますか?

メルカリのAPIやCSツールはPHPで作られています。PHPでの開発経験がある方はもちろん、事業やエンジニアリングの成長にモチベーションを持って取り組める方にとっては、今回のRFSは自分の成長にもつながる良いチャンスになると思います。

今回のRFSプロジェクトは、CSツールの刷新にとどまらず、その後も新しい技術を使って事業のスケールに対応し続けることになります。ぜひこういう機会に頑張りたい方や少しでも興味のある方は、声をかけてくれたらうれしいです。

おわりに

「Robust Foundation for Speed」プロジェクトに携わるキーパーソンに迫ったインタビューはこれで終了です。ここまで読んでいただき、本当にありがとうございます。この記事を通して、プロジェクトに取り組むメンバーの思いが伝われば嬉しいです。

少しでも興味を持っていただけたら、ぜひ以下の特設サイトをチェックしてみてください。より技術的な話をプロジェクトメンバーが語る「mercari engineering」の記事や、採用イベント情報がまとまっています。

meetyでカジュアル面談も実施中です。「少し話を聞いてみたい」という方はぜひお気軽に! お会いできることを楽しみにしています!

応募はこちらから!ぜひお気軽に!

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

ついにメルカリが「物流」へ。会見の裏側とメンバーの想いを速報でお伝えします! #メルカリな日々

【祝!メルカリShops本格提供開始】ソウゾウメンバーに今の気持ちを突撃取材! #メルカリな日々

あなたの“かくれ資産”が売れるかどうか、教えます!新機能「持ち物リスト」リリース裏側 #メルカリな日々

関連記事 読み応えアリ✨