K.S / バックエンドエンジニア・受託案件チームリーダー
自社サービスの会社と迷った末に、「裁量」で決めた
——何社か選択肢があったと思いますが、最終的にここに決めた理由は何でしたか。
転職活動では、自社でサービスを持っている会社とも並行して検討していました。最終的に決め手になったのは、「ここなら裁量を持って働ける」と思えたことです。
自分の言う「裁量」は、開発だけを担当するということではありません。先方のご意見をしっかり伺ったうえで、その要望に対してどういうシステムを組むのか、どの技術を選ぶのかを自分で考えて決め、実際に実装まで手を動かす——その一連を任せてもらえる、ということです。もともと開発だけでなくマネジメントの領域にも関わりたいという思いがあったので、そこは重視していました。
選考のなかで社長と直接お話しする機会があり、会社としてどこを目指しているのかというビジョンが明確に語られていたこと、そしてその中で自分がどこまで任せてもらえるのかが具体的にイメージできたことが大きかったです。細かい言葉までは覚えていないのですが、いろいろなチャレンジを受け入れてくれる環境がある、と聞けたことが決め手になりました。
想像より早くチャレンジさせてもらえた。ただ、判断を一人で抱えた時期もあった
——入社前に想像していた働き方・仕事内容と、実際に働いてみて一番違ったところは何ですか。
裁量を持って働けることを一番の軸に選んだとはいえ、入社してすぐに何でも任せてもらえるわけではないだろう、というのが正直な想像でした。ある程度は時間がかかるものだと思っていたんです。
ところが実際には、入社してすぐにいろいろな案件に関わらせてもらい、マネジメントの機会もいただけました。想像していたよりずっと早い段階から、チャレンジさせてもらえたなと感じています。
早い段階から任せてもらえたのは素直にうれしかったですし、その分、考えることも多い時期でした。まだ環境に慣れていないなかで、自分がどう動くのが正解なのかを手探りで探る場面があります。今振り返ると、そのとき誰に相談すればいいのかが自分の中で整理できていなかったのが、一番悩んだところだったと思います。
具体的に迷ったのは、マネジメントとして案件に入り、SESのメンバーと一緒に進めていたときのことです。一人ひとりに対してどう関わるべきか、体制としてどう組み替えるべきかといった判断が必要になる場面がありました。こうした判断は金銭面や人事に関わるので、最終的には社長に判断を仰ぐことになります。
ただ、自分にマネジメントの経験が豊富にあったわけではないので、この進め方で合っているのか、この判断の仕方でいいのか、というところは手探りでした。社長に上げる前に一度壁打ちしたい気持ちはあったのですが、当時は目の前の案件を進めることで精一杯で、誰にどう相談するかまで考える余裕を持てていませんでした。 判断そのものよりも、判断に至るまでのプロセスを一人で組み立てていたことが、当時は一番頭を使った部分です。
今思うのは、「どの判断を誰に相談するか」があらかじめ整理されていると、もっと動きやすくなるということです。判断の内容によって相談先は変わるので、そこが最初に見えているだけでもだいぶ違います。加えて、マネジメント経験が豊富な方に壁打ちできる機会があれば、自分の進め方を確かめながら進められたはずです。ここは会社としても、成長のスピードに合わせてまさに整えているところで、自分もその一部をつくる側に回れるのが面白いところだと感じています。任される範囲が大きいほど相談しやすい環境は効いてくるので、次に入ってくる人が同じところで立ち止まらなくて済むよう、仕組みごとつくっていきたいと思っています。
難しかったのは技術より認識合わせだった
——これまでで技術的に一番難しかった仕事は何ですか。何が難しくて、どう解いたか教えてください。
正直、技術的にものすごく難しかったという案件はあまりないのですが、強いて挙げるならデータ抽出の仕事です。キャンペーン系の案件で、参加人数や応募数、応募の種類といったデータを集計するものでした。大量のデータから、どうすれば効率よく必要なものを抽出して集計できるか、というところは考えました。
難しかったのは、どのタイミングのデータを集計対象とするのか、という線引きの部分です。ここが揃っていないと、出てくる数字の意味そのものが変わってしまいます。実際に大変だったのは技術面よりも認識合わせのほうで、集計結果をどう出すのかという部分で先方との目線が揃っていませんでした。ここは自分の反省点でもあります。
技術的な部分では、Laravel を使っていたのですが、Eloquent の書き方のままでは処理速度が出ないところがあり、SQL を直接書く形に置き換えて高速化しました。
進め方としては、先輩に相談したうえで、集計の定義をドキュメントに起こして擦り合わせました。文字にして擦り合わせたことで目線が揃い、集計もきちんと形にできたと思っています。最終的には検証環境で出した数字が想定と合うかどうかを確認して、問題ないと判断しています。
設計は最終的に自分が決める。ただし、一方的には決めない
——チームの一日・一週間はどう流れていますか。設計や実装の判断は誰がどうやって決めていますか。
朝礼のようなものは特になく、コアタイムは11時から20時です。自分は9時から動き始めることが多いですね。顧客とのやり取りは夕方以降に増える傾向があって、17時頃から活発になります。決まった会議は毎週木曜の定例くらいで、あとはメンバーからの質問やレビュー、相談を随時受けている形です。
設計や実装の判断は、今のメンバーがまだ若手ということもあり、特に設計は最終的に自分が決めています。ただ、こちらが一方的に決めるのではなく、まずは本人に考えてもらい、出てきた案に対して「こうした方がいいんじゃないか」と意見を返す進め方をしています。
意見が分かれたときの判断軸は、お客様にとってより良いかどうか、そして実装として壊れにくいかどうか。それでも判断がつかない場合は、最終的に自分が責任を持って決めます。
働き方としては、自分は出社がメインで、メンバーはリモートがメインです。やり取りはチャット中心で、必要に応じて通話をつなぐこともあります。ただ、それも毎日というわけではありません。文章で伝えきれない場合は通話に切り替える、という判断をしています。
Laravel を軸に、Oracle はお客様の環境に合わせて
——いま使っている技術スタックを教えてください。それを選んだ理由も分かれば一緒に。
メインは Laravel です。キャンペーン系の案件はどうしても短期間で形にする必要があるので、スピード感を持って出せることが大きな理由になっています。加えて、キャンペーンを素早く立ち上げるための自社のフレームワークがあり、それ自体が Laravel で書かれている、というのも大きいですね。
データベースは現在 Oracle がメインです。これはお客様側の事情で、お客様が用意されているサーバー環境が Oracle なので、それに合わせている形です。インフラは AWS を使っています。
フロントは現状 Laravel の Blade を使っています。今後については React を入れていきたいと考えているところです。キャンペーン案件ではなく、お客様の自社アプリの開発を見据えてのことです。今の構成だと画面遷移のたびにページ全体を読み込み直すことになるので、UI として快適とは言えない部分があります。そこを考えると、SPA として組める React を採用したい、というのが今の考えです。
インフラを、上流で語れるようになりたい
——これから挑戦したいことは何ですか。
これから伸ばしていきたいのはインフラ領域です。正直、自分はインフラが弱いという自覚があります。要件定義や見積もりをする場面で、インフラまで考慮に入れて話すのが難しく、その部分はインフラ担当に任せてしまっているのが現状です。上流の段階でインフラまで含めて判断できるようになれば、マネジメントとしての幅も広がりますし、人材としての価値も上がると思っています。
きっかけは、インフラの会議でした。先方のインフラメンバーと自社のインフラメンバーがインフラについて話しているときに、自分はその話についていけなかった。それがどうしても悔しいという思いがあったのが一番です。
今はインフラの勉強を少しずつやっているところで、今後は資格を取っていきたいと思っています。React についても、導入したいという話は出ていると聞いています。一緒にやる人が増えたら、まずは実装を任せていきたいですね。
柔軟に動ける人と。受け身の人にはしんどい環境かもしれない
——どんな人と一緒に働きたいですか。逆に、この環境が合わないのはどんな人だと思いますか。
一緒に働きたいのは、柔軟な思考を持てる方ですね。受託という性質上、先方の都合で状況が変わることは避けられません。そこに柔軟に対応できて、「お客様の役に立つ」という気持ちで動いていただける方だと、一番ありがたいです。もう一つは、感情に左右されず、おおらかに仕事ができる方。そのほうがお互いにストレスなく進められると思っています。
逆に、この環境が合わないのは、受け身で仕事をする方だと思います。求められるものが多い分、自分で解決していかないといけない場面が多い。指示を待つスタンスの方には、正直しんどい環境かもしれません。
経験よりも重視しているのは、やはり姿勢です。真面目に取り組めるか、仕事にどう向き合うか。そこが一番大事だと思っています。入社直後につまずきやすいのは、スピード感のところかもしれません。案件が短いスパンで動くので、そのテンポに慣れるまでは大変だと思います。
最後に一言お伝えするなら——案件がたくさんあるので、忙しいのは正直なところです。ただ、そのぶんやりがいのある仕事が多いですし、お客様と直接話す機会も多い。上流から実装まで、いろいろなフェーズを経験してみたいという方には向いている会社だと思います。そういうことをやりたいという方と、ぜひ一緒に働けたらうれしいです。