Author Archives: manamin0521

世界を見据えたプロダクトへ。攻めのSREがバージョンアップを経て思うこと

manamin0521|2019年02月05日
インタビュー

<プロフィール>
金澤裕毅(かなざわ ゆうき)
1976年宮城県仙台市生まれ。山形大学大学院修了後、パッケージベンダーへ入社。Windowsパッケージ開発やASP案件の開発に携わる。東京、札幌の勤務を経験後、不動産検索ポータルの運営会社に転職。新規事業のリニューアルプロジェクトを経験。2013年、ランサーズへジョイン。現在はSREとしてランサーズの開発、運用に尽力している。趣味はバドミントン、将棋など。

普段の業務

ランサーズの運用を主に行っています。もともとインフラエンジニアとして入社し、サーバー運用をメインで行ってきましたが、当時のランサーズは人も少なくPCのトラブルが頻発していたことから、その解決のために複数の仕事をこなす必要がありました。その関係で、今もランサーズの開発や社内情シス的なことも一部行っています。

普段の運用も、ただ維持するだけではなく、将来的な拡張を常に意識して行っています。言語やフレームワークを最新バージョンへ積極的にアップデートし、新しい技術を取り入れることにより、技術の陳腐化を防ぎ、エンジニアにとっても魅力的な環境になるように心がけています。

同じ思いを持った仲間とチームで

  • 最近、仕事で一番やりがいを感じたことを教えてください。

同じ思いを持って集まったみんなと一緒に、今までだとできなかった仕事を進めていけることです。

昨年、チーム名を「インフラ」から「SRE」に変更し、SREとしての業務を始動しました。SREとはGoogleが提唱した言葉で、簡単に言えば、エンジニアリングを駆使してサイトの信頼性向上を図ることです。単純なインフラ業務にとどまらず、ソフトウェアにも積極的に手を入れるという考え方は、まさに今までランサーズでやってきた業務そのものでした。

社内イベントでその集大成となる発表を行ったことで、その考え方に共感していただけた方々がランサーズにジョインしました。それまで専任は1人だったのですが、SREが4人体制のチームになったことで、できる仕事の幅が広がり、やりがいを感じています。

 

「攻め」を阻む、レガシーな技術

  • なぜSREである金澤さん主導でバージョンアップを推し進めていたんですか?

インフラ的にもパフォーマンスとセキュリティの課題があったからです。
インフラに関してはポリシーである「攻め」の姿勢で、AWSを中心に新しいサービスを積極的に入れてきた一方で、メインサービスであるランサーズのPHPバージョンは10年前のものであり、会社創業時のままだったんです。そのため、新しい技術を取り入れる際にもPHPの古いバージョンがネックになり、採用できない事例が相次ぐようになっていました。

また、言語やフレームワークのサポートが切れ、セキュリティのトラブルがあっても自分たちSREチームでサポートしなくてはならない。インフラ的な観点でも、最新のPHP7にバージョンアップするとパフォーマンスが2倍近くアップすることが見込まれる。そこで、SREとしても取り組むことにしたんです。

 

PHPカンファレンスでの登壇を経て

  • 福岡、東京、仙台と数々のPHPカンファレンスに登壇してきた金澤さんですが、それらを通してどのような変化がありましたか?

PHPカンファレンス福岡にてバージョンアップの取り組みについてはじめて登壇した際に、当時多くの企業が同じ課題感を持っていたため、皆さんから積極的にアドバイスしていただけました。またランサーズの規模でのバージョンアップは前例が少ないため、社外から動向を注目してくれる方が増えました。

これまではAWSやインフラのイベントに登壇したことはあったものの、PHPのイベントはバージョンアップを機に初めて登壇しました。多くのPHP仲間ができたほか、ランサーズで開催した勉強会にも参加していただき、情報交換ができるようになりました。

会社の課題を解決することが成長に繋がる

 

  • そんな金澤さんが考える、ランサーズの魅力を教えてください

ランサーズの抱えている課題が、そのまま自分のキャリアアップに繋がることです。

成長し続けているサービスでは、様々な技術的課題が日々突き付けられますが、その一つ一つにやりがいがあり、どのように解決していくかを皆で考えるのが楽しいです。

これから伸びていく会社は、会社が伸びるプロセスで自分たちも成長できます。

仕事が好きで自走できること

 

  • ランサーズで活躍している人の特徴を教えてください

自分で考え、自分で提案できる人です。また、仕事を自分の趣味のように楽しみ、家に帰ってもどのように開発しようか考えているような人です。基本的にみんな仕事が大好きなところが社員の魅力でもあります。

たとえば技術選定などでそれぞれの考えをぶつけ合っている時に、その様子を感じます。それぞれの考えをぶつけ合って考えていくプロセスも、私は魅力的だと思います。

海外のサービスと闘うために

 

  • 最後に、金澤さんの今後の目標を教えてください

自分の目標というよりランサーズの目標なのですが、ランサーズを技術的な面でも認知度を高め、技術的にブランドが確立された会社にしたいです。

