メルカリ新卒エンジニアはSREもサポートも経験する! BABAROT  Hiraku インタビュー

フリマアプリ「メルカリ」で、若手Webエンジニアはどんな活躍をしているのか。メンターによる育成の様子も交えてお送りします。

メルカリ新卒エンジニアはSREもサポートも経験する! BABAROT  Hiraku インタビュー

若手エンジニアのための情報メディア「エンジニアHub」がスタートしました! 本連載「若手エンジニア、どんな活躍してますか?」では、若手エンジニアが企業でどんなふうに働いているか、会社やメンターはどんなことを考えて育成しているかを探っていきます。

── 第1回はフリマアプリ「メルカリ」! 急拡大中の企業で、若手エンジニアはどんなふうに開発に携わっているのでしょうか。ということで、まずは自己紹介をお願いします。

BABAROT 初めまして、BABAROT (@b4b4r07 / id:b4b4r07) こと石山将来です。メルカリでサーバサイドエンジニアとして働いています。2016年4月に新卒で入社した22歳です。

1BABAROTさん。zplugなどでも知られる。http://www.tellme.tokyo/entry/2015/12/31/0053002

Hiraku 同じくサーバサイドエンジニアのHiraku (@Hiraku) こと中野拓です。BABAROTさんのメンターを担当していますが、実は僕自身の入社も2015年の12月で、入社から4ヶ月でメンターになりました。30歳で、エンジニア歴は9年です。

── ありがとうございます。BABAROTさんはシェルスクリプトに長けたエンジニアさんというふうに認識しておりまして、予想以上にお若くて驚きました。Hirakuさんは2016年7月に大阪で開催されたPHPカンファレンス関西2016で担当された基調講演の内容が話題になりましたね。

PHPカンファレンス関西2016で基調講演してきました - Mercari Engineering Blog3

4Hirakuさん。最近は「光遅い問題」を克服したりもしている。光遅い問題を克服してcomposerを10倍速くした話 - Mercari Engineering Blog5

── BABAROTさんは新卒でメルカリに入社されたということで、まずはメルカリに入ろうと思ったきっかけを教えてください。

BABAROT メルカリというアプリ自体は以前から、いちユーザーとして使っていたんですが、自分が働く会社としては考えていませんでした。ただ、就職活動中、Wantedlyさんが主催する学生向けのリアルウォンテッドリーというイベントがあって、暇つぶしのつもりで行ってみたらメルカリも出展していたんです。そこでメルカリの説明がすごく印象に残ったんですね。というのも、3分間スピーチというのがあるんですけど、機材トラブルがあったみたいで、スライドを映さずにアドリブでしゃべっていて……。

── 採用イベントで機材トラブル! こわい!

BABAROT でもその3分間アピールを聞いていたら、メルカリがいかに成果主義、実力主義であるかを話していて。新卒も含めて、成果を出せる人にきてほしい、というメッセージを出していたんですよね。「GitHub採用」という制度があって、GitHubのURLとメールアドレスの2つだけで選考が始まるよ、というのもユニークだなと思いました。そのときに興味を持ったのがきっかけで、応募しました。今年も京都でリアルウォンテッドリーが開催されたのですが、今度はメルカリの社員側として参加してきました。

6新卒の僕がリアルウォンテッドリー@京都に行ってきました - mercan(メルカン)7

── 実力主義ということですが、採用ページを見ると「新卒/既卒を問わず、年間を通じて多職種の人材を積極的に募集、採用」と書かれていますね。新卒という枠組みにとらわれず採用しているのでしょうか?

Hiraku 現段階では、基本的には即戦力となるエンジニアを採用しています。そこまで「新卒なのでポテンシャル重視で」という感じではないですね。新卒採用という形で募集はしているのですが、そもそもBABAROTさんの代がメルカリで初めての新卒採用なんです。

── BABAROTさんは学生時代もエンジニアリングのアウトプットをされてきていらっしゃいますよね。いつごろから始められたのでしょうか。

BABAROT ものづくりは大学に入ってから……学部1年の後期くらいからです。大学の講義でプログラミングを学び始めました。それが楽しくて、2013年にGitHubの存在を知って、アカウントを作って、オープンソース活動をするようになりました。

研修でSREチームへ。メルカリの膨大なアクセスを体験する

── BABAROTさんが業務でどんなことに取り組まれているのか、具体的に教えてください。

BABAROT 8月の1ヶ月間は「Site Reliability Engineering (SRE) チーム」に研修で配属されていました(編注:取材は2016年9月1日に行われた)

インフラチーム改め Site Reliability Engineering (SRE) チームになりました - Mercari Engineering Blog8

── SREチームというと、現在kazeburoさんがいらっしゃる部署ですね。まだあまり耳慣れない言葉ですが、具体的にはどんな部署なのでしょうか。

BABAROT いわゆるサーバー管理やシステム運用を担うのですが、その領域に加えて、プロダクトのソースコードにも手を入れて、サービスのパフォーマンスや信頼性に責任を持つチームです。

── ここに研修として入っていくというのは面白いですね。

