Slide 1

Slide 1 text

Sansan株式会社 部署 名前 Kotlinバージョンを2.0に上げてみた (サーバサイド編) Sansan技術本部 Sansan技術本部 技術本部 Bill One Engineering Unit Alejandro Ramos

Slide 2

Slide 2 text

Alejandro Ramos Sansan株式会社 技術本部 Bill One Engineering Unit 平成9年⽣まれパラグアイ出⾝。21年からSansanで⻑期インターンを し、23年卒で⼊社。 Kotlin・Scala・Haskellが好き(関数型のファン) 元器械体操部、現在格闘技(グラップリング)を⼀⽣懸命やっていま す。 グラップリングと開発以外の趣味はチェス・数学・物理・CS 昔はあるゲームのセミプロゲーマーをやっていました(ゲーマー卒 業)

Slide 3

Slide 3 text

背景 / Background 2 Kotlin 好きな⼈!Kotlin 2.0 がリリースさ れたみたい update やってみたい⼈いますか? はーい!! では集まってどういう流れでやるか決 めましょうか!

Slide 4

Slide 4 text

Kotlin 2.0の主な変更点 / Key changes in Kotlin 2.0 - K2コンパイラがデフォルトに - K1: PSI構⽂⽊ + BindingContextセマンティック情報 - K2: セマンティック情報が直接格納された構⽂ツリー - K2コンパイラのメリット - 型推論の改善 - IDEのパフォーマンス向上 - コンパイル時間の短縮

Slide 5

Slide 5 text

アーキテクチャ / Architecture 4

Slide 6

Slide 6 text

アップグレードの流れ / How we approached upgrading - アップグレードメンバーで集まって - Patch Note読み会を実施 - 躓きそうなところの洗い出し > 今回はgradleのバージョン以外なかった - 6.8.3 - 8.5が望ましい。それ以降でも多分動くが、warningなどがでる可能性がある - ⼤きい⽅のサービスにとにかく⼊れてみて - 単体テスト・リグレッションテストで問題ないか検証 - 各サービスの担当を決めて、アップグレード作業をする - QAチームにtestingを実施してもらう

Slide 7

Slide 7 text

結果 / Result - 問題なくアップグレードできた - Lead Time: 12⽇間 - Process Time: 各マイクロサービスのアップグレードに3⽇間 + QA 5⽇間

Slide 8

Slide 8 text

No content