現在は外部のAPIを古いバージョンに合わせて拡張しているほか、外部の恩恵を受けている側なので、今後はOSSへ貢献したりランサーズ発のOSSを作りたいと思っています。

将来、海外のサービスと対峙したとき、開発力で勝負できないと淘汰される恐れがあります。そんな淘汰される時代になった時にも、生き残れるような基盤を作っておくことで、技術的に負けないプロダクトにしていきたいです。

開発部のオカンが考える、能動的なチーム作りの秘訣とは

manamin0521|2019年02月01日
インタビュー

<プロフィール> 小林 紗綾(こばやし さや) 鳥取出身のサーバーサイドエンジニア。Webサービスを運営している会社を3社経験し、2014年ランサーズに入社。エンタープライズ対応やプロダクト改善を経て現在はエンジニア兼プロジェクトマネージャーとして各プロジェクトに従事。自らを「オカン」と称しメンター制度の運用や開発合宿の企画などエンジニアがゴキゲンに働ける開発組織作りにも取り組む。趣味はバス釣りとおいしいお酒を飲むこと。

普段のお仕事

新規プロジェクト立ち上げで、SoE(Systems of Engagement)を担当する開発チームのプロジェクト管理者をしています。SoEとは実際に使ってもらう人に向けて、どうやってそのサービスを提供していくか、いわば顧客満足度を担うパートです。遂行するためなら何でもやるので、PMをしながらも開発しています。

 

チームでの成果の最大化

・PMをやる上で感じるやりがいって何ですか?

チームでどうやったら成果を最大化できるか考えることです。人それぞれに得意不得意があるため、誰が何をするのが一番よいかの差配を考えます。

SoEにもつながりますが、開発は「作ったらおわり」ではなく、実際に使ってもらえるものにすることが重要だと思うので、使い方をみんなに教えたり、フィードバックをもらい、改善するところまでやるようにしています。

自他共に認める、みんなの「オカン」

また、各部署に一人ずついるピープルリーダーも兼任しています。ピープルリーダーとは、どうしたらみんながゴキゲンに働けるのかを、トップダウンではなくボトムアップで考える役割です。具体的な役割としては、開発合宿の運営や歓迎会をしたりメンター運用、新しくジョインしたメンバーの受け入れ体制を整えたりなどしています。
もともと世話焼きなので、一緒に働いているみんなをオカンの気持ちで年齢関係なく息子・娘のように思っているんです。

 

チームの立ち上がり速度を上げる

  • 小林さんが大事にしている考え方とは?

チームのみんなが何でも話せるようにすることです。心理的安全性を確保して進めるのは、チームを作りたてのころ特に大事だと思います。

初めて組む人同士だと最初はスピードが出にくいので、コミュニケーションによって立ち上がりのスピードをあげたいです。そのために毎日ミーティングしたり、仕事以外の日常会話も話せるように雑談も交えつつコミュニケーションを密に取っています。困っているのに他の人に相談できないのは、すごくもったいないです。

能動的なチームが魅力

  • 一緒に働いているチームの魅力って何ですか?

みんな受け身ではなく、能動的に意見を出し合いながら話し合えるところです。インターンのチームメイトも自分の考えを積極的に伝えているほか、どうしたらもっと良くなるかをみんなが自分で考えられています。
Article content
 

人の一生に貢献できる意義

  • そんな小林さんが5年勤めてきて感じた、ランサーズの魅力って何ですか?

一つ目はランサーさんの存在です。先日、長崎にさすらいワークで出張した際に、ランサーさんから「長崎に移住することができたのは、ランサーズがあったから」と話していただきました。このように誰かの生活の基盤に貢献できる仕事はなかなかないので、そこにやりがいと意義を感じています。
※社員さすらいワークとは実際に社員が提携自治体でテレワークするほか、そこで行われている「ライター養成講座(セミナー)」の補助講師として参加し、全国各地でランサーズを活用する人を増やす取り組みです。社内で普段ランサーさんと関わらない部署の人でも参加でき、会社全体で目指してる方向はみんな一緒なのだと立ち返るきっかけになります。
二つ目は社員の熱さです。転職活動時に様々な会社と比較した中でも、特に社長の秋好は「真夏かな!?」ってくらい、人の2倍3倍熱かったんです。この熱量が創業から10年たっても変わらないことがまずすごいなと。また、ランサーズのみんなも一緒に熱い思いを持って集まっているので、みんなの熱さに後押しされるところも魅力を感じます。

並々ならぬ思いが活躍の秘訣

  • ランサーズで活躍している人の特徴を教えてください。

一つ目は並々ならぬ思いがある人です。正しいと思ったことを、正しいと信じて突き進むことが大事だと思います。ランサーズは優しい人が多いので、突っ走ってもみんなで支えながらやっているイメージが強いです。
二つ目は常に何のために?が問える人です。昨年はじめてのPMを経験し、様々に新たなチャレンジしながら成し遂げた結果、半期で社内のMCP(Most Challenging Player)を受賞しました。その経験から、目標達成のために目標に立ち返りつつ、常に試行錯誤できる人が活躍している人なのかなと思います。
Article content

 

自分ならではのValue

  • 最後に小林さんの目標を教えてください。

マネージャーになり、人を繋げてチームや会社の総合力をあげたいです。
昨年、5年間で初めてMCPとして表彰された際、長く在籍しているのにちゃんと自分の価値が発揮できてないと強く思いました。そこで今年は、その他大勢ではなく「自分ならではのValue」を出していきたいです。
Article content

コネヒトさんとのランチLT大会

manamin0521|2018年10月09日
開発ランチ(lunchers)

開発部 CREチームの松原です。

先日、コネヒトのエンジニアさんとランチLT大会を行いましたのでその時のレポートをお伝えいたします。

テーマは「CakePHPに関することならなんでもOK」です!

 

以前私がコネヒトさんのイベントに参加した際に、今回ご参加いただいているコネヒトの結城さんと「CakePHPの会社同士でイベントやりたいですね!」と話が盛り上がったことから実施されたイベントとなります。

 

それでは発表順にご紹介させていただきます!

 

「Rails歴2年の私がCakeを半年触って学んだこと」

ランサーズ 松原 @manamin0521m

前までRailsを使って開発していたのですが、入社してから今までにCakePHPに触れ、違いから気づくことが多かったためご紹介させていただきました。

・Railsで省略されている部分がCakePHPだと省略されていないので、オブジェクト指向の理解が進んだ

・CakePHPでは主に配列、Railsではオブジェクトを使ってデータを扱う

「Bye Bye Magic Number」

コネヒト 金城さん @o0h_

マジックナンバーのイケてる管理が難しいので、社内で新しい仕組みを作ったということをご紹介していただきました。

・既存の書き方だとコードの量が多くなり管理が難しい

・辞書のような仕組みを作ったことで書き方が統一されていい感じに!

「CakePHPの勉強会を38回続けた話」

ランサーズ 永田さん@nagatashinyalan

ランサーズで毎週木曜日に実施していたCakePHP 3.x クックブック & ソースコードリーディングの勉強会から得た知見をご紹介いただきました。

・担当者が調べたことを発表するスタイルだったが、発表者の負荷が高く、参加者のキャッチアップも大変だった

・第三回からは音読するスタイルに変更し、疑問に思ったことを話し合い理解を深めるスタイルに変更

「よいOSSを支える3C」

コネヒト 伊藤さん @itosho

https://speakerdeck.com/itosho525/yoiosswozhi-eru3c

Bulk Insertが簡単にできる自作OSS(Easy Query)を作成された際に、もっと使われるOSSにしたいと思ったことからよく使われているOSSの3つの特徴を分析し、ご紹介いただきました。

・Convenience(便利さ)、Clearness(明確さ)、Continuity(継続性)の3Cがポイント

・OSSは使われてこそ輝く

「雰囲気で使わないjoinメソッド」

コネヒト 結城さん @super_manner

雰囲気で使い分けがちだったjoin系のメソッドの使い分けを詳しく解説していただきました!

・シンプルにデータ取得したいときはjoin、既存のアソシエーションが存在する時は、matchingとjoinWith

・matchingはinnerJoinのみなものの、joinWithはinner、left、rightと3種類の指定が可能といった点で違う

「WHERE 1=1」

ランサーズ 金澤さん

昨年の福岡でのPHPカンファレンスの飛び込みLTにて、好評だったお話を発表していただきました!この場限りの内容となるため資料は載せられないのですが、時系列で紹介していただき、とても臨場感がありました。

最後に

今回のLT大会を通して、普段の業務では知り得ないようなことをたくさん知ることができ、CakePHPの新しい一面が見れてとても勉強になりました。また、バージョンが上がるとCakePHPでできることがどんどん増えていくと知り、あと少しで終わりそうなCakePHPのバージョンアップ作業を早く終わらせるべく頑張らねば!と思いました。

コネヒトさん、ありがとうございました!

コネヒトさんの当イベントエントリはこちら

管理画面チラ見せ♡ナイトに登壇しました!

manamin0521|2018年10月04日
イベント/登壇

はじめまして、開発部 CREチームの松原です。先日「管理画面チラ見せ♡ナイト #7」というイベントに登壇してきたのでその資料を公開します。

対象者

・カスタマーサポート向けの管理画面に関わるエンジニア、CSの方など

・会計充当の半自動化のシステムがどのように作られているか知りたい方

・長年積み重なった管理画面のUI負債を解決したい方

・新しく管理画面を作ろうとしている方

 

内容

・最近会計の管理画面を作った話

・安全な運営を支える管理画面

・管理画面のUI改善

 

初めて大きな場で登壇したのですが、とても緊張しました。

おまけのつもりで追加したUI改善の部分に多く注目していただいたのですが、入社してから半年間、自分でどうしてもやりたいと言って取り組んでいた部分だったので、とても嬉しかったです。

多くの方にお世話になったのですが、貴重な機会をいただきありがとうございました!