ユーティルに転職して感じた自社開発とSlerの違い

 
当記事をご覧いただきありがとうございます。
エンジニアの長山です。
 
今回の記事では、SIerから自社開発企業であるユーティルに転職した私が感じた違いについてお話ししようと思います。現在転職を考えているSIer企業に所属している方や、ユーティルに興味のある方に対し、SIerとの違いをテーマにユーティルについて発信できればと考えています。この記事を読んで皆様の疑問の解決や理解に繋がれば幸いです!
まずは簡単に自己紹介をし、その後自分が感じた違いを仕事と文化の二つの切り口で述べていきます。

経歴

新卒でコンサル会社に入社。事業者同士をマッチングするサイトをインフラからリリースまで担当したり、自動棚割りシステムのインフラやバックエンドの保守運用を担当したりしていました。
新卒の会社に2年ほど勤めた際に、伸びているサービスをユーザー目線で開発したいという思いが強まり、ユーティルに今年4月に転職をしました。現在はポータルサイトと呼ばれるマッチング用プラットフォームの開発業務を行っています。
 

SIerと自社開発(ユーティル)の違い

仕事の進め方・責任範囲

まず、入社して感じたことはエンジニアとしての役割の範囲が広いということです。ユーティルではサービス単位で開発を行っています。そのため、サービスの機能改善を行う際には、バックエンドからフロントエンドまで幅広い範囲を担当することになります。一方で前職ではプロジェクト全体を分業して担当することが多かった印象でした。
開発手法に関しても違いがありました。前職ではウォーターフォール開発が主流で、要件定義→設計→開発→テスト→リリースと前工程が完了してから次の工程に進んでいました。一方でユーティルではアジャイル開発でサービスの機能改善単位でこの一連の開発工程を繰り返し行っています。個人的にウォーターフォール開発は、経験の浅い自分にとってはやることが明確でありがたかったです。一方でなかなか形として見えてこないためモチベーションの維持は難しかったなと感じます。アジャイル開発であれば機能単位のため、サービスが改善されている実感がリリース毎に湧いてきます。
また、仕様の決まり方に関して、SIerはクライアントの要求から決定されるためこちらから提案することは多くはありません。一方でユーティルのような自社開発企業では、依頼者が身内なことにより業務側に入り込めるため、柔軟に仕様が決まります。仕様に関して開発側から提案することもしばしばあるという印象です。
部署横断に関してもSIer企業は基本的に開発で完結しているためないことが多いです。(前職ではデータ分析・デザイナーさんのような方と連携していることはありました。) ユーティルではサービスの機能改善がメインの業務のため、そのサービスに関わるすべての人と横断的に関わりがあります。関わる方が多いため、意思決定は難しいこともありますが、その分自分が進めている意識があるのでやりがいがあるなと感じます。
まとめるとユーティルと前職のSlerの仕事の進め方・責任範囲の違いは以下の表のようだと感じました。
ユーティルSIer(私の前職)
役割の範囲サービス単位プロジェクトの一部
開発手法アジャイルウォーターフォール
仕様の決まり方柔軟に決定(こちらも提案)クライアントの要求から決定
部署横断あり基本的になし
 

文化

ユーティル独自の要素もあるかと思いますが、文化に関しても大きく違うなと感じることがありました。
まず、重要視していること(目的)が大きく違います。前職では、開発することが決まっており、お客様の要望にいかに応えるかにフォーカスされていました。これはSIerでの開発業務を担当されている方は共感していただけることかと思います。一方で、ユーティルでは課題解決することにフォーカスしています。あくまで課題解決ですので、開発する必要がなければ開発しない方向で問題解決に向かうこともあります。個人的にはここが最も違うなと感じた部分です。やはり前職では。お客様の要望が明らかに効率が良くない場合や費用対効果があっていなくても、すでに決まっているからで開発が必要でした。この葛藤がなくなったのは個人的に仕事のモチベーションにつながっているなと思います。
また、コードレビューもSIerではバグを出さないことが重要視されており、保守性までは意識されていませんでした。(当然保守性も重要だという認識はありましたが、納期と作業量の兼ね合いでバグを出さずに動くことが重要な観点でした。)ユーティルでは保守性といった今後開発するという意識を持って開発することができています。自分が気にできていなかった点なので、レビューをいただく度に勉強しながら少しづつ力をつけています。
コミュニケーションツールに関しては、会社による違いといった感じですが、弊社ではSlackを使用しています。Slackの方が他の方との交流も活発にあり使いやすいなという印象です。また、ユーティルのエンジニアはTimesと呼ばれる自分が好きに書き込みができるチャンネルを持っています。ここで雑談〜仕事の相談まで自由に書き込みができ、リモートが多くてもコミュニケーションを取ることができます。前職ではなかったのでコミュニケーションが疎かになりがちでしたが、この問題が解消される取り組みだなと感じています。
まとめるとユーティルと前職のSlerの文化の違いは以下の表のようだと感じました。
ユーティルSIer(私の前職)
重要視していること課題解決へフォーカスお客様の要望にフォーカス
コードレビュー保守性まで意識バグを出さないことを意識
コニュニケーションSlackTeams
 

最後に

自社開発企業とSIerとの違いを仕事の進め方や文化という観点から違いを述べさせていただきました。個人的に入社する前に想像していなかったギャップは、重要視していることが「課題解決」であるのか「お客様の要望」であるのかです。エンジニアは「プログラムを書いて解決する人である」という固定観念があり、課題を解決できれば手法にこだわらない姿勢は目から鱗でした。この姿勢を持っている方は自社開発企業に合っている方だと感じますし、楽しめる環境が揃っていると思います!
今回は自分がSIerから自社開発企業であるユーティルへ転職してきたという経験からブログを書かせていただきました。自社開発かつユーティルだからこその面白さが少しでも伝われば幸いです。
最後までお読みいただきありがとうございました!
 
ユーティルでは共に「デジタルを広めて日本の中小企業400万社を変革する挑戦」をしてくれる仲間を募集しています。私と同じく伸びているサービスを大きくしていきたいという方やユーティルに興味がある方、軽い気持ちで結構ですのでお話だけでも聞きに来て頂けると幸いです。