PC依存エンジニアのブログ

開発者向けにIT関連の情報をお届けしています。特にバックエンド開発者向けの内容が多めです。たまにフリーランス情報もお届けしています。

メルペイの Backend Engineer's meetup SIer に参加してきました

私は5年ほど前から大手のSIerの中で、フリーランスとして常駐してます。
その中見つけたメルペイさんのイベント、「Backend Engineer's meetup SIer経験者が語る自社サービス開発の魅力」。

ダメもとで応募して抽選待ちしてましたが、まさかの当選しました。
自分の経験と重ね合わせて、記録していきます。


f:id:iristech:20190906202420j:plain
merpay meetup

イベント概要

SIer出身のメルペイの社員の方4名が、SIerとメルペイでの違いを個人の経験をもとに述べていきます。
パネルディスカッション後はQ&Aを行い、参加者が聞きたいことをぶつけることができます。

最後はお酒と軽食をつまみながら、メルペイの社員の方とざっくばらんに会話をする機会が用意されています。

パネルディスカッション

開発プロセスの違い

開発プロセスと聞いて、すぐ出てくるのは、ウォータフォールとアジャイル

メルペイではアジャイルで行っています。
SIerの時はウォータフォールで開発をしていたから、そこが違いに感じられたようです。

ちなみに確かにSIerはウォータフォールが多いイメージですが、なぜか自分はアジャイル開発が多いです。
先行開発部隊に入る確率が高いため、プロトを短い単位でお客さんに見せたいという要望が多く、そうなっているのだと思います。


あと意見が分かれてたのは、レビューの密度。
SIer系の時の方が雑だったという意見もあれば、むしろSIerの時の方が細かくレビューしていたという意見もありました。

会社で求められていることや、お客さんが求めていることによって、レビューの密度は変わるので、意見が異なるのは納得します。
ともかく品質は良いから、スピード重視でというお客さんの時と、
品質を大切にしてくれ、というお客さんの時とでは、レビューの仕方が変わります。


ではメルペイではレビューはどのように行っているのか?

メルペイでは当然自分で作ったものが、自社サービスとして動きます。
つまり甘いレビューでバグを残してしまっては、自社にそのツケが戻ってくることになります。

だからこそGithubのプルリクを使って、密にレビューを行っているそうです。
このレビューが通らなければ、世にサービスが出回らないわけです。

あとWeb系ということもあり、リファクタリングを多いそうです。

Sier時代の経験でいかせていること

SIerの時にレビューを紙ベースで、赤ペンで行っていたなんて経験があるなんて昔話をメルペイの方が話してくれました。
だからコピー機の使い方がうまくなったことが、活かせているらしい・・・(笑)

というのは置いておき、

  • スケジュールの逆引き
  • お客さんとのコミュニケーションスキル
  • ドキュメントスキル

が活かされているとのことでした。

メルペイでは、本番運用とかリリース時期の意識が、SIer時代と比べ、皆薄かった気がしたとのことでした。
後になって駆け込みで、あれが足りないこれが足りないって言ったところがらしい・・・

これ私のチームでやったら、上層部から怒られて他のチームに飛ばされかねないです。


確かになって思ったのは、コミュニケーションスキルやドキュメントスキル。
SIerはお客さんの要望やレベル感で、コミュニケーションの仕方や、書き残すドキュメントのレベルが変わってきます。

一生懸命システムを細かく書いた資料を、非システム部門の方渡しても意味がありません。
お客さんの中では、システムはあくまでも業務の補助でしかないので、主体をお客さんの業務にした資料を作らなければならない。

などなど考えていると、確かにSIerでの経験は役に立つのだなって思いました。

求められるスキルセットの違い

SIerでは、与えられた案件を一直線にやっていくことが多かった。
対して、メルペイでは自走する力が必要となる。
自社のサービスなので、自発的な行動ができる自由さがあるのだ、とおっしゃっていました。

またWeb系はコードの品質に関して、

  • デザインパターンは意識しているか
  • 言語の特性は理解しているか
  • 言語の慣習は理解しているか

