こんにちは!株式会社ビズリーチでソフトウェアエンジニアをしている内田です。
2025年6月7日(土)、日本最大のJavaコミュニティイベントである「JJUG CCC 2025 Spring」が、ベルサール新宿グランドにて開催されました。 当日は総勢753名もの方がご参加された1とのことで、とても熱気に満ちあふれたイベントでした。
今回、Visionalグループはセッションスポンサーかつブーススポンサーとしてイベントに協賛し、グループを代表して株式会社ビズリーチ プロダクト本部 プラットフォーム統括部 統括部長の菊池が登壇しました。 また、スポンサーブースでは、多くの参加者の皆さまと交流を深めることができました。 本記事では、大規模システムの改善に挑む当社のセッション内容、ブースの様子、そして私が特に注目したセッションについてご紹介します。
「ビズリーチにおけるリアーキテクティングの実践事例 ~ 大規模システムを継続的に変革するための組織 × アーキテクチャ戦略~」
皆さんの組織でも、長年運用してきたシステムの改修に苦労されているケースはないでしょうか。当社菊池による本セッションは、私たちの組織において事業成長の裏で課題となっていた「技術的負債」をいかに解消し、プロダクト組織のアジリティを取り戻すかについてのお話です。
本セッションは、先の「JJUG CCC 2022 Fall」で発表した「ユーザー数100万人規模の事業成長を止めずに、レガシーコードと戦う」の続編でもあります。
セッションでは、Java製の巨大なモノリスから脱却するための具体的な戦略を紹介しました。「ビッグバンリライト」のような一度にすべてを刷新する方法を避け、ユーザーの利用数が多い「一番の大通り」と言える機能から段階的に刷新するアプローチを採っています。システムをどこで分割すれば良いかはアーキテクトにとって永遠の課題ですが、DDDの考え方や書籍『データモデリングでドメインを駆動する』の「残」の概念もヒントに、ビジネスドメインに沿って切り分けています。
事例として、「求職者様向けプロダクトのリアーキテクティング」「検索基盤の刷新」「プロダクトデータ基盤の構築」を取り上げました。特に検索基盤の刷新は、当初はリアーキテクティングの文脈で始まったものの、新たに検索専門チームを立ち上げて検索APIをサービスとして分離できました。その結果、施策の質とスピードが劇的に向上し、今では事業成長を牽引できる重要な基盤へと進化を遂げた好事例です。
こうした技術的挑戦を成功させるため、開発プロセスや組織文化の変革も並行して進めています。手動テスト中心の文化から脱却して「テストピラミッド」に基づく自動化を進めたり、エンジニアによる品質保証の「シフトレフト」を推進したりと、各チームで品質向上に取り組んでいます。また、ドメイン知識をチーム間で共有する「ナレッジマネジメント」の文化も育んでいます。
セッションの最後では、生成AIを活用したリアーキテクティングの今後の展望についてもお話ししました。
▼当日の発表資料はこちらで公開しています。
スポンサーブースも盛況でした!
セッション会場の外の当社スポンサーブースでは「開発生産性 / 信頼性の観点で、プロダクト成長のためにアップデートしたいことを教えてください」というお題で、参加者の皆様の考えを付箋で共有していただく企画を実施しました。
皆さまからいただいたご意見を集約すると、「AIの導入や活用」と「テスト自動化・品質向上」に関するものが特に多く、興味深い結果となりました。生成AIの登場により開発者の生産性が向上する一方で、成果物の品質をいかに担保していくか、という点はやはり多くのエンジニアにとって共通の関心事なのだと改めて実感しました。
特に注目したセッション
当日は多くのセッションが開催されましたが、ここでは私が特に注目した2つのセッションについて簡単にご紹介します。
楽天24のレガシー基幹システム大刷新 ~Seasar2からSpring Bootへのフルリプレイス
楽天グループ株式会社のTatsuru Higurashiさんによるセッションです。楽天24のバックエンドで稼働していた、Seasar2の在庫連携システムをSpring Bootへフルリプレイスされた事例が紹介されました。
コンテナ化のようなインフラレイヤーの刷新はスコープアウトし、歴史的経緯で複雑化したアプリケーションレイヤーの刷新に集中。アジャイルな開発体制への移行やテスト自動化といったプロセス改善を通じて、チームの行動変容を促しながらプロジェクトを推進されたとのことでした。システムの大規模な刷新において、「小さく始めること」や「やらないことを決めること」、「組織的な変革も両輪で進めること」の重要性を改めて認識させられる内容でした。
シンプルは作れる! - 実験からも見えてきたイミュータブルデータモデルの効果
gishi_yamaさん、川島 義隆さん、清川 佑真さんによる共同登壇のセッション(資料)です。システムの仕様が持つ「本質的な複雑さ」を、人間が「頑張れば理解できる状態」(Complicated)に落とし込むアプローチとしての「イミュータブルデータモデル」と、それを実際に適用してみた事例が紹介されました。イミュータブルデータモデルとは簡単に言うと、プログラミングにおけるイミュータブルの考え方をデータモデルに応用したもので、エンティティをリソース(状態が変化するもの)とイベント(起きた事実として変わらないもの)に分けるモデリング手法です。
生成AIの登場によってコードを書く手間は減りつつありますが、ドメインの「本質的な複雑さ」は変わりません。コードの変更速度が急速に高まる現代において、コードよりも寿命の長いデータモデルの設計がいかに重要であるかを再認識できる内容でした。リアーキテクティングを推進するエンジニアとして、データモデリングは今後も継続して注目していきたいです。
まとめ
改めて、JJUG CCC 2025 Springの運営スタッフの皆さま、ご登壇されたスピーカーの皆さま、本当にありがとうございました。
私は今回初めてJJUG CCCに参加しましたが、Java コミュニティの大きな熱量を感じることができました。技術の話ももちろんですが、設計やプロセス、AIの話などJavaに限らず幅広いテーマのセッションがあり、とても有意義な時間を過ごすことができました。
また当社セッションは100名近くの方にご聴講いただき、スポンサーブースにも非常に多くの方にお立ち寄りいただきました。改めてリアーキテクチャというテーマへの関心の高さを実感しました。お立ち寄りいただいた皆さま、誠にありがとうございました。
最後に、ビズリーチプロダクトのサーバーサイドでは、現在JavaやKotlinといったJVM言語をメインに採用しています。本記事でご紹介したようなリアーキテクチャの取り組みや、ビズリーチでの開発に少しでも興味をお持ちいただけましたら、ぜひ一度カジュアルにお話ししましょう!
皆さまからのご連絡を、心よりお待ちしております!