エンジニアインタビュー 第1回 齊藤さん編

エニグモBUYMA の中のひとを知ってもらおうと、エンジニアへのインタビューをしてみました。
第1回は、2011年3月入社の齊藤さんです。

インタビュアー
小澤:2011年4月入社。部長。
伊藤:2018年5月入社。新卒2年目。

エニグモに入社した理由・動機

伊藤: エニグモに入社したのはなぜですか?

齊藤: 自社サービスがいいなと思って会社を探していました。
盛り上がっていたのでゲーム会社も面接に行ったのですが、すごい機械的で、MySQL 運用したことありますか、とか、そういう質問ばかりで。
エニグモは(前)部長とエンジニアの人と面接して、自分のできることに興味を持ってもらって、最終含めて3回面接しました。
EC に興味があったのと、どうしようかと思っているところで Stylist というサービスを公開しました、というメールがきたので、面白そうだなと思い入社を決めました。
残念ながら Stylist は今はクローズしていますけど。

小澤: エニグモの前はイギリスですよね。

齊藤: もうやめて来ていました。
前の会社は受託で、スクラッチ&ビルドみたいなことを何回もやるんで毎回工夫できて面白かったんですが、自社でやっているサービスも見ていたのでソッチのほうが面白そうだなと思っていました。

現在担当している業務は

伊藤: 最近はどんな業務をされていますか?

齊藤: 4年前ぐらいにユニット化されてからは、自分たちでこれやったら良さそう、変えたほうが良さそう、面白そうだなって思うアイデアを提案してやっています。
自分で発案したものもありますし、浮いていて面白そうだなってのを拾ったりしてやってます。
その前はトップレベル会議みたいなのがあって、大きなテーマのものは誰がやるかみたいなのが決まっていました。

小澤: この3年ぐらい、主にパーソナルショッパー向けの機能の開発をしていますよね。

齊藤: そうですね、それが僕の担当しているロールっぽくて、

小澤・伊藤: ぽくて (笑)

伊藤: ぽくてって認識なんですね。

齊藤: お問い合わせリニューアルぐらいからそうですね。
お問い合わせ機能が、データベースの設計から見た目までひどかったんですよ。でも、それまでは機能しているものをあまり見直さなかったんですよね。
でもあれは、なんで変えていいってなったんですかね?

小澤: 3年ぐらい言い続けたからじゃないですかね。
お問い合わせでなにかしたいという要望はあったんですが、お問い合わせは触っちゃだめだってエンジニアはみんな思ってたんですよね。

齊藤: 改修内容が大きすぎるから触れなかったんですかね。データベースから見た目まで全部やりたくなっちゃうから。。 結局そのときは全部やり直しましたね。
初めてメイン以外のデータベースの導入を決めて、データベースを設計して、既存データの移行を考えて。 UI はそのとき React が盛り上がっていたので、やったことはなかったけどやるでしょってなって、Redux の設計も勉強して導入しました。

伊藤: どのぐらいかかったんですか?

齊藤: 最初は3ヶ月ぐらいかと思ってましたが、半年ぐらいかかりました。

小澤: 当初計画の3ヶ月ってのは、もう長いからそれ以上考えられないっていう、漠然とした3ヶ月です。

齊藤: それまで3ヶ月もかかるのはなかったですからね。大体長くて1ヶ月みたいなものが多かったですね。 性能検証もあとから追加したり、見積もりが随時変わっていったっていうのも理由としてありますね。
それからこのとき山本さんが入社して1ヶ月ぐらいでプロジェクトに参加して、1ヶ月ぐらいですでに何ヶ月も一緒にやっているような存在感で、インクリメンタルな実装を相互にレビュー・マージしていく作業フローもすぐにスムースにこなしていて驚きました。
そのプロジェクトのあとは、商品画像の差し替え、、、画像枚数からルールに従って URL を生成する処理になっていたので、画像が並べ替えられなかったんですよね。ショッパーや社内からも画像を変更したり並び替えたいという要望はずっとあったんですが、それも手を入れるのが大変だからってやってなかったんですよ。
ちょっとした改修では済まないものをそこからやるようになりました(笑)。
これも半年ぐらいかかりました。 管理画面(BUYMA 本体とは別の Java の Web アプリ)をいじらずに管理画面を改修するのもこの頃からやってます(笑)。

小澤: それもお問い合せ改修からですかね。

齊藤: そうですね、管理画面の変更(Java)がめんどくさかったんで。
画像の差し替えは半年メインラインと並走して開発したのでリリースでたくさんしくじりましたね。
今みたいに Git じゃなくて SVN だったという要因もあったり、商品画像はサイトのいろいろなところに出ているので色んな人が修正するんですよね。それでリリースマージが難しくなってしまって。。
お問い合わせ改修も半年かかったんですが、色んな所に表示される機能ではないので影響が小さかったんです。
余裕持ってやるつもりだったんですが、マージに労力を取られすぎて、マージ終わったらもうメンテじゃんていう感じで出してしまいました。
そのときはメンテ明けは普段は朝に帰るんですが、24時間ぐらい会社にいました。

小澤: その後にフィーチャーフラグとか、どんどん出していくように実装をしましたよね。

齊藤: そうですね。
その後はCSVでの一括出品機能でした。機能としてはあったんですが、100品しか更新できない、下書きにしかならない、変更できない項目があるとか、使いにくいところがいっぱいあったんですよ。
1万件を上限にしたので、一つのバグでショッパーさんの全商品が壊れてしまうようなリスクがありました。
これはテストを入念にしたので時間がかかりましたね。
大変でしたけど、商品数の多いショッパーさんにすごく使われているので良かったです。

伊藤: 直近は何をされていますか?

齊藤: 直近はとある機能をやっているんですが、これまで BUYMAモノリスなアプリなので改修自体が必要以上にめんどくさいなと感じていて、良い機会なのでマイクロサービスな設計で作ろうと思っています。 Kubernetes とか使ってインフラのメンバーにも協力頂いて進めたいです。

エニグモに入社してからの一番の思い出

伊藤: 入社してからの一番の思い出ってなんですか?社員旅行でハワイに行ったりしてますよね?

齊藤: 一番か、難しいですね。。。。ハワイも思い出ですけど、 僕はメンテナンスが好きで、

小澤・伊藤: え、そうなんですか!

齊藤: メンテナンスでリリースするのって、サービスをコントロールしている実感が強いじゃないですか。
深夜にサービスを止めて、ソースコードをリリースして、明け方徐々に使われだしていくその現場にいる感じが好きですね。
最近はリリースでサービスを止めるような機会は減ったのであまりないですけど。

伊藤: 一番の思い出はメンテナンス。

齊藤: 長期間開発してリリースしたメンテナンスは印象にとても残ってます。
頻繁にできる仕事ではないですけど、その分区切りにもなるし、達成感になりますね。

どういう人と働きたいですか

伊藤: これから、どういう人に来てほしいですか。どういう人と働きたいですか。

齊藤: アイディアがある人が良いですね。自分だったらこう変えるとか、これは良くないとか、自分の意見が言える人がいいですね。
あとは、人の変更見て、塩梅を汲み取って柔軟に実装できる人がいいですね。
例えば「そんなに作り込まなくてもいいです」っていう感覚が分かる人。

伊藤: 一気にハードル上がりますね。

齊藤: 思っている塩梅で、書けてないというか、「工数削るためにユニットテスト書きませんでした」って来られると、そうじゃないよなと思いますし。

小澤: そうですね。

齊藤: チームで上手に動ける人がいいですね。不必要に足引っ張るようなレビューコメントで全体のリズムが悪くなることもあるので。
作業分担してても自分事になっている人がいいですね。
僕は年長者ですけど、経験者とばかり働きたいわけじゃないんですよ。
人のコードや動きを見て、良いと思うとか、これはこうじゃないですかってはっきり言える人がいいですね。

伊藤: 初心者とまではいかないですけど、あまり経験がなくてもいいと。

齊藤: そうですね。センスが良ければ関係ないと思います。

これまでにした一番大きなミス

伊藤: これまでにした一番大きなミスってなんですか?

齊藤: それは、画像差し替えプロジェクトのメンテナンス開けでバグがいっぱい出たときですね。

小澤: げんなりしたっていう。

齊藤: こんなに考慮漏れができるのかって思いましたね。
まあ、障害がでるとチーム感が出るというか、協力者が出てきてものすごいスピード感で解消していく過程はそれで楽しいですけどね。

小澤: すぐ直せっていうバグ修正はアドレナリンがでて楽しいですよね。

今後

小澤: 20年ぐらいプログラマーやっていて飽きないですか?

齊藤: 飽きないですね。

小澤: 次から次へあたらしい技術やアイディアが出てきてすごいなと思うんですよ。

齊藤: そうっすね。楽しい仕事です。

伊藤: ライバルはいるんですか?

齊藤: ライバル意識することはないですけど、、、、。 影響を受けるメンバーはいます。
小澤さんは調べるのはやいなと。バグがあったら「そこじゃない?」って速効性があってミニマムな修正を思いつくのが早いですし。

小澤: おぉぉ(笑)

齊藤: 浅香さんは作業の精度がずっと安定していてレスポンスも早いですよね。インフラ面から全体を見られていますし。 メンテナンスのバグ対応でもたくさん助けていただきました。
大川さんは無駄に作らないでツールがあるじゃんていって、新しいツールを使いこなすのも早いですし、考え方がスマートですね。真似できない。
木村さんも勉強熱心で、時代にそって変えて行くべきことを実行してますよね。最近マネージメントよりですけど。
皆さんとても良い刺激になります。

伊藤: みんな最近マネージメントよりな印象ですけど。
マネージメントには興味ないですか?

齊藤: 僕はミーティングがいっぱい入ってくると違うなって思ってしまいます。
リーダーシップはとりたいとは思いますけど、自分も動きたいですね。指示を出すようなロールではなくてメンバーでいたいです。
もっと上手な人が設計や案を出せばそれを実装したいってなると思います。
マネージメントするよりも、足を引っ張るようになるまでは開発を続けていきたいですね。

伊藤: オープンソースに貢献するのは興味ないんですか?

齊藤: そうですね、フォーカスしてやってみたことはないですね。
Rails とか開発しているのは楽しそうですけど、、ユーザーフェイシングな開発している方が面白いと思います。
あとは BUYMA ってレガシーなところがいっぱいあるから、新しいものに変えたいですね。

小澤: アイディアはいっぱい出てきますよね。

齊藤: 悔しいですけど「あれ、C社はできているのにうちはできていないなって」思うところがいろいろあって、そういう負債が消えていってほしいと思ってます(笑)。

若手になにかありますか

伊藤: 若手になにか思うことはありますか?

齊藤: 遠慮しないほうがいいと思います。なにか思うことがあったら提案しておいて、すぐにはできないことも多いですが提案すればだいたい自分がやることになるんで。
あとは障害とかあったら参加してみるとか。オンタイムに障害を克服することが開発者としてサービスに近づく一歩のようなところもあると思います。
うちの人って調べたことのログ張ったりするじゃないですか。それってここまでやったってのもあるし、他の人にもここ見ればいいって伝えたことになってて。

伊藤: 次同じことがあったらそれを見ればいいと。

齊藤: 思い出したらそれを真似してみれば良いんですよ。
昔はそうでした。人も少なかったんで誰もそんな親切には教えてくれなくて。見てればわかるっしょって感じでした。

小澤: 怖い会社ですね。

齊藤: はいったときからそうでした。 (※今も昔も聞けばやさしく答えてくれる優しい人ばかりです)

小澤: 齊藤さんのはじめのころのエピソードで面白かったのは、明日やろうと思ってたものが起きたらできていたって言う話。

伊藤: なんすかそれは。

齊藤: はじめのプロジェクトが二人でこんなサービスを作ってみてっていうのだったんですよ。
その人はやりましたとか言わないでしれっとプッシュしてありました。

伊藤: それは齊藤さんに割り当てられたタスクだったんですか?

齊藤: 今みたいに計画してやっていく感じじゃなくて、ざっくりしてたんですよ。
もうひとりの人は誰に頼らなくても一人でできちゃう人なんで、ついでにやっておきましたという感じです。
それで、やんなかったら全部作られちゃうなと思いました。

伊藤: そんなこともあったんですね。

齊藤: そうですね。それで折れてやめたいとは思いませんでしたが、頑張んなきゃなと思いました。

ちなみに

齊藤: 僕が一番目に指名されたのは(年長者なので)気を使ってですか?

伊藤: そうじゃないです。

小澤: そうじゃないですね(笑)。 誰に聞いてみたいって聞いたら、真っ先に齊藤さんが出てきました。