CI/CDだけをやっているわけではない。自動化のエキスパートが語る「越境」の大切さ

2024/07/23

「私はCI/CDの専門家ですが、CI/CDだけをやっているわけではありません。場合によっては、お客様に組織面での改善のご提案をすることもあります」 

このように話すのは、DevOps推進グループでCI/CDを専門に扱っている植木です。 

変化への対応力が問われる昨今のビジネスシーンにおいて、ビジネスアイデアやフィードバックを迅速に繰り返し、リリースできる仕組みを構築するためにも、CI/CDの導入は非常に重要です。 

2023年1月に入社した植木は、CI/CDまわりのプロフェッショナルとして難度の高いプロジェクトを受けもち、持ち前の幅広い開発知識を武器に多様な改善施策を“泥臭く”実行しつづけているとのこと。 

具体的にどんな案件に携わっており、SHIFT、ひいては植木ならではのCI/CDコンサルティングとはどのようなものなのか。ざっくばらんに話してもらいました。 

  • DevOps推進1グループ 植木

    大学卒業後、株式会社CSK(現SCSK株式会社)に入社し、製造業、保険、官公庁などさまざまな業界のWebシステムや組込みシステム開発に携わり、ITスペシャリストとしプロジェクトの技術的な解決策の提示や解決を推進。その後、オイシックス・ラ・大地株式会社に転職し、Webフロントエンドとモバイルアプリ、バックエンド、SRE、セキュリティなどを管掌範囲とするマネジメント職を経験。2023年1月にSHIFTへ入社し、現在はCI/CDの専門家として難度の高いCI/CD導入支援プロジェクトに参画している。

期限を区切ることなく、CI/CDまわりの最適化を進める役割

――まずはSHIFTのCI/CDサービスについて教えてください。 

植木:いろいろとサービスがあるのですが、柱としては、現状分析から導入・定着まで開発プロセス全体の自動化をトータルで支援する「CI/CD導入支援サービス」をご提供しています。

CI/CDやDevOpsの導入・定着に向けたステップやグランドデザインを検討・策定し、壁打ちをしながら、お客様特有のプロセスや環境にあわせたオーダーメイドなCI/CDを考えて実装していったり、既存のCI/CDの改善・拡張を行ったりしています。 

植木:基礎的な部分から追加拡充へ、ステップ順に進めていくというより、戦略を策定したら、お客様にとって必要なことを優先順位をつけながら進めていくといったイメージに近いと思います。 

――そのなかで、植木さんはどんなことをされているのでしょうか? 

植木:SHIFTではプロジェクトベースで案件へアサインされることが多いですが、私の場合はCI/CDの専門家としてお客様のチームに入り、プロジェクトのように期限を区切ることなく、開発プロセスの自動化に向けたCI/CDの仕組みの最適化をしていくような仕事をしています。 

いまだと、GitHub Actionsでパイプラインをつくったり、GitHub self-hosted runnersの構築・運用を進めたり、あとは手動でやっている業務の自動化に取り組んだりしていますね。 

――複数の会社を並行して担当されているのでしょうか? 

植木:少し前までは2社のお客様を並行して担当していましたが、いまはお客様のご要望もあり、1社にフルアサインしています。

2023年にSHIFTにジョインしたのですが、入社以来、実はこの2社しかまだ案件を担当していません。それだけパワーをかけて、それぞれ対応していきました。 

レガシーの改善とモダンの追求、性質の異なる2つのプロジェクトを担当

――せっかくなので、2社のプロジェクト内容についてそれぞれ教えてください。 

植木:いまやっている案件はあるSaaS製品のお客様なのですが、とにかく歴史のあるパッケージソフトウェアなので、半端じゃない行数のコードがあり、CI/CDの仕組みも重くなっている状態でのご相談でした。 

具体的には、GitLabのリポジトリとCIをGitHubへと移行したいというご要望をいただいて、まずはそこに取り組んでいきました。

ようやく終わりましたよ…、1,000万行オーバーのコードがGitHubに載りました。 

――1,000万行オーバー!半端ないですね… 

植木:1,000万行以上もあるといろいろな課題があったのですが、まずは一安心です。GitHubで現状を再現するのはひと段落したので、いまは開発プロセス全体の改善について、リリースするための仕組みのスリム化に着手しています。 

――なるほど。もう片方の、少し前に終了したプロジェクトはどんなことをされていたのですか? 

植木:いまお伝えしたプロジェクトがCI/CD分野以外も含めるとSHIFTだけで30名規模のアサインのものだったのに対して、もう片方は私超少人数で入っていたものでした。

某SIerさんがJenkinsで構築したCI/CDの仕組みがあるのですが、それが巨大かつ非常にわかりにくい仕組みでブラックボックスになってしまっていたので、例えばJenkinsのバージョンアップにもかなり工数をかける必要があるといった状態でした。 

――レガシーシステムのあるあるですね… 

植木:レガシーなシステムならともかく、運用開始してまだ5年とかそれくらいしかたっていないシステムなので、厄介でしたね。

