ロッド、鈎、仕掛けなどの釣り具の製造・販売を行うがまかつ。シンガポールにグループ本社を置き、グローバル展開を行っている同社では、システムの内製化を進めるため基幹システムのリプレイスを決断しました。クラスメソッドは、システムアーキテクチャの設計・運用支援を行うとともに、Infrastructure as Code (以下、IaC)の設計レビュー、Terraformのペアプログラミング会なども実施しました。インフラ環境をAWS上に構築した背景やその成果、クラスメソッドの支援内容・感想について、同社の中野さん、丸田さん、工藤さんにお話を伺いました。
AWSによるインフラ環境の内製化を決断
がまかつの母体は、1955年に兵庫県西脇市で創業した釣鈎((つりばり)メーカー「蒲克鈎本舗」です。その後、製品バリエーションを拡張していき、品質の高い釣り具を国内外で販売し、初心者からプロの釣り師まで多くの方々に選ばれています。そうした事業の拡大に合わせて、システムによる業務効率化が求められていました。
「AWS自体は、AWS Elastic Beanstalkなど社内業務の効率化を促進するシステムで使用していましたが、テスト環境を構築する時や既存環境を再構築する際に、一から最低値をコンソールに入力して設定していました。再現性のところで課題を感じていたので、今回AWSによるインフラ環境の構築に合わせて、Terraformの導入も決めたんです」(丸田さん)
技術的に感覚が合ったクラスメソッドに依頼
しかし、いざ自社でインフラ環境を構築していこうとしていく中で、同社の情報システム課では、AWSの技術的な知見やノウハウが不足していたことを感じたといいます。ベンダーの支援を考えた際に、真っ先に名前が挙がったのが「クラスメソッドだった」と丸田さんは以下のように振り返ります。
「普段からAWS関連で疑問が生じた際は、よくDevelopersIOの記事を参考にしていました。AWSの技術支援に関してクラスメソッドの知名度の高さは群を抜いていましたし、当然技術力は申し分ない。信頼感を持ってお願いしました」(丸田さん)
「相談した後、すぐに提案資料を送ってもらったのですが、そのスピードの速さに驚きました。それでいて、私たちがやりたいことをうまく汲んでくれた内容でしたね。担当の方と話していて、素直に楽しかったですし、技術的なところでも感覚が合うなと感じました」(中野さん)
そして、クラスメソッドは2024年3~7月末の間、AWS環境の構築に関する技術支援とIaCの導入支援、7月以降はQ&A方式による技術支援を実施しました。
メリット・デメリットを踏まえたサービスの説明が信頼感につながった
アーキテクチャを設計していく中で、クラスメソッドの支援はベンダー主導ではなく、「メリット・デメリットを正しく伝えてもらいながら進行できた」と丸田さんと工藤さんは振り返ります。
「例えばGitHubの使用に関しても、コストが増す一方でどれだけメリットがあるのかについて、GitHub Actionsでの自動デプロイなどの根拠を持って説明してもらいました。ほかにも、やりたいことを話すと、それが叶えられるAWSのサービスについて、メリット・デメリットを説明しながら提示してもらえたのは非常に良かったです。AWS内のサービスの違いなどを都度説明してもらったので、今後内製化を進めていく上でも勉強になりました」(丸田さん)
アーキテクチャの設計支援の中で、丸田さんが特に印象的だったのは「AWS Elastic BeanstalkからAmazon ECSへ移行したこと」だったと話します。バッチ処理などの修正が柔軟でなかったのですが、ECSに移行することで解消できたといいます。
「Amazon Step FunctionsとAmazon EventBridgeを活用できる環境に移行できたため、処理の変更や時間のタイミングの変更などを柔軟に設定できるようになりました。今まで属人化していた作業も今回の移行で解消できる見込みがあるのではと期待してます」(丸田さん)
Terraformペアプログラミング会で学習スピードが飛躍的に向上
同社ではTerraformの導入に対し、知見・ノウハウに不安があるということで、クラスメソッドによるTerraformのペアプログラミング・モブプログラミング会を1~3時間、計4回ほど実施しました。
VSCodeのLiveShare機能を活用して画面共有しながら、実際にクラスメソッドの担当者が書いたコードを参考に、丸田さん、工藤さんが分担してその続きのコードを書いていくという流れで行いました。
「書籍などを読んであらかじめ勉強していたとはいえ、業務では未経験でしたので、教えてもらう前は少し不安がありました。しかし、実際にサンプルコードを見ながら手を動かしていくと、そうした不安は杞憂に終わりました。分からないところはすぐに担当者の方に質問できる環境だったので、独学に比べ学習スピードは何倍にも上がったと思います」(丸田さん)
「社内でTerraformを業務に活用した人はおらず、知見が全くないような状態でスタートしました。私たちが書いたコードに対して、リアルタイムにアドバイスがもらえるので、みるみるうちに上達することができました。構築だけでなく、今後運用保守していく上でも、内製化する基盤づくりの第一歩になったと思います」(工藤さん)
クラスメソッドの技術支援は“学びが多い楽しい時間”だった
同社では、今回設計したインフラアーキテクチャの他にもアプリケーション分野での自動テスト部分の改善を予定しており、品質向上に努めていく方針です。
今回のAWS技術支援について、以下のように感想をいただいています。
「技術面で非常に学びの多い期間となり、素直に“やっていて非常に楽しかった”です。クラスメソッドの担当者の方に質問すると、それが議論に発展し、学びとなる。自分が開発してきたものに対して意見をいただけたことは、自分にとって得難い経験となりました」(中野さん)
「支援を振り返って、技術力の高さは、評判通りだなと再確認しました。私が印象的だったのは、質問した際に『この分野は社内に詳しい人間がいるので、確認してみます』と言われたことです。エンジニアごとに得意な分野があって、さらに情報が共有されており、企業全体でエンジニアの層の厚さを感じましたね」(丸田さん)
「Q&Aに関して、私たちに丁寧に寄り添ってくれていると感じました。インフラを構築していく中で、分岐点では複数の提案をしてもらいました。その際も、『今後のアーキテクチャにどの選択肢が最適なのか』について、対話を繰り返しながら決めていけたので非常に満足度は高かったですね」(工藤さん)
クラスメソッドは、今まで蓄積してきたAWSの技術・ノウハウを十二分に活用し、がまかつ 情報システム課の支援を今後も続けてまいります。