開発部モバイルアプリ開発チームの小関です。
昨年行われたKotlin Fest 2025に弊社のAndroidエンジニア2名で参加してきました。
本記事では、参加した小関と横山の2名による対談形式で、印象に残ったセッションや会場の様子をレポートします。

自己紹介
小関:シンクロ・フードに新卒で入社して8年目の小関です。普段はモバイルアプリチームのリーダーとして、飲食店と、飲食店で働きたい求職者をマッチングする「求人飲食店ドットコム」のモバイルアプリ開発を主に担当しています。AndroidやKotlin系のイベントに関しては今回が初参加になりました。よろしくお願いします。
横山:中途入社2年目の横山です。私も普段は主に「求人飲食店ドットコム」のAndroidアプリ開発を担当しています。Kotlinに触れ始めたのは入社後からなので歴はまだ浅いのですが、少しでも知見を得られればと思い、今回初めてKotlin Festに参加しました。よろしくお願いします。
セッション1:文字列操作の達人になる 〜 Kotlinの文字列の便利な世界 〜
小関:Kotlinの文字列の内部構造の説明から始まり、10個ほどの知見が共有されました。初心者向けのメソッドからテクニック的なものまで幅広かったですが、横山さんはどこが印象的でしたか?
横山:紹介されていたものの多くは知っている内容でしたが、いくつか知らないものもあり勉強になりました。特に 正規表現の名前付きキャプチャーグループ の箇所ですね。現在開発しているアプリ内でも正規表現を使っている箇所が多々あるので、これを使ってリファクタリングすることで、より分かりやすいコードにしていきたいと感じました。
小関:今の我々のコードでは名前付きにしていない箇所が大半だと思いますので、つけたほうが可読性が上がりそうですね。
横山:もう一点、複数行の文字列に対してシンタックスハイライトを効かせる機能も参考になりました。IDE側の補完機能ですが、覚えておきたいですね。
小関:同じく9番目の正規表現における話でいえば、Multiline strings (""")のコラムとして紹介されていた、バックスラッシュによるエスケープを重ねなくて済むという話が気になりました。弊社の現状のコードを見ると一部では使われていますが、徹底はされていない状況なので、今後は積極的に使っていきたいですね。
横山:確かにそうですね。
小関:他に私が気になったのは、8番目に紹介されていた lines() メソッドですね。現在、アプリ内で改行コードをBRタグに変換して繋ぎ直す処理がありますが、現状のコードは正規表現で複数の改行コード(\n, \r, \r\n)を判定して変換するような書き方になっていました。lines() を使えばより簡潔に書けることが分かったので、リファクタリングの参考にしたいです。存在自体を知らなかったので、便利だなと思いました。
セッション2:内部実装から理解するCoroutines ー Continuation・Structured Concurrency・Dispatcher
小関:続いてはCoroutineのセッションですね。内容について、横山さんから簡単に説明いただけますか。
横山:このセッションでは、Coroutineの中心的なコンセプトを仕組みから理解し、ソースコードを読めるようになることを目指して、Continuation、Dispatcher、Structured Concurrencyの3点について解説がありました。
横山:正直なところ、私はどれも聞き慣れない言葉が多く難しく感じたのですが、小関さんはどういった印象を持ちましたか?
小関:私もContinuationなどの詳細については改めて学ぶ部分が多かったです。このセッションではContinuation周りをデコンパイルしたコードを基に説明されていましたが、実際にJVM上で動作する際に中断ポイントの前後にラベルをつけて制御しているといった内部実装の話は、普段意識しないブラックボックスな部分だったので非常に興味深かったです。
横山:なるほど。Dispatcherに関してはどうでしょうか。
小関:Dispatcherに関しては、現状はwithContextを使って Dispatchers.IOに切り替えるコードなどを書いていますが、Dispatchers.Defaultとの処理の差までは意識できていませんでした。今回の図解による解説を通して、各Dispatcherがどのようにスレッドを扱っているのかイメージが持てたという点でためになりました。
セッション3:AIとの協業で実現!レガシーコードをKotlinらしく生まれ変わらせる実践ガイド
小関:Javaが多く残っているプロジェクトをKotlinにリプレイスする際、AIをどのように活用するかという知見が共有されたセッションでしたね。「Kotlinらしさ」をどう定義し、AIに表現してもらうかという言語化の部分が印象的でした。
横山:「求人飲食店ドットコム」のアプリも、Kotlinで書かれてはいるものの古い書き方が残っている箇所があるので、スライドにあったプロンプトの工夫などを参考に改善していけるのではないかと思って聞いていました。
小関:横山さんは普段、どのように生成AIを使っていますか?
横山:変数名や命名規則の候補出しという単純なものから、リファクタリングの例を挙げてもらうといった使い方もしています。Android StudioのGitHub Copilotプラグインもそうですが、弊社の全社員が利用しているブラウザ版のGeminiを会話形式で使うことも多いですね。
小関:なるほど。セッションの中では、何もコンテキストを渡さないとAIがJavaの文法に近いKotlinや古い記述を出力してしまうという課題が挙げられていました。あらかじめ「モダンなKotlinとは何か」をインストラクションとして渡しておく手法は参考にできそうだと感じました。例えば、セッション1で話題に上がった lines() のようなメソッドも、「改行コードの分割には正規表現ではなく lines() を優先して使うこと」といった具体的なルールをカスタムインストラクションに含めておけば、より精度の高い「Kotlinらしい」コードを提案してくれそうですよね。
横山:そうですね。チームで推奨する書き方をあらかじめプロンプトに入れておくだけでも、リプレイスの質がかなり変わりそうです。
小関:あとはAIの出力を鵜呑みにせず、テストを書いて検証するという点も強調されていましたね。これからAIにコードを書かせる場面が増えていく中で、すべてを人間が目検で確認するのは大変ですよね。テストコード自体もAIに書かせつつ、テストを増やしていくことでデグレを回避し、品質管理を徹底していきたいと感じました。
横山:品質管理といえば、最近はコードレビューの際にもAIの使い方が変わってきましたよね。以前なら、レビュー中に知らない書き方が出てきたら、まず公式ドキュメントや技術記事を漁って、この書き方に特有のハマりどころがないかを一から調べていました。
小関:確かにそうですね。今はまずAIにコードの意図や、考えられるリスクを聞いて、ある程度の「当たり」をつけてから、最終的な裏付けと自分自身の理解のために一次ソースを読みに行く、というフローに変わりました。
横山:はい。AIに事前確認を挟むことで、ゼロから検索するよりも格段にスピードが上がりました。その分、浮いた時間でより本質的なロジックの検討に集中できるようになったと感じます。
全体を通して
小関:セッション以外にもイベント全体の印象はどうでしたか?
横山:弊社ではKotlinはAndroidアプリ開発でのみ使用しているので見えていなかったところですが、他社ではサーバーサイドでもKotlinが積極的に活用されているんだなというのが全体的な印象として強かったです。また、企業ブースごとにスタンプラリーがあったり、スタッフの方たちが気さくに話しかけてくれたりして、各社のブースを回って楽しむことができました。実際にスタッフの方たちから、現場での開発手法や裏話なども聞けて非常に良かったです。
小関:オフラインイベントならではですよね。スポンサーブースで各社がどのようなアーキテクチャで開発しているかを図で示してくれているブースが多く、非常に参考になりました。バックエンドもKotlinで書くことで、1人のエンジニアがAPIとアプリの両方を見ているような事例もあり、同じ言語で書かれている利便性を感じましたね。
横山:ノベルティもたくさんいただけました。
小関:入場時にもらったロゴ入りのミニトートはデザインも良く、普段使いできそうで嬉しかったですね(笑)。
小関:最後に、今回初めて技術カンファレンスに参加してみていかがでしたか。
横山:他社のエンジニアの方々とお話しする機会はあまりなかったので、スポンサーブース以外にも懇親会で他社のAndroidエンジニアの方々と交流できたことは貴重な体験になりました。自分の知識不足を再認識できたことで、学習に対するモチベーションが非常に高まりました。
小関:私もAndroidやKotlinのイベントに参加するのは初めてでしたが、サーバーサイドでの広まりなど、実際に会場に足を運んで肌で感じられることが多かったです。他社さんも我々と近い状況で、これからJetpack Composeを導入していくというフェーズの会社もあり、少し安心した反面、よりモダンな開発環境へのアップデートを加速させていきたいと強く感じました。
横山:はい、頑張りたいです。

以上、Kotlin Fest 2025のレポートでした。
今回のカンファレンスを通じて、最新の技術動向だけでなく、Kotlinエンジニアの方々の熱量に触れ、良い刺激をいただくことができました。 登壇者の方をはじめ、この素晴らしいイベントの運営・開催に携わったすべての皆様に感謝申し上げます。
今回得た知見や刺激を日々のプロダクト開発に還元し、価値あるサービスを提供していけるよう、チーム一丸となって取り組んでいきたいと思います。 最後までお読みいただき、ありがとうございました。