お客様のDevOpsチームにメンバーとして入り、週次のタスクをそれぞれ決めていきながら積み上げていくという、そんな感じの動き方をしていました。 

こちらも当初は、複雑化したJenkinsをGitLabへと載せ替えていくための内製支援で入っていたのですが、そこだけじゃないところもやるようになっていきました。 

――どういうことですか? 

植木:トータルの仕組みとしてかなりクラウドネイティブな環境がつくられていたのですが、もっとクラウドネイティブにしてスケールしたいとか、アプリケーションのデプロイをもっと簡単にしたいとか、やりたいこと/改善したいことをたくさん構想されていました。 

そんななか、お客様側の担当者が一人抜けることになったので、私の方でそちら方面のタスクもやるようになったということです。

けっこう特殊なアサインだったなと感じていまして、Google CloudやKubernetesといったいろんな技術を急速にキャッチアップして扱うことができたので、非常に面白かったですね。 

――植木さん、Google CloudやKubernetesあたりも知見をおもちなんですね。 

植木:まさにその案件で知見を溜めていきました。とてもいいお客様で、その分野の知見がないことが前提だったので、例えば「Google Cloud学習用のeラーニングを受講していいよ」という形でキャッチアップの時間を別途ご用意いただいたんです。非常に意識の高い、魅力的なチームの下での案件でしたね。 

開発者が気持ちよく開発できる環境への「改善欲」が強い

――お話を伺っていると、1,000万行オーバーの方のプロジェクトはSHIFTの組織力を期待されたものなのに対して、超少人数で担当されたプロジェクトは植木さんの個人力を期待されたものだと感じました。同じCI/CD関連のプロジェクトでも、あり方が全然違っていて面白いですね! 

植木:そうですね。CI/CDの専門家と聞くと「CI/CDだけをやっている人」と思われるかもしれませんが、実際は全然それだけじゃなくて、組織論みたいなところにまで領域を広げることもあります。 

――組織論ですか。 

植木:例えばいま担当しているプロジェクトでは、プロダクト群の歴史が長い分、組織も製品/機能ごとに縦割りになっています。 

もちろん、現場のメンバーは横同士の連携をとろうとしていますし、横串で仕組みを提供するようなチームもありますが人員が足りていません。

本質的に問題を解決するためには、果たしていまのままの組織でいいのか。もっとマトリクス型の組織にした方がいいのではないかなど、そういった部分にまで提案していけるのが、SHIFTのCI/CDチームの醍醐味だと思います。 

――これまで2社の案件にアサインされてきたわけですが、植木さんとしては「こっちのタイプのプロジェクトの方が好き」とかありますか? 

植木:どちらかというと、1,000万行オーバーのコードを全部GitHubに移行させるような泥臭いプロジェクトの方が好きなんですよね。

もちろん、超少人数で担当していたプロジェクトは非常に先進的な技術をふんだんに扱っていたのでとてもワクワクしたのですが、そんなプロジェクトばかりではありませんからね。 

自分は開発者が気持ちよく開発できる環境への「改善欲」が強いのだと思います。

とはいえ、泥臭いことばかりやりつづけるより、理想としてはSHIFT入社直後のように、両方のタイプの案件をバランスよく担当することかなと思っています。 

SHIFTであれば、いろんなステージの案件に携われる

――ここまでおっしゃったCI/CDを軸とする幅広い課題への対応スキルは、どのように磨かれていったのでしょうか? 

植木:そこはSHIFT以前のキャリアで、レガシーとモダンの両方を触ることができたのが大きいですね。

最初のキャリアで大手SIerに入ってレガシーシステムをたくさん触ったりモダンな仕組みを提案し、その後にtoC向けサービスを展開する食品会社に入ってレガシーとモダンが同居するような環境を見ていきました。

CI/CDまわりをやっていると割とどちらの技術も扱うことになりますから。 

――そこからSHIFTへとジョインされたわけですが、実際にCI/CDの案件に入ってみての感想はいかがですか? 

植木:CI/CDは、いざ案件に入るとできることが多いのですが、いかんせんピンポイントな領域なので、専門的に業務に就くことができる機会って実はそんなに多くはないと思います。 

そんななかSHIFTにはいろんなお客様からCI/CDに関するご相談をお寄せいただけるので、それこそ一からCI/CDを導入したいという案件もあれば、既存のCI/CDの仕組みを改善したいというお話もあります。

いろんなステージを経験できるので、変化を楽しめるような人にはかなりオススメできるなと感じています。 

――今後、植木さんとしてはどんなことにチャレンジしていきたいですか? 

植木:私の場合、CI/CDをまったくやっていないお客様をまだ担当していません。

そういった、世の中の開発の流れから取り残されてしまったお客様のCI/CD導入に携わってみたいなと考えています。

もちろん、いま担当している案件の諸々が落ち着いたら、の話ですけどね。 

(※本記事の内容および取材対象者の所属は、取材当時のものです)