ダイレクト出版のプロダクト企画開発部では、ゲリラ的に社内勉強会が開催されているんですが、今回は第二開発ユニット(4名)がTerraformに関する勉強会を開催してくれました。
社内でTerraformを導入しているサービスは一部あったんですが、「IaC」という概念が社内ではまだまだ浸透していないという現状だったので、入門編というか、布教活動みたいなノリでしたね(笑)
【勉強会内容】
- そもそもIaCってなに? 宣言的構文で状態管理できるすごさ
- (実例)めんどくさいインフラ構築をTerraformでラクしてみた
- チームで新しい技術をどう学んでいくか
- Terraformでの状態管理の勘所
開発チームメンバー4人がそれぞれのテーマでLT(ライトニングトーク)を回すという形式で発表してくれました。
プロダクト企画開発部では、開発だけでなくその後の運用工程も担う、「フルサイクルエンジニアリングチーム」として開発チームがデザインされています。で、発表してくれた第二開発ユニットが運用しているサービスの一つが結構インフラの設定めんどくさかったんですよ。「日時やユーザーの状態によって販売ページの出し分けをする」というサービスなんですけど、これまでは、
- Route53でサブドメインの登録 & SSL証明の取得
- ページ出し分けを担うLambda関数を呼び出すAPI gatewayの設定
という作業をAWSのブラウザコンソールからポチポチやっていたわけなんですが、いかんせん管理するドメインの数が多いので結構面倒でした。それが、Terraformを使うことで作業時間を55%も減らすことができたり、ミスが起きづらくなったりといいことずくめでした。プログラマの三大美徳のひとつ「怠惰」から来る良いチャレンジでしたね。
ちなみに、プロダクト企画開発部ではこういった開発以外の取り組み・挑戦は開発ユニットが独自に企画して実行しています。マネジメント層から「今期はこれをやってくれ」と指示したわけじゃなくて、開発メンバーが「これやってみようぜ!」と自由にやっています。もちろん、メインの開発プロジェクトが最優先ではあるんですけど、こういった「緊急ではないが重要な取り組み=第二領域の取り組み」を開発チーム側で企画できているのがいいなと個人的には思います。
最近はAIエージェントの活用がアツいので、次回はAI絡みの勉強会が開催されそうです。
では、今日はこんなところで!