じゃあ、おうちで学べる

本能を呼び覚ますこのコードに、君は抗えるか

既にあるものを正しく使うあるいは、インフラストラクチャをつくるとはどういうことなのか

「既存のツールはどれも使えない。自分たちで作るしかない」

はじめに

インフラ/プラットフォームチームでよく耳にする言葉です。監視システム、デプロイメントパイプライン、構成管理ツール。エンジニアたちは次々と内製化の道を選びます。しかし、本当にゼロからの開発は必要なのでしょうか。

このような判断の裏には、私たちが見落としがちな重要な視点が隠れています。多くのチームが「自前開発」という選択肢に飛びつく前に、立ち止まって考えるべきことがあります。

インフラストラクチャを「作る」とは何か

インフラストラクチャを「作る」行為は必ずしもコードを書くことを意味しません。それは組織のニーズに合わせて適切なツールを選び運用プロセスを設計することです。経験豊富なエンジニアは問題解決の方法を知っています。正しい道具を選び効果的に使う経験を持っているのです。

ja.wikipedia.org

優れたエンジニアは必ずしも多くのコードを書きません。彼らは既存のツールを深く理解し効果的に組み合わせることで大きな価値を生み出します。

toris.io

なぜ私たちは独自開発を選びがちなのか

多くのインフラエンジニアは既存ツールよりも独自開発を選びます。その背景にはいくつかの思い込みがあります。

最も多いのは「自社の環境は特殊だ」という思い込みです。確かにどの組織にも固有の課題はあります。しかしそれは既存ツールの組み合わせで解決できることが多いのです。

次に「既存ツールの学習コストが高すぎる」という過大評価があります。新しいツールを作るコストと比べて本当にそうでしょうか。長期的な運用コストまで考える必要があります。

また「技術的チャレンジへの期待」から独自開発を選ぶこともあります。新しい技術を学ぶことは重要です。しかし既存ツールの深い理解と活用にも同様の技術的チャレンジは存在します。

組織とツールの調和

ツール選定で最も重要なのは組織の成熟度とチームの体制に合わせた選択です。これは単なる技術的な判断ではありません。

チームの技術力と学習能力は現状と将来の両面から判断が必要です。既存ツールの採用はチームの学習機会にもなります。

組織の運用プロセスと文化もツール選択に大きく影響します。例えばGitOpsツールの導入ではチームの作業フローやレビュープロセスも再設計する必要があります。ツールの導入は組織全体の変革につながるのです。

OSSとの関わり方

新しいツールを作る代わりに既存のOSSプロジェクトへの貢献を選択する価値は大きいです。これは「作る」から「改善に貢献する」への文化的シフトを意味します。

OSSプロジェクトへの貢献は単なるコード提供以上の意味があります。コミュニティとの関わりを通じてチームの視野は広がります。技術力も向上します。

3-shake.connpass.com

zenn.dev

インフラストラクチャの価値を最大化する

インフラエンジニアとしての価値ある選択は時として「作らない」という判断です。既存のツールやサービスを組織に合わせて活用し真に価値のある部分に時間を投資すべきです。

新しいものを作ることは選択肢の一つに過ぎません。より重要なのは組織の目標達成に最も効果的な手段を選ぶことです。そのためには既存ツールの深い理解が必要です。組織のニーズを正確に把握することも欠かせません。

speakerdeck.com

まとめ

インフラストラクチャを「作る」とは新しいツールを開発することだけを意味しません。それは既存の優れたツールを理解し組織に最適な形で導入することです。

組織にとって重要なのは、「新しいものを作る」よりも既存のものを効果的に活用し改善に貢献できる文化を育てることです。これにより、インフラストラクチャの真の価値を最大化することができます。

同時に、エンジニアにとって新しい技術への挑戦や実装は大きな魅力であり、そこから得られる学びや成長は貴重な財産となります。組織の正解と個人の楽しさは別物ですが、どちらも尊重しなければならないのでバランス感覚は必要です。楽しくなければエンジニアなんて退職してしまいます。

優れたエンジニアは、この組織のニーズと個人の技術的探求のバランスを取りながら、キャリアを進めていっている気がします。