はじめに
はじめまして、開発本部 kintone アプリ化チームの okarin です。
先日、 JJUG CCC 2026 Spring に初参加し、 LT で登壇しました。
Java は使い始めて4ヶ月程度とまだまだ初学者の身ではあるのですが、 JJUG CCC 2026 Spring に参加してとても良い体験になりました。初学者の方にも参加するきっかけになれば良いなと思い、今回こうして記事にしました。

聴講したセッション
当日は以下のセッションを聴きました(時間順に並べています)。
Enum徹底入門
Enum の仕組みから活用パターンまで幅広く解説していました。個人的には Enum はクラスであるということ、 Enum 定義の中に状態と遷移ルールを記載することができる、ということが学びになりました。特に前者は OpenJDK のソースコードを読みにいったり JLS を読みにいくきっかけになりました。
軽量Java基盤の設計 ー DIコンテナに頼らない、長期保守と1秒起動の実現
Java のプロダクトは起動やテストに時間がかかりがち、ということでそれを短縮したという話を期待して聴きにいきました。 DI コンテナを使用せずに、サービスロケータを改良した独自の依存解決フレームワークを作成し、起動時間の短縮に成功したという内容でした。 kintone 開発ではなかなか採用しづらいアプローチなのかなと感じましたが、1つのアイデアとして学びになりました。
Modular Monolith Locally, Microservices in Production
マイクロサービスはローカル開発では立ち上げづらい、サービスを跨いだデバッグがしづらいという課題があり、それを解決するアプローチを解説していました。
ローカル開発環境では1プロセスの中で各種サービスを立ち上げてモジュラーモノリスとして振る舞い、本番環境ではマイクロサービスとして振る舞う、というもので面白いアプローチでした。
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転
こちらのセッションは弊社の前田さんによる発表で、 kintone のレガシーコードを改善した話になります。具体的には、 Web に公開しているインターフェースを Controller 層からより内側の Service 層でも利用することで、RecordData という複雑なクラスへの依存を解消していきました。この改善活動があったからこそ、いま現在自分たちがスムーズに開発を進められているんだと実感する内容でした。長年続いているプロダクトを開発している人にとって面白い内容だと思うので、詳しくは以下の資料をご覧ください。
大規模なメトリクス収集の仕組みをアーキテクチャ変更して得た学び
こちらも弊社の谷さんによる発表です。 kintone の性能ダッシュボードを開発するにあたって、初期段階では価値検証のためコストの低い実装を行い、実際に価値があるとわかった段階でスケーラビリティを考慮してアーキテクチャを見直して設計した、という内容でした。価値を最速で届けるためのアプローチとして、最初から完璧なものを作る必要はない、というのはシステム設計の時に考えるべきポイントの1つだと感じました。
Inside Stream API
Java の Stream API の内部実装をみていく話でした。仕組みがどうなっているのかを知るのが好きなので聴きにいったのですが、全てを理解するのは難しいセッションでした。しかし、OpenJDK のソースコードを読みたい欲が高まったので、聴きにいってよかったと思います。
なぜJavaのジェネリクスには「PECS原則」が必要なのか? - Scala/Kotlinと比較して理解するワイルドカードの設計思想
Java のジェネリクスを学んだ時に PECS(Producer Extends Consumer Super)という言葉が何度か出てきたのですが、実は今までしっくりきていませんでした。このセッションを聴いてようやく PECS が何を意味しているのかが分かり、 <? extends T> や <? super T> が理解できるようになりました。
また、 Kotlin はこれらを out/in で表現することができ、違反した使い方をしようとするとコンパイラで検知してエラーになるという点は便利だなと思いました。
switch式で始めるJava流パターンマッチング
Java 21 から導入されたパターンマッチングに関する解説になります。まだパターンマッチングに慣れていないので、改めて勉強になりました。
Javaコミュニティをもっと楽しむための9箇条
Java 初学者にはとても助かる内容でした。そもそも JJUG ってなに?というところから、日本にどういう Java コミュニティがあるのか、もっと Java コミュニティを楽しむにはどうすると良いのかを知ることができました。
Javaコミュニティの関心の変遷を可視化する:JJUG CCC 発表データから見る変化と不変
これまで JJUG CCC でどういう内容の発表が行われてきたのかをデータ分析して解説していました。なんとなくこういうテーマが多い、というものではなく、しっかりと定量的に分析しているところが非常に面白かったです。
LT
すべてのセッションが終わった後に参加者交流会 兼 LT大会がありました。想像していた以上にテンションの高い LT 大会で驚きでした。
LT の中では絵文字の話が印象に残りました。 Java 21 では Character.isEmoji('🤧') が false を返すなど、なぜそんな仕様になっているのか、と突っ込みたくなるような内容からスタートしていて面白かったです。
また、自分も LT で登壇しました。 Java の経験は浅いですが、 ./gradlew build の仕組みを調べて整理して話すことができたのでよかったです。
まとめ
JJUG CCC に参加してみて、初学者でも楽しめる場だと分かりました。参加する前までは難しい内容なのかな、と思っていて少しハードルがあったのですが、実際には初学者向けのセッションもあり、非常に勉強になりました。自分にはまだまだだから、と思っている方にこそ JJUG CCC への参加をお勧めしたいです。この記事が参加のきっかけになれば幸いです。