を聞かれることが多いといいます。

SIer系だと、どんな案件が回ってくるかわかりませんよね。
自分も、全く知らない言語や分野の先行開発とかよくあります。
そうしているうちに、調査能力が身についたり、マルチにプログラミングができるようになります。
それが良いと取るか、悪いと取るかは人それぞれだと思います。

メルペイでは自社開発なのでそういった感じではなく、どちらかというと自社に関連した技術に特化していくイメージ。
深く深く掘り下げ、また最新技術が有用だと思えば、取り込んでやっていく感じがしました。

メルカリ・メルペイと、他の自社開発の違い

自社サービスだからこそ、PMに対して、自分の意志が反映しやすいというところがあります。
例えばデザインとか、反映されやすいのではとのこと。

逆にSIerだとデザインを修正するより、業務ロジックの修正を求められることが多いです。
背景としては、デザインはKPIなど定量的に表すのは難しく、それを見積もって金額が高くなったら、後回しにされます。

この経験は自分もよく経験しています。
当然ではありますが、お客さんは費用に対しての効果を求めてきます。
デザイン変えたら、どうなるんだとか、
最新技術に置き換えて、意味があるかなど。

決定権は常にお客さんにあるので、経験上デザインに関しては後回しにされることが多かったです。

納品がない自社サービスについて

「バス運行している会社と、個人タクシーの違いに似ている」

バスは時刻表通りに到着しなければならないので、時間が決まっている。
個人タクシーは時間通りである必要はないので、自分の裁量で多く働いたり、短めに働いたりできる。

SIerだってメルペイだって、システムを開発するというのは同じ。
だがそのアプローチの自由度というのは、メルペイの方が明らかに大きく感じられるとのことでした。


自由というのはその分、責任があります。
SIerは割とリリースしたら「はい!終わり」なんてケースが多いかと思います。
もちろん保守し続けるところもあるので、一概には言えませんが。

自社サービスでやっている分、自分で書いた失敗が、そのまま数年後に帰ってくることがあります。
そことが違いとして感じられたそうです。


自社開発に転職した時のキャリアアップ

SIerの時は、いつもコードを書いているわけではなく別作業を行っていたことが多かったらしいです。
メルペイでは、ほぼ毎日コードを書いていて、技術が身についているとのこと。

なお勉強方法は皆それぞれでした。
独学でやられている方もいれば、Gopher道場で技術を身につけた方もいました。

mercari.connpass.com


また技術だけでなくマインドの部分も変わったといいます。
自分たちの作ったものが、自分に返ってくるという意識が強くなった。
そのおかげで、より良いものを作る意識が強くなったとのこと。

チーム内の雰囲気

開発チームによって違い、多国籍で少人数のチームもあれば、大人数のチームがある。
会社的に英語を身に付けてほしい、という意思があるようで、英語の勉強会や宿題などがあるようです。
Slackでは英語でやり取りをするようにしたり、コードのコメントを英語で行うようにしています。


また仕事に飲みに行ったりするチームもあるみたいですが、
既婚者が多いチームだと、夜は厳しいので、ランチに良いものを食べに行くことが多いところもあるみたいです。

自分も子供がいて、なかなか今の現場チームの人と飲みに行ったりできないのですが、こういった気遣いがあるチームはうらやましい。

ちなみにメルペイでは、チームビルディング制度があって、飲み代を会社に請求するとそれが返ってくるそうです。

人事評価

クォータごとの人事評価があります。
人事評価2回分、つまり年2回給与変わるみたいです。

評価方法は、指標としてはOKRをベースに、どのぐらい目標を達成できたかをみます。
またOKRで評価できない部分も、しっかり評価するようです。

マネージャと1on1でメンバーと話したりするそうで、その人の能力に紐づくものとする試みが感じられました。

感想

率直にエンジニアとして、非常にそそられる会社だなって思いました。
自由に開発ができる感じ、個人を大切にしている感じがありました。
常に前を向いて進んでいるのも、いいですよね。

また飲みの席で社員の方と話していても、自分の技術力でも役に立てると感じました。