Hiraku ものづくり自体は、会社じゃなくても、ある程度は体験できます。でも、大量のアクセスと向き合う経験はなかなかできません。メルカリのSREチームでは、日々メルカリの膨大なアクセスをリアルタイムでさばくという、個人ではなかなかできない体験をしてもらえるので、初めての新卒研修にあたり、実験的な取り組みとして始めました。

9HirakuさんとBABAROTさん。おふたりとも、このような取材は慣れていないとのことだったが、ちゃんとメルカリTシャツを着用して登場してくれた。

── たしかに個人ではなかなか経験できませんね。実際にSREチームで働いてみて、いかがでしたか?

BABAROT SREチームのメンバーはもともとTwitterで知っていた有名なエンジニアばかりで、研修をとても楽しみにしていました。実際に経験してみて、まだ僕自身の中でもはっきりはしていませんが、SREチームの領域は自分もすごく好きな部分なんだなと思いました。

── 現在の所属は?

BABAROT 日本のメルカリを担当するJPチームの中で、主にBizDevという、さまざまな業務連携などに取り組んでいる部署に配属されています。

Hiraku チーム構成としては、プロデューサーが1人、エンジニアが僕とBABAROTさん、あとは他のチームとの兼任がいたり、QA(品質管理)の人が担当でついていたり、という感じです。

QAを通しつつも、スピード感を落とさない開発

── 普段どのように開発していらっしゃるのか、開発フローなどを教えてください。

BABAROT メルカリはとても多くのユーザーさんにご利用いただいているので、ちょっとしたミスも大きな影響につながります。なので開発も厳重にやっていて、コードレビューのあとに、QAチームの方にチェックをしてもらって、プロデューサーがOKするとリリース、という流れです。

Hiraku 原則、すべてのリリースはQAを通しています。

BABAROT もちろん、ユーザー行動にほぼ影響が出ないリリースなどは、プロデューサーと相談してQAなし、などもありますが。

── なるほど! かなりしっかりレビューとチェックを通している印象ですね。リリースのスピード感には影響が出ませんか?

Hiraku QAはしっかり行っていますが、ものすごく時間をかけるというものではありません。普段もあまり意識しないくらいのレベルで、素早く行っていますね。何かリリースしたいものがあれば、「ちょっとこのリリースをしたいんだけど」という具合にQA担当に相談して、QAの方法も決めておくという感じです。チームごとにQAがいるので、仕様の理解度もすごく高いですし、臨機応変に対応してもらっています。

BABAROT スピード感はありますね。

Hiraku 手動QAのプロフェッショナルがいまして、とにかく重箱の隅をつつくような使い方を実際にしてもらってチェックしています。もちろん自動テストもやっていますが、手動テストもしっかりやっています。

── 会社全体でこのような開発フローを、ということはありますか?

Hiraku チームによって、アジャイルをしっかりやっているところもあれば、自分のいるチームはそこまで厳密にやっているわけではなかったりと、バラバラですね。全社的な統一という意味では、Redmineを使っていて、とにかく「何かをやるときは必ずチケットを作る」というルールがあります。基本的にすべての情報はオープンなので、チケットさえ見ていれば、全社で何が起きているか、過去の開発がどういう経緯でいまこうなっているのかなど、すべて見える状態にしてあります。Slackのチャンネルもすべてオープンで、欲しい情報は自由に取りにいける状態になっていますね。

── その他、使われている特徴的なツールはありますか?

BABAROT Slackと社内Wikiでしょうか。以前は部署によってQiita:TeamやGoogle Docsなどのドキュメントを使っていたのですが、統一されておらず、横断検索できない、という課題がありました。最近は全社でCrowi(編注:現メルカリCTOのsotarokさん @sotarok / id:sotarok が、前職である株式会社クロコス時代に開発した「Crocos Wiki」をもとに公開したWikiサービス)にそろえることになったので、ようやくひとつの社内Wikiに統一されつつあります。

── フローのやりとりはSlackがかなりスタンダードっぽくなってきた印象がありますが、ストックのWikiはまだまだ決定版がないように思いますね。Wikiはどのように使われていますか?

BABAROT とりあえずなんでもWikiに書いておけば良い、という感じです。日報やメモを書く人もいるし、仕様を書いている人もいるし、ひとりごとを書く人もいる。自分は主に思考を整理する場として使っています。今日の作業ログや考えたことなどを1日単位で書くようにしています。あとは、社内で部活動があって、自転車部に入っているんですけど、そういった業務と関係ないこともなんでも書いていますね。アウトプットしておくと、誰かが見てくれて、コメントをくれたりするので。

── 実際にチーム開発を経験してみて、いかがですか。

BABAROT 戸惑いはありませんね。学生時代も誰かと一緒に開発することはたまにありましたが、なかなか仲間がいなくて、会社でチーム開発ができるようになったのがすごく楽しいです。

ハマったら、すぐ聞く?

── 主にHirakuさんにお聞きします。現在BABAROTさんのメンターとのことですが、普段のメンタリングで心がけていることなどがあれば教えてください。

エンジニアHubに会員登録すると
続きをお読みいただけます(無料)。
登録のメリット
  • すべての過去記事を読める
  • 過去のウェビナー動画を
    視聴できる
  • 企業やエージェントから
    スカウトが届く