クラベスいち、クセがすごいエンジニアの佐藤。手ぶらで出社。PC操作はカーソルを使わず、ターミナル。面倒なことは大嫌い。楽をするためにコードを書くんだ!という、エンジニアの中のエンジニア。昨年6月に入社してから、エンジニアの中心メンバーとして活躍している佐藤に、これまでの経験やこれからやりたいことを聞いてみました。
前職での経験を教えてください。
動画広告のプラットフォーム開発 Perl歴は10年の大ベテラン
前職は、動画広告配信をしている会社でエンジニアをしていました。最初は、ソーシャルゲームもつくっていたので、クイズゲームのアプリ保守とサーバー構築を1年間していました。ユーザー一覧や課金状況を確認できるような管理画面もつくりましたよ。その後は、動画広告プラットフォームの構築、運用保守を4年くらい担当していました。
動画の広告配信をざっくりいうと、
①管理画面で動画と配信プランを設定する。
②メディア側で、動画を表示するタグを貼ってもらう。
③そのメディアで、ユーザーが動画を見る。
④再生状況に対応して金額が発生する。
⑤配信した回数に応じて、広告主にお金を請求してメディアにお金を払う。
④差額を利益としていただく。
といった形になります。
僕がつくっていたのは、メディアに貼られているタグに応じて、動画を配信させる仕組みをつくっていました。動画広告の運用保守では、各種サーバーの状態を監視していました。トラフィックの増減によって、処理が遅くなることがあるので、処理が遅くなった時はチューニングして早くしたり、サーバーの置換をしたりといったところです。あとは、たまにバグやら障害やらが起こるので、そのトラブル対応ですね。。。
言語、環境的には、PerlとMySQLをAWS上で動くようにつくっていました。フロントは、TypeScriptを使って書いていました。Perlは10年くらい使っていて、一番好きな言語です。Perlについて語らせたら、1日以上喋れますよ(笑)
クラベスへ入社した決め手はなんですか?
会社が小さいからこそ、やってやるぞ!とそそられた
楽器の「クラベス」を買おうと思って検索をかけたら、楽器と同じ名前のECの会社を見つけました。普通、ECとかWebの会社って渋谷とか表参道に多いのに、なぜまた両国なんだと。もともと、会社を辞めようと思っていたところだったので、話だけでも聞いてみようと思いました。
会社のイベントとかにも誘ってもらえて、会社の雰囲気とか、代表の堀内や他のメンバーの印象とか、いい会社だなと感じました。会社的にはまだ小さくて、整っていない部分も多くて、そこがまたやってやるぞ!と燃えましたね。Linuxのシステム構築など、人によってやり方がまちまちだったりするので、この辺を統合したいなと考えています。
クラベスでの業務内容を教えてください
新規開発だけでなく、若手育成にも力を入れる
今は、家具メーカーやアパレルのお客さまのECを新規開発しています。昨年11月に行われたMeetMagentoで家具商品の見せ方についての苦労話を語ったので、ぜひそちらも読んでみて下さい。
他にも、メンターとして若手エンジニアやインターン生の指導をしたり、不定期で技術勉強会を開いています。過去の勉強会では、オブジェクト指向やDBについて語りました。あとは、社内ツールの選定も行いました。社内のコミュニケーションツールにSlackを導入したり、ドキュメント共有ツールにNotePMを導入しました。
今後、クラベスでやりたいことは何ですか?
エンジニア教育・開発標準の決定・ECフレームワークの開発
今やりたいことは、3つです。
1つ目は、エンジニア全体のレベルの底上げです。クラベスのエンジニアのレベルが低いというわけではなく、クラベスでは、既存のソリューションに手を入れて開発しているため、それだけでは設計に関する能力が培われないことを懸念しています。1からテーブル設計して、どのようなWeb Application Frameworkを使用して、クラス設計をどのような形でして…といったことが、既存のソリューションではすでに行われています。その結果として、若手エンジニアが設計をする機会が少なく、”設計に弱い”という状態にあると思います。既存のソリューションを使うのみのエンジニアなら、設計能力は必要ないか、というと、そこもNGだと思います。設計の経験があるとないとでは、システムに対しての憶測の立てやすさが変わります。このあたりを改善して、全員が設計を行える・つくられた設計を読み解けるエンジニアを育てることが目標です。
2つ目は、業務フローを固めていきたいです。今までは、個人に任せていた部分もあったのですが、徐々に固まってきて、
・サーバーはAWSでつくる
・新規のWebサービスは、Ruby on Railsでつくる
という方針が決まりました。今後決めていきたいのは、Linux上のサーバーの立て方とか、監視についても統一する、といったところでしょうか。監視については、システムもですが、深夜トラブルの対応の仕方とかも決める必要がありそうですね。
3つ目は、ECフレームワークをつくりたいです。EC部分ではないけれど、根幹の部分では、データベースのデーブルを作るのみで全ての機能が作られるという形のものを実装してみたいです。ECのフレームワーク自体は、上述のことが実現できさえすれば、こだわらないかなと。ここ2、3年くらいでトレンドが、サーバ側はデータのみをAPIで返して、フロント側でJavaScriptをつかってリッチな表示にする、といったものになっているので、作るならそのトレンドに沿うかなと思います。こう思ったきっかけは、話すと長くなるのでこちらに書きました。
———–
クラベスのことを誰よりも考え、入社以来、クラベスに変革をもたらしてくれています。若手の育成にも熱心で、厳しくも優しく指導してくれる、とても頼もしい存在です。これからも、エンジニアの中心として、クラベスを引張ってくれることを期待しています!
業務拡大につき、エンジニア絶賛募集中です。少しでも興味をもった方、まずは一度、話を聞きに来てください!