サムネイル画像
インタビュー

SHIFTは手を挙げた人が得をする会社──シニア開発者が語る仕事のやりがいと技術への想い

企業ロゴ
株式会社SHIFT

ソフトウェアの品質保証・テストを祖業とするSHIFTは、品質保証の枠を越え、コンサルから開発まで一気通貫で支援するIT企業へと進化しました。従業員数は1万人を超え、非線形の成長を続けています。

同社では、エンジニアがさまざまな技術・業務に挑戦できる環境が整っています。その環境を体現し、幅広い業務を担当しているのが、アプリケーション開発テクノロジーグループの馬塚勇介さんです。

馬塚さんは、大企業向けのアジャイル導入コンサルティング業務に携わる傍ら、社内の開発標準の構築をリードしています。そんな馬塚さんが18年間のキャリアを積み重ねた小さなソフトウェア会社から、SHIFTに転職した理由とは?ご本人にお話を伺いました。

新しい挑戦×品質への取り組み──SHIFTを選んだ2つの理由

―― SHIFTに入社するまで、馬塚さんはどのようなキャリアを歩んできましたか?

馬塚:前職は20名弱のソフトウェアベンチャーで、約18年在籍していました。規模が小さいため、1人でさまざまな業務を担当する必要があり、要件定義から実装、テスト、導入、その後の保守までほぼ1人で対応していましたね。

お客様は飲食業界が中心で、ファミリーレストランや全国展開している居酒屋チェーンの本部システムの開発を担当していました。あとは種苗会社の販売システムや栽培管理システム、農業IoTのシステムも手がけるなど、かなり幅広いジャンルを経験しました。

―― 転職を考えるきっかけは何だったのでしょうか?

馬塚: AWSが登場したことが大きなきっかけです。それまではオンプレミスやデータセンターでのサーバー構築が中心でしたが、AWSの登場で状況が一変しました。

お客様に「AWSを使えば安く簡単にサーバーを構築できます」と提案できる時代になってきたこともあり、もう少しクラウドの知識を深めたいと思ったんです。

ただ当時いた会社では案件も小規模なものが多く、AWSを使ってもサーバー1台レベル。正直に言って、技術的な面白みという意味で物足りなさを感じていました。複数台でのスケーリングなど、AWSの真価を発揮できるような案件にチャレンジする機会がなかったんです。

画像1

―― なるほど。それでもっと規模の大きな企業への転職を決意されたということですね

馬塚:はい。大規模な案件やクラウドサービスの本格的な構築にチャレンジしてみたいというのが一番の動機でした。

前職では自分1人でフルスタックに、バックエンドもフロントエンドもインフラもすべて担当しなければならない状況。幅広いスキルは身につきましたが、チームでの開発経験が不足していると感じていたんです。

―― 転職活動では何を重視しましたか?

馬塚:複数人でチーム体制を組んで開発できることを重視していました。ただ、転職活動を進める中で、自分の適性についても大きな発見があったんです。

もともと、コードの怪しいところを見つけて直すのが好きなタイプでした。自分はプログラムでものをイチからつくることよりも、テストを書いて品質を上げたり、コードをきれいにしたりするような割と地味な作業のほうが性格的に向いているかもしれない。転職活動を通じて、自分の価値を改めて認識しました。

そんな時にSHIFTの募集要項を見て、話を聞いてみることに。面接で「アジャイルチームの中で品質保証をやっていく」という話を伺って、新しいことができそうな予感がありました。当時はまだSHIFTでもアジャイル開発は本格始動していない段階でしたが、これからやっていくぞ!という気概を感じましたね。

また技術面では、テストに関する標準化や、誰でも取り組めるような仕組みづくりがしっかりされているところにも感心しました。まさに自分が興味を持っていた、地味だけど重要な品質保証の分野で、新しいチャレンジができる環境だと感じたのが入社の決め手になりました。

Devコーチから開発標準化まで。実感する技術者としての成長

―― SHIFTでは現在、どのような業務を担当されているのでしょうか?

馬塚:現在の業務は大きく2つに分かれています。クライアントワークが50%、社内業務が50%という配分です。

まずクライアントワークでは、アジャイル導入のためのコンサルティングサービスを提供しています。私の役割はDevコーチと呼ばれるもので、主にスクラムチームの開発メンバーに対して、アジャイルのエンジニアリングプラクティスを教えることが中心です。

―― 具体的にはどのような指導をされているのでしょうか?

馬塚:お客様の開発チームに入って、テスト駆動開発やペアプログラミング、コードの品質向上といった技術面での指導を行っています。

ペアプロをしながら「それはこういうふうに書いたほうがいいですよ」とか、「それはバグの元になるからこうしたほうがいいですよ」といったコード改善のアドバイスをしたり、自動テストの導入や実装のレクチャーを行ったりするなど、自分の適性を活かした支援をしていますね。

―― お客様からの反応はいかがですか?

馬塚: お客様から「いままで手作業でやっていたテストが自動化されて、すごく楽になりました」といった声をいただけると、この仕事の価値を実感します。

ただ、正直に言って大変な部分もあります。お客様によって環境がまったく違うので、扱ったことのない言語やツールに遭遇することもしばしば。

ですが、新しい技術に触れることで、自分の知識の幅が広がっていく実感があります。前職では1人で同じような技術を使い続けていたので、これほど多様な技術に触れる機会はありませんでしたから。

画像2

―― 社内業務では何を担当されているのでしょうか?

馬塚:社内業務では、DQS(Development Quality Standard)というSHIFTの開発標準をつくる作業を行っています。この誰がやっても一定の品質を保てるような基盤をつくる作業、とても好きなんですよ。

画像3

現在は、そのDQSを活用したAI開発プロセスの整備がメイン業務です。DQSを使ってAI開発をどう進めるかというプロセス整備に取り組んでいます。

このプロジェクトには4名程度のメンバーが関わっていて、まだ試行錯誤の段階です。新しい技術領域で標準を作っていくという非常にやりがいのある仕事だと感じています。

AI人材1,000人計画の中核を担い、開発の未来図を描く日々

―― 馬塚さんの社内業務であるAI開発プロセス整備について、もう少し詳しく教えてください

馬塚:SHIFTはAI人材を1,000人程度まで増やすと言っているほど、AI活用に積極的です。会社全体として、本気でAI技術に取り組んでいます。

そして私は、特にDevinを使った開発プロセスの構築に力を入れています。これは要件定義から設計書作成までを基本Devinメインで、人はレビューするだけという、かなり革新的なプロセスです。

まず、お客様からのRFP(提案依頼書)を受けて、通常の要件定義ではなく、PRDというシステムをつくる背景や市場価値まで含めたドキュメントをDevinにつくらせます。そこから全体設計、画面設計、DB設計といった工程も、基本的にはDevinが担当するんです。

画像4

―― AIに任せるだけでは品質が心配ですが、どう解決されているのでしょうか?

馬塚:DQSの中にルールファイルを置いて、Devinに実装させる仕組みを構築しました。単純に「設計してね」と言うだけでは、出力がかなり雑になってしまいます。そこで、API設計なら「エンドポイントはこういうふうに定義して」「こういうメソッドを使って」「APIデザインパターンを活用して」といった、人がAPI設計する時に参考にするような情報を、ルールファイルとしてDevinに与える。これによって、同じルールを使えばどのプロジェクトでも同じような品質の設計書ができあがります。

実装コードのレビューについても、Devinが出してきたPull Requestに対して、CIパイプラインで別セッションのDevinにレビューさせる、ということを行っています。実装時にDevinがルールを忘れてしまったり、ルールから逸脱してしまったりした部分に対して、改めてチェックリストに基づいたレビューを行わせることで、人によるレビューの工数をできるだけ削減しようとしています。

余談ですが、私たちは「ReviewをしてくれるDevin」ということで「Revin」と名付けて愛着がわくようにしています(笑)。

―― 他にもAIツールを使い分けているのでしょうか?

馬塚:はい。Devinだけでなく複数のAIツールを場面に応じて使い分けています。

社内には「SHIFT Copilot」という社内版のGitHub Copilotのような仕組みがあります。これはSHIFT社内VPNとAzure閉域網内でGPTモデルを利用した生成AIを利用できるもので、VSCodeの拡張機能からAzure OpenAI Serviceにつないで開発支援を受けられます。

システム開発の工程や用途に応じて、SHIFT CopilotとClaude、そしてDevinを使い分けながら開発や標準化の作業を進めています。 開発プロセス全体を通してAIを活用していて、デザイン面ではAIデザインツールを使用してデザインの雛形を作成し、それをFigmaに戻してデザイナーが編集するという流れも確立しました。

画像5

―― そのほかにAIを活用されている場面はありますか?

馬塚:レガシーシステムのモダナイゼーションにも活用しています。レガシーシステムって、ソースコードがスパゲティ状態で読みづらかったり、ドキュメントも全くなかったりというケースが多いんです。

そこで、AIドキュメントリバースという独自のソリューションを使って、既存のソースコードを解析してドキュメント化します。さらに、現状のソースコードを解析して「こういうふうにモジュールを分けると、マイクロサービス化して細かいコンポーネントに分けて改善していけます」という提案もAIが行います。

この解析部分と、私がやっているDevinを使った開発を組み合わせることで、レガシーシステムを解析して分割設計し、分割後の新しいシステムをDQSを使って構築するという一連の流れが実現できます。まだ完全には融合できていませんが、すごくいい形になる可能性を感じています。

―― AI活用に関する取り組みのなかで、特に手応えを感じる部分はありますか?

馬塚:やはり、ルールファイルとDQSの組み合わせで、AI出力の品質が大幅に改善されるところですね。

たとえば、アプリケーションにおけるモジュールのレイヤー構造や、バックエンド開発で一般的に実装されるトランザクション制御やログ出力の方法などをDQSで標準方式として定義しているのですが、そのルールに準拠してDevinが実装してくれます。人がやる時と同じように、一定の品質や共通ルールに則った実装が自動でできるんです。

新しい技術領域で会社の開発標準を作っていくという仕事自体もやりがいがありますし、効果が目に見えてわかると本当にうれしいですね。

“新しいことにチャレンジしよう”──技術者を刺激する企業風土

―― SHIFTに入社して、職場環境の面で印象的だったことはありますか?

馬塚:まず、勉強会がめちゃくちゃたくさんあります。現在SHIFTグループの従業員数は全体で1万人を超えていますが、各部署や部門横断で、AI勉強会をはじめたくさんの勉強会が開催されています。

エンジニア同士のコミュニケーションも盛んです。技術的な質問や相談があればチャットで投げています。優秀な人が多いので、この人に聞けば大丈夫という安心感がありますね。

たとえば、AI開発プロセスでテストに関してどうAI活用すべきかで悩んだ時も、QA部門のエンジニアに相談して、実際にAIをどう使っているか、品質はどの程度かといった情報を教えてもらえました。

画像6

―― 学習に対する会社のサポートはいかがですか?

馬塚:資格取得への支援も手厚く、資格に対して報奨金や受験費用を会社が負担してくれます。私は資格取得が好きなので、それを通じて基礎知識を得ることが多いです。AWSやAzureのクラウド系資格、テストに関するJSTQB(ソフトウェアテスト技術者資格)、GitHub関連の資格など幅広く取得しています。

コンサルティング業務で誰かに教える際、なぜこれが必要で、これがあると何が良いのかという背景まで説明するためには、資格取得で得られる体系的な知識が役立つんです。

また、私の部署には「アプリテックG 社内ラボ」という、生成AIによる開発効率や品質向上について議論する技術コミュニティがあります。どんどん新しいことにチャレンジしていこうというスタンスの人が多く、そういう環境に身を置けるのは非常に恵まれていると感じますね。

―― 評価制度の面でも特徴的な点はありますか?

馬塚:SHIFTの評価制度で特徴的なのは、一人ひとりの意向や職種に応じて多様なキャリアパスが選択可能なことです。マネジメント領域ではなく、技術スペシャリストとしてのキャリアパスも用意されています。

クライアントワークと違い、DQSの開発やAI開発プロセスの整備などの社内業務は直接的に収益を生み出しているわけではありません。ですが、将来性の観点で評価してもらっています。今後、クライアントワークで活用した時の利益見込みや会社への貢献度で評価していただけるのは心強いですね。

これは期待の表れとして、やる気を引き出そうという上長の配慮かもしれません。会社が短期的な利益だけでなく、中長期的な視点で技術者を評価している証拠だと思います。

自分でキャリアを切り拓きたい人がSHIFTで成長できる

―― こうした環境で活躍できるのは、どのようなエンジニアだと思いますか?

馬塚:SHIFTは手を挙げた人が得をする会社で、そういう人が伸びていくと感じています。裏を返せば、受け身の姿勢だと成長が難しい環境です。

実際に、何かやりたいことがあれば、すぐにライセンスやアカウントが割り当てられて環境が整います。そうなると逃げ場がないので、やらざるを得ない状況になりますが(笑)、それが成長につながっているとも感じています。

―― 特にどのような方に来てほしいとお考えですか?

馬塚:新しい技術に対して積極的な姿勢を持っている方ですね。AI活用などの最新技術に対して「チャレンジしてみたい」と思える方には、非常に良い環境だと思います。

SHIFTは技術者の主体性を重視し、それを実現するためのサポートを惜しまない会社です。自分でキャリアを切り拓いていきたいエンジニアの方には、ぜひ来ていただきたいですね。

―― 最後に、馬塚さんは今後SHIFTでどのようなことに取り組んでいきたいとお考えですか?

馬塚:今後はDQSを用いた開発環境構築の自動化に取り組んでいきたいと考えています。

いわばプラットフォームエンジニアリングの領域ですね。開発者が開発を始めようと思ったら、すぐに必要なものが揃っている環境にアクセスできる仕組みを作りたいです。環境構築で時間を取られることなく、すぐに本質的な開発作業に集中できるようにしたいと考えています。

画像7

参考:

・独特のロールでバリューを発揮。越境しまくるフルスタックエンジニアの働き方を探る
https://recruit.shiftinc.jp/career/library/id1359/

・SHIFTのエンジニア紹介
https://service.shiftinc.jp/engineers/02/