読者です 読者をやめる 読者になる 読者になる

エンジニアHubPowered by エン転職

若手Webエンジニアのための情報メディア

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

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

インタビュー ピックアップ メルカリ 連載「若手エンジニア、どんな活躍してますか?」

f:id:blog-media:20160912072000j:plain

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


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

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

f:id:blog-media:20160912072353j:plainBABAROTさん。zplugなどでも知られる。今年つくったものリスト 2015 - tellme.tokyo


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

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

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

f:id:blog-media:20160912072731j:plainHirakuさん。最近は「光遅い問題」を克服したりもしている。光遅い問題を克服してcomposerを10倍速くした話 - Mercari Engineering Blog


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

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

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

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

f:id:blog-media:20160912142436j:plain新卒の僕がリアルウォンテッドリー@京都に行ってきました - mercan(メルカン)

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

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 Blog

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

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

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

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

f:id:blog-media:20160912073804j:plainHirakuさんと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のプロフェッショナルがいまして、とにかく重箱の隅をつつくような使い方を実際にしてもらってチェックしています。もちろん自動テストもやっていますが、手動テストもしっかりやっています。

f:id:blog-media:20160912141958j:plain

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

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さんのメンターとのことですが、普段のメンタリングで心がけていることなどがあれば教えてください。

Hiraku メルカリでは新卒以外も、入社したら最初の1ヶ月は完全1対1でメンターが付きます。新卒の場合はもう少し長くて半年。僕自身、そもそもメンターになるのが初めてなんですね。僕自身も手探りだし、会社としても新卒受け入れは初めてなので手探り。ということで、悩みながらやっています。

── 入社して4ヶ月で人生初のメンター。おつかれさまです。

Hiraku 最初に考えたのは「自分が新卒のときにどうだったかな」と思い出すことでした。あのときにこういうことを言ってくれたら良かったのに、というのを思い出して、実際にやるようにしています。自分がエンジニアとして「レベルが上がったな」というタイミングに何があったかを思い出してみたりとか。もちろん最初は、まずは仕事をこなせるようになってもらうところから、ですが。

── メンター、半年らしいですよ。ということはもうすぐ終わりですね(編注:前述した通り、取材は2016年9月1日に行われた。4月入社なので、9月いっぱいでメンターは終了)

BABAROT 最初、メンターがいつまで続くのか知らされていなくて。

── ひどい。

Hiraku (苦笑)

f:id:blog-media:20160912074349j:plain

BABAROT けっこう長くメンター続くんだなーと思ってたら、7月末に「2ヶ月後には自走してもらう」と言われて、まじかーって。とはいえ、SREチーム研修があったり、いろいろな研修をしてきたりを通じて、会社のことを広い視野で見られるようになってきたこともあって、不安は少なくなってきた気がします。なので2ヶ月前ほど「まじか」って感じではないです。メンターが終わるからって何も聞けなくなるわけではないので、そのへんは安心です。

── よくある話ですが、何かにハマったとき、どのタイミングで質問するかって、難しいと思うんですよね。メンター側で何かケアされたりしたことはありますか?

Hiraku そうなんです! 難しいんですよ。自分で考えてるな、ハマってるな、っていうときもあって。アサインされているタスクの進捗がやばそうなら声かけるように、というのは心がけています。

BABAROT これについては僕もいろいろ考えるところがありました。最初は何かに詰まったら聞こうという感じだったんですけど、それだと自分で何も考えずに聞いていると思われるかな、とか。でも、考えすぎると時間が過ぎていって、それはそれでもったいない。塩梅が難しいです。

── 何か工夫していることはありますか?

BABAROT まず一通り自分で考えて「こういうふうに考えて、できなかったんですけど」って聞くように意識していました。ただ、新卒の他の人と話をしていると、割とすぐ聞いちゃうという人もいるし、さまざまだなーと。いまも悩み中です。

── Slackの分報(自分用のチャンネル)で悩んでる様子をつぶやく若手の方もよくいますよね。

Slackで簡単に「日報」ならぬ「分報」をチームで実現する3ステップ〜Problemが10分で解決するチャットを作ろう | | Craftsman Software Inc.

Hiraku 分報、うちもやってる人います。良いですよね。メンター側からすると、やばそうな悩みと、ほうっておいていい悩みがなんとなく分かる。判断基準になるので便利です。

BABAROT 分報ではTwitterみたいにだらだら書いてますね。今やってることとか。メンターの人や先輩が入ってきてくれて、アドバイスが飛んできたりとか。

── 一方で、メンバーが増えると、みんなの分報を見るのは大変、とかもあったりはしますが。この辺りは難しいですね。

カスタマーサポート研修も

── 新卒や若手エンジニアの育成、どんな業務に携わってもらうかについて、会社全体としてどのように取り組まれているかを教えてください。

Hiraku メンター同士の話し合いの場があって、ある程度はそこで話したり。メルカリに入ったからには、メルカリにしかできないことをやってもらおう、という思いがあります。入社したら、カスタマーサポート(CS)の研修を職種問わず体験してもらったり、SRE研修があったり。

── CS研修があるんですね! 驚きました。

Hiraku 基本、業務自体はOJTなんですけど、いろいろなことを経験してもらいたいので。CSは、メルカリというアプリについて、本当に詳しく知っていないとできないんです。「なぜ、このお客様はこの問い合わせをしてきたんだろう?」っていうのが分かるようになっていく。新卒に限らず、メルカリでは入社すると必ずCS研修を受けることになっていて、アプリへの理解度がみんな高くてありがたいです。

f:id:blog-media:20160912142658j:plain

── なかなか大変な研修ではないかと思いますが、BABAROTさんはいかがでしたか。

BABAROT やって良かったな、という感想しか出てこないです。中途入社の方は研修1〜2日なんですけど、新卒は2〜3週間ぶっ続けでやらせてもらうんですよ。アプリについて深く知れるし、CSが使っている管理ツールのことや、それを作っている開発チームのこともよく分かるようになる。それに、ユーザーさんの生の声が直接聞けるので、どういうところが問題だったのか分かるようになって、要望の声をもとに機能開発にどうつなげるかといったことが考えられるようになったり。

若手エンジニアの集まる勉強会を!

── BABAROTさんは、社外の同年代のエンジニアとのつながりは、どんなふうにしていますか?

BABAROT 主にソーシャル上ですが、Twitterでフォローしあったり。あと、Vimを使っているので、Vimの勉強会はよく行っています。リアルの場では、同年代のつながりは勉強会が一番多いですね。北海道の大学に通っていたんですけど、北海道はやっぱり勉強会が少なくて。東京で就職しようと思ったのも、東京は勉強会が多くてスキルアップできそう、というのが理由のひとつでした。

── まだまだ勉強会の数は東京の方が多いですよね。一方、社内に目を向けてみて、エンジニアとして成長するための環境として、メルカリの良いと思う面などを教えてください。

BABAROT 基本的に、全社のことが社内でオープンになっているのが良いですね。それから、すごいエンジニアが集まっているという点も刺激的です。社内のあの人が書いたツールやコードの一部をプライベートで使いたい、なんていうときも、DMを送ると丁寧に解説してくれる人が多い。分からないことがあったときに、すごいエンジニアにすぐ聞ける環境はとてもありがたいです。

f:id:blog-media:20160912074804j:plainBABAROTさんの仕事風景。MacBook Pro のキーボードの上に Happy Hacking Keyboard を置くスタイルでした。

── ではBABAROTさん自身は、例えば5年後、どんなエンジニアになっていたい、というイメージはありますか? ロールモデルにされている方はいますか?

BABAROT まだ固まりきってはいませんが……何か必要とされたとき、ぱっと解決策を提示できる人はかっこいいなと思います。あとは、好きな技術を追いかけて、それでなんでも解決できちゃう人も、尖っていて憧れる。後者のイメージは、社内だとbokkoさん (@cubicdaiya / id:cubicdaiya) ですね。問題解決力がとても高いし、nginxやGo言語にとにかく詳しくて、何か要望があったときも自分の得意分野を生かして解決していらっしゃる。すごいなと思います。

── 社内にロールモデルがいらっしゃるのは良いですね。それでは最後におひとりずつ質問します。まずはHirakuさん、これからメンターになるような「先輩エンジニア」に向けて、アドバイスがあれば教えてください。

Hiraku メンター、難しいですよね。僕も悩みまくっています。「こうすればうまくいくよ」っていうことはなくて、メンティーによっても違うし、とにかく悩むしかない。

── そこをなんとか。

Hiraku 僕自身「なんとなく思っていること」レベルですが、メンターという視点がない状態で仕事をしてもらっているだけだと「会社や事業にとって良いかどうか」ですべて判断されてしまいがちだと思うんですよね。それだと、仕事としては成果を出しているとしても、この人はこのままで良いのか、という部分を見る人がいなくなってしまう。メンターの人は、キャリア的にはどうしたら良い、という部分を考える人であるべきです。常にメンティーの味方であり続けることを意識できればいいのかなと思います。

── ありがとうございます! 続いてBABAROTさん、この「エンジニアHub」はBABAROTさんのような20代の若手エンジニアの皆さんに読んでほしいという思いを込めて作っているのですが、何かメッセージがあれば!

BABAROT 25歳以下のエンジニアの勉強会みたいなものがあるといいな、って思っています。もしかしたら、僕が知らないだけで、そういう勉強会はあるのかもしれないですが。年齢で切るんじゃなくて、新卒から5年以内、というような区切りでも良いかもしれないです。そういう勉強会や集まりがあってほしいし、あったら教えてください! 同年代のエンジニアで集まって話せると、モチベーションにもつながりそうですし。

── この「エンジニアHub」も、この年代のエンジニアが集まる場にできればと思います。たくさんの面白いお話、ありがとうございました!

取材:エンジニアHub編集部/写真:赤司聡
エンジニアHub編集部は、エン・ジャパン株式会社と株式会社はてなが共同で作った編集部です

連載バックナンバー

employment.en-japan.com