2021年4月5日 配信
転職者インタビュー : 株式会社メルカリ

マイクロサービスと組織が連動、裁量と責任の大きさを感じます

これは株式会社メルカリの竹内さんの顔写真です。

株式会社メルカリ
竹内 結

フリマアプリ「メルカリ」を展開する株式会社メルカリ。エンジニアの転職先として人気も高い会社ですが、実際にどんな方がなぜ入社し、どんな業務をしているのでしょうか。2019年に中途入社した竹内さんにBloomがインタビューしました。

前職までの業務内容や、転職を考えた理由は?

1社目では飲食店検索サイトの会社に入社しました。検索機能のリニューアルなどを中心に、バックエンドエンジニアとして3年間ほど経験しました。

新たな技術に触れたかったこともあり、2社目にゲーム事業を展開する会社に転職。 2年間ぐらい、ゲームプラットフォームの開発に携わりました。API開発のほか、一部フロントエンドの開発も担当。オンプレミスからクラウドへの移行プロジェクトにも関わり、大変ではありましたが、技術的な楽しさや学びに触れる機会がたくさんありました。

より一層、ユーザーに直接関わるサービスの開発を行いたいと思い、社内外で機会を探すようになりました。

メルカリに応募した理由、入社を決めた理由は?

■英語力を伸ばせることが大きな決め手だった

以前同僚だった知り合いに声をかけられたのが、メルカリに応募したきっかけです。 魅力的なサービスに関われるということはもちろんですが、最終的に入社の決め手になったのは英語力を高められる環境があることです。

東京オフィス開発チームの約半数がグローバルメンバーと聞きました。社内でも英語でコミュニケーションをとっていく必要がある。エンジニアとして業務を進めるうえで海外のドキュメントやイベント内容に触れることはよくありますが、技術力を高めるためにも英語の学習は進めていました。 まだ堪能に会話ができるわけでもないなか、メルカリなら英語力学習を支援する仕組みもあると聞き、まさに語学力を伸ばしながら技術力を高めていける。それが大きな決め手にもなり、入社を決意しました。

メルカリに入社してからどんな業務を行っているか?

■入社してすぐにメルカリ検索機能のマイクロサービス化を担当

スマホアプリ「メルカリ」における検索機能の開発を行っています。 私が担当しているのは、「保存した検索条件」の機能。ユーザーが保存した条件に基づき、検索結果や通知が表示される機能です。

入社して間もなく、当時のモノリシックだった環境からマイクロサービスへの移行プロジェクトを推進しました。 「保存した検索条件」の機能において、PHP/さくらサーバ/MySQL環境からGo/GCP/Spanner環境への移行でした。

API利用だけではなく、多数の業務から参照されているDBだったため、ユーザーに迷惑をかけないよう、ダウンタイム無しでのマイグレーションを計画。数ヶ月の移行期間をかけました。移行期間中はMySQLとSpannerに2重書き込みを行い、段階的に参照先を切り替え。もう大丈夫!となったタイミングでMySQLを止める、といった対応を行いました。

数名のチームで移行を行いましたが、マイグレーションは私が責任をもって実施しました。入社して早い時期から重要なミッションを任せてもらえたことは刺激的でした。

現在も、「保存した検索条件」機能を中心にバックエンド開発を担当しています。

メルカリの技術環境や組織は?

■マイクロサービスのドメインごとにチームが分かれた柔軟な技術環境

技術イベントを通じて、メルカリが積極的にマイクロサービスを取り入れていることは入社前から知っていました。しかし入社後に驚いたのは、かなり細かいドメインごとにチームが分かれており、組織に紐づく形でマイクロサービスが運用されていることです。

マイクロサービスを設計する際の考え方は色々ありますが、メルカリではシステムベースではなく、組織・チーム構成に基づいています。また、三人のチームだとしたら、その三人で話し合って決めて進めていけることが多い。担当しているドメインの部分は、自分たちで責任と裁量をもって手がけられるのは技術的にも魅力を感じます。

SREチームはもともと横断的な組織でしたが、より粒度の細かいサポートができるように、それぞれのドメイン担当も明確になりました。検索機能のチームであれば、その中にSREの担当もおり、相談もしやすい状況です。また、「マイクロサービスプラットフォームチーム」というシステム全体を見るメンバーもおり、TerraformやSpinnakerなど基盤部分のメンテナンスをしてくれている。GCPの活用で困ったら、プロフェッショナルな知識を持っている人に相談できるなど、技術的支援を受けながら、アプリケーション開発に専念しやすい環境です。

社内のSlackでのコミュニケーションは英語です。ミーティングで企画を説明する時、どうしても表現しきれないときは「まずは日本語で話します」と伝えた上で、バイリンガルな同僚にサポートしてもらったりもしています。

メルカリのエンジニアとして働く魅力は?

■「メルカリ」の技術改善を、エンジニア目線で提案し実装までできる

優秀なエンジニアが多く、相談できる仲間がたくさんいます。また、エンジニアから「こういう機能を作ってみたい」と提案できることも魅力だと思います。

多くのユーザーを抱えるアプリであり、エンジニア目線での意見出しは難しいのかな、と入社前に思っていましたが、意外とできる機会が多いと気づきました。 実際、私の意見をもとにしながらABテストをやってみて、成果が見えたのでiOSのユーザー全てに反映させることになったという例もありました。 言われたことをただやっていくというよりは、「こういうことをやったら?」という提案が受けられられるし、求められてもいる社風だと思います。

「Mercari Hack Week」という、全エンジニアが通常業務から離れ、つくりたいもの、好きなものを1週間かけて取り組む場もあります。 そのなかで感じましたが、自分でいろいろとアイデア出すのは楽しい。 アイデアを出しつつ、それを開発し効果を検証するといった流れができるように、ユーザーへのサービスをより一層考えられるエンジニアになっていきたいと思うようになりました。

メルカリへの転職を検討している人へのメッセージ

メルカリは「Diversity & Inclusion」を重視しており、エンジニア組織にも多様なバックグラウンドを持つ人が集まっています。様々な文化、価値観に触れながら、仕事をしていくことができます。

エンジニアの異動の機会も柔軟になり、意思を持って違う機能の開発にチャレンジする人や、「バックエンド開発からiOS開発へ社内お試し留学」と宣言して技術的に学習を深める人もいます。

技術的に成長できる環境で働きたい、尊敬しあえる仲間とともにサービスをもっともっと良くしていきたいと思う方は大歓迎です。ぜひ一緒に働きましょう。

株式会社メルカリの竹内さんが笑顔でお話されている写真です。