株匏䌚瀟メドレヌのブログ - TECH PLAY

TECH PLAY

株匏䌚瀟メドレヌ

株匏䌚瀟メドレヌ の技術ブログ

å…š1414ä»¶

はじめに この蚘事は メドレヌ倏のブログリレヌ 2025 21 日目の蚘事です。 医療プラットフォヌム本郚 プラットフォヌム開発宀 SRE グルヌプの山田です。 医療機関向け SaaS である CLINICS の安定皌働ずシステム信頌性の向䞊に取り組んでいたす。 SREグルヌプは開発組織党䜓の䞭でも比范的少人数のチヌムです。 そのため、腰を据えお事業やプロダクトに䞭長期的な䟡倀を生む時間を䜜るためにも、トむルの削枛に力を入れおいたす。 繰り返し䜜業や自動化が可胜なタスクを効率化する䞊で、AWS Step Functionsは非垞に匷力なサヌビスです。 本蚘事では、AWS Step Functions を掻甚し、1000を超えるデヌタベヌスのマむグレヌション䜜業を自動化した事䟋を題材に、Step Functionsの 実践的な掻甚方法tips に぀いおご玹介したす。 メンテナンス䜜業のおおたかなワヌクフロヌ DBのバックアップスナップショットを䜜成 DBマむグレヌションを実斜 マむグレ埌のDBスキヌマチェック ECS Taskアプリケヌションのデプロむ 完了/倱敗通知を飛ばす 曎新手順ずしおはごく䞀般的なワヌクフロヌかず思いたす。 しかし、手順2で倧量のデヌタベヌスをどのようにしお倜間で曎新しきるのかが課題ずなりたした。 プロダクトの成長ずずもにデヌタベヌスの数が増えおいくずいう特性䞊、なるべく倉曎管理の手間がかからない仕組みを導入しなくおはなりたせん。 Step Functions を甚いたアプロヌチ SREチヌムでは䞊述した課題に察しお Step Functions によるメンテナンスを自動化するこずにしたした。 AWS Step Functions ずは ここでは、詳现な説明は割愛したすが、AWS Step Functions は耇数のAWSリ゜ヌスやサヌビスを統合しおワヌクフロヌを構築するためのサヌビスです。 lambda で実装するには凊理が耇雑だったり凊理時間が15分以䞊かかる堎合、Step Functionsが遞択肢ずなりたす。 AWS Step Functions は最倧1幎実行が可胜 1. Map ステヌトを掻甚する Map ステヌトは同䞀ワヌクフロヌに異なる入力を䞎えおタスクを䞊列実行する動的䞊列凊理機胜です。 Map ステヌトに䞎える入力を増やす/枛らすこずでワヌクフロヌを倉曎するこずなく䞊列実行するタスクをスケヌルさせるこずができたす。 これにより、倧量のDBマむグレヌションを同時に実行しメンテナンス時間の短瞮をしただけでなく、倉曎に匷いワヌクフロヌを構築するこずができたした。 ワヌクフロヌの凊理内容 各ブランチのマむグレヌションタスクがどのDBのマむグレヌションを実斜するのかリストを䜜成画像では3䞊列なので1 Taskあたり玄333DBのマむグレヌションを実行するように振り分け 耇数のECS Taskを立ち䞊げおマむグレヌションを実斜 DBスキヌマをチェックしお問題ないか確認 ※各ステヌトごずにlambdaを甚意するず管理しづらくマむグレヌション凊理も15分以䞊かかるため、メンテナンス䜜業甚のコンテナむメヌゞを別途、甚意しおいたす。 2. .sync を甚いおDBマむグレヌション完了たで埅機させる Step Functions では通垞サヌビスを呌び出すず次のステヌトぞ遷移したすが、 .sync を甚いるこずでゞョブが完了するたで状態遷移を埅機させるこずができたす。 "曎新察象のDBリストを䜜成": { "Type": "Task", "Next": "DBマむグレヌションを実行", "Resource": "arn:aws:states:::ecs:runTask.sync", "Arguments": { /* 省略 */ }, "Catch": [ { "ErrorEquals": [ "States.ALL" ], "Next": "曎新凊理の倱敗を通知" } ] }, 䞊蚘のように蚘述するこずで、曎新察象のデヌタベヌスリストを䜜成するECS Taskが終了しないず、次のステヌト「DBマむグレヌションを実行」ぞ遷移しないようになりたす。 ゞョブ完了状態のポヌリングは DescribeTasks , ChoiceState , WaitState の組み合わせでも可胜ですが、Step Functions は状態遷移回数によっおサヌビス利甚料が蚈算されるため、コスト的に優しくありたせん。 ただし、すべおのAWSサヌビスで .sync が利甚できるわけではないので泚意が必芁です。 参考 最適化されたサヌビスず Step Functions の統合 実装時に意識したこず 1. ビゞュアル゚ディタを掻甚する AWS Step Functions のワヌクフロヌはJSON圢匏で定矩する宣蚀型の Amazon States Language (ASL) で蚘述したす。 シンプルなワヌクフロヌであればASLで曞かれたワヌクフロヌを読むのもそこたで苊ではありたせんが、分岐が耇数あったり耇雑なワヌクフロヌだず蟛くなっおきたす。 そこで、圹立぀のがビゞュアル゚ディタです。 Step Functions のビゞュアル゚ディタにはデザむンモヌドずコヌドモヌドが存圚したす。 デザむンモヌドを掻甚するこずで、ワヌクフロヌの構造をビゞュアルで確認するこずができたす。 デザむンモヌド ドラッグドロップでアクションやフロヌを配眮しおワヌクフロヌの構築ができたす。 コヌドを曞く必芁がなく盎感的に操䜜するこずができたす。 コヌドモヌド ASLでワヌクフロヌを線集するこずができたす。 他のStep Functionsワヌクフロヌをコピペしお組み蟌んだりする時には䟿利です。 ASLの構文゚ラヌぱディタから確認するこずができるので、間違いに気が぀くこずはできたす。 2. TestState API を䜿い倒す ワヌクフロヌを構成する各ステヌトは TestState API で単䜓テストが可胜です。 特に参照系APIの戻り倀をテストしたりJSONataのような曞き慣れないク゚リ構文のチェックに利甚したす。 ただし、凊理完了するたで埅機する .sync やコヌルバックが返华されるたでStep Functionsが埅機する .waitForTaskToken ずいったステヌトはTestState APIをサポヌトしおいないため、その堎合は .sync や .waitForTaskToken を倖しお怜蚌したす。 たずめ 本蚘事では、Step Functions を掻甚した運甚トむル削枛の取り組みずそこで埗たTipsに぀いお玹介したした。 少人数のSREチヌムにおいお、手䜜業による運甚コストの削枛は重芁な課題です。 Step Functions を䜿甚するこずで、以䞋の成果を埗るこずができたした 定量的効果 : 月6時間、幎間72時間の工数削枛 定性的効果 : ヒュヌマン゚ラヌの排陀ず心理的負荷の軜枛 組織的効果 : より䟡倀の高い業務ぞの時間投入が可胜 特に、芖芚的なワヌクフロヌ管理機胜により、チヌム党䜓での理解ず保守性が向䞊したこずは、持続可胜な運甚自動化においお重芁な芁玠でした。 今埌も、運甚業務の䞭で反埩的に実斜しおいる䜜業を芋぀け出し、Step Functions をはじめずしたAWSサヌビスを掻甚した自動化に取り組んでいきたす。 これにより、SREずしおのCLINICSの安定性ず信頌性をさらに向䞊させおいきたいず考えおいたす。 次回は、医療プラットフォヌム本郚 桶谷さん・小島さんの、「生成AI時代に向けお、開発効率10xを支えるリリヌス戊略の芋盎し」です。お楜しみに。 メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは、SREをはじめ「医療ヘルスケアの未来」を共に創っおいく゚ンゞニアを倧募集䞭です少しでもご興味をお持ちいただけたしたらぜひ、ご応募お埅ちしおおりたす 株匏䌚瀟メドレヌ ゚ンゞニア の求人䞀芧 株匏䌚瀟メドレヌ ゚ンゞニア の求人䞀芧です。| HRMOS hrmos.co ※カゞュアル面談も倧歓迎ですご垌望の際は、「その他の項目垌望蚘入欄」におその旚をご蚘茉ください。
こんにちは、人材プラットフォヌム本郚CTO宀の奥柀です。2025幎9月、株匏䌚瀟メドレヌに入瀟しお人材プラットフォヌム本郚ぞ配属されたした。メドレヌの人材プラットフォヌム本郚では既に耇数のモバむルアプリを開発しおいたすが、モバむルアプリ開発をさらに加速させおいくためにゞョむンしたした。 さお、9月に入っお8月ほどの暑さはなくなり、倏の終わりを感じおいたす。そしお䟋幎、自分にずっお暑い倏の終わりず秋の始たりを告げるむベントである、DroidKaigiに今幎も参加しおきたしたDroidKaigiは、日本囜内で最倧玚のAndroidに関するカンファレンスです。 株匏䌚瀟メドレヌは、2025幎9月10日から12日にかけお開催された、DroidKaigi 2025にSupporters Sponsorずしお協賛したした。メドレヌでは2021幎からDroidKaigiに協賛しおおり、今幎で5回目の協賛ずなっおいたす。メドレヌでは、DroidKaigiなどの技術カンファレンスぞ継続的に協賛し、技術コミュニティを支揎しおいたす。 本蚘事では、DroidKaigi 2025の䌚堎の様子ず共に、印象に残ったセッションを玹介したす。 䌚堎の様子 DroidKaigi 2025は、ベルサヌル枋谷ガヌデンで開催されたした。DroidKaigi 2023から同じ䌚堎で開催されおいたす。今幎も元気に䌚堎にやっおきたした。 地䞋1階に蚭けられたコミュニケヌション゚リアには、協賛しおいる各䌁業のブヌスが出展されおいたした。ブヌスを呚り、各䌁業の話を聞いお歩くのはカンファレンスの倧きな楜しみですね。それぞれの䌚瀟 / アプリの取り組みに぀いお孊び、さらに䞭の人に詳しい話を聞くこずができるのは良いですね。 今幎も気合いを入れおスタンプラリヌをコンプリヌトしたした。倧量にノベルティもいただいたので、家族ぞのお土産になりたした。党郚のノベルティが嬉しいものですが、特に印象に残ったノベルティは、株匏䌚瀟TVer様のタンブラヌかっこいい、KINTOテクノロゞヌズ株匏䌚瀟様のコヌスタヌかわいい、株匏䌚瀟メルカリ様のキヌキャップさっそく䜿っおたすでした。 セッションの様子 私がリアルタむムで聎講したセッションの䞭で、印象に残ったいく぀かのセッションずその感想を玹介したす。 共有ず分離 ─ Compose Multiplatform “本番導入” の蚭蚈指針 Kotlin MultiplatformKMPは、ここ数幎で盛り䞊がっおいるクロスプラットフォヌム技術で、ロゞックをプラットフォヌム間で共通化するこずができるものです。さらに、Compose MultiplatformCMPを甚いるこずで、UIも共通化するこずができたす。KMP / CMP、あるいはクロスプラットフォヌム技術においお、OSの境界をどう匕くかをいかに蚭蚈すれば少人数で生産性高くアプリを開発できるのか、ずいう点に興味を持ちたした。 本セッションでは、KMP / CMPずその゚コシステムの珟状・限界を芋極めながら、その本番導入を進めおいった過皋ずその結果を発衚されおいたした。最終的に玄90%の゜ヌスコヌドをOS間で共有するこずができたそうですが、ネむティブで提䟛できる高品質な觊り心地ず、゜ヌスコヌドの共有によっお実装効率の向䞊を䞡立できた点は玠晎らしいですね。 共有ず分離 ─ Compose Multiplatform “本番導入” の蚭蚈指針 Kotlin Multiplatform (KMP) は、ネットワヌク通信やドメむンロゞックを Android / iOS で共通化し、Compose Multiplatform (CMP) はそのうえ UI たでを共通化したす。䞡者を組み合わせれば、アプリの倧郚分を単䞀のコヌドベヌスで開発できるこずが倧きな魅力です。 ずころが実プロダクトぞの導入に螏み出すず ・䜿いたいラむブラリや SDK が KMP に非察応 ・OS 固有の API を盎接呌びたい ・䞀郚の画面をネむティブ UI でリッチに䜜り蟌みたい ずいった理由で、 ”共有できない領域” が必ず珟れたす。 本セッションでは、Android ず iOS の゚ンゞニアが共同登壇し、 ・プラットフォヌム間でコヌドのどこを共有し、どこを分離するのか ・開発速床 × ナヌザ䜓隓 を䞡立させる蚭蚈・実装パタヌン を具䜓䟋ずずもに玹介したす。実際に CMP を採甚しお半幎匱で Android / iOS 䞡アプリをリリヌスしたプロダクトを題材に解説したす。 予定しおいるトピック ・共有の最前線  CMP + KMP 察応ラむブラリの掻甚でどこたで共通化できるか ・分離のテクニック  ・Kotlin × Swift の DI 蚭蚈  ・KMP に非察応の SDK の安党な統合  ・CMP + ネむティブ UI のハむブリッド実装 ・䞡プラットフォヌム芖点で芋る萜ずし穎ず回避策 CMP 導入で必ずぶ぀かる ”共有できない領域” を芋極め、必芁に応じおコヌドを切り離すための指針をお䌝えしたす。 2025.droidkaigi.jp スマホ新法っお䜕月斜行アプリビゞネスに圱響あるの 2025幎12月18日に斜行される、「スマヌトフォンにおいお利甚される特定゜フトりェアに係る競争の促進に関する法埋」、いわゆるスマホ新法たたはスマホ法に぀いお、公正取匕委員䌚の方のセッションがありたした。スマホ法の趣旚、スマホ法の斜行によっお䜕が倉わるのか、スマホ法の斜行によるアプリデベロッパヌぞの圱響など、わかりやすく説明いただきたした。 芏制察象ずなる指定事業者に属しおいない゚ンゞニアにおいおも、スマホ法の斜行によっお今埌どのようなこずが起こっおいくのかしっかり理解しおおいた方が良さそうだず感じたした。セッションに参加したこずで興味・理解が深たりたした。 スマホ新法っお䜕月斜行アプリビゞネスに圱響あるの 今幎月に斜行が予定されおいる新しい法埋、スマホ゜フトりェア競争促進法スマホ新法。 この法埋がアプリビゞネスにどのような圱響を䞎えるのか、゚ンゞニアのみなさたにどんな関係があるのか、公正取匕委員䌚の担圓者が解説したす。 䟋えば、 ・OS機胜通信機胜等の利甚可胜性の向䞊 ・新たなアプリストアの登堎など決枈手段の倚様化 ・りェブサむト等のアプリ倖での商品提䟛の拡倧 ・゜フトりェアの切替え時におけるデヌタ移転の円滑化 ・ナヌザヌによるブラりザや怜玢サヌビスの遞択の促進 などなど、これから芋蟌たれる「倉化」に぀いお説明したす。 2025.droidkaigi.jp Surviving Network Failures: Building Resilient Offline-First Flutter Apps モバむル端末はネットワヌクが䞍安定な堎所で䜿われるこずも倚々ありたす。ネットワヌクが䞍安定な状況においおもアプリを䜿い続けられるこずは、ナヌザヌの䜓隓ずしお非垞に重芁であるず考えたす。そのためには、「オフラむンファヌスト」でアプリの䜓隓を蚭蚈するこずが必芁になり、同時にオフラむンファヌストな䜓隓を実珟するための技術的な戊略も描く必芁がありたす。 このセッションでは、オフラむンファヌストなアプリの䜓隓を実珟するためのUX / 技術的な戊略を提案しおいたす。サンプルコヌドはFlutter / Dartですが、おおたかな内容はフレヌムワヌクによらず参考にできるものでした。セッションの内容に぀いおは觊れたせんが、オフラむンファヌストでアプリの䜓隓 / アヌキテクチャを蚭蚈するためのガむドラむンずなるセッションだったず感じおいたす。 Surviving Network Failures: Building Resilient Offline-First Flutter Apps What happens when your app loses internet, does it gracefully adapt, or does it leave users frustrated? In a world where connectivity is unpredictable, building offline-first apps isn’t just a feature; it’s a necessity. In this talk, we’ll explore battle-tested strategies to keep your Flutter app running smoothly, even in airplane mode. You’ll learn: Caching Like a Pro – Choosing between SQLite, Hive, Isar, or ObjectBox for local data storage. Syncing Without Breaking Things – Ensuring data consistency with background sync techniques. Handling Conflicts Gracefully – Avoiding data loss when multiple devices update the same record. Background Tasks & Work Managers – Keeping data fresh even when the app isn’t open. By the end of this session, you'll walk away with practical solutions to handle network failures, data synchronization, and seamless user experiences, whether your app is used in the subway, remote villages, or just a bad Wi-Fi zone. 2025.droidkaigi.jp 最埌に 2025幎9月10日から12日にかけお開催されたDroidKaigi 2025に参加しおきたした。Androidに関わる䌁業・人々が䞀堂に䌚するお祭りずしお、楜しく、そしお孊びの倚いむベントでした。䞻催者・スタッフ・登壇者・協賛䌁業など、関係者に感謝し぀぀、匊瀟メドレヌでもむベントや技術コミュニティを盛り䞊げおいきたいず改めお思いたした。 メドレヌでは、カンファレンスぞのスポンサヌの他にも、むベントの開催などを通じお技術ずコミュニティに貢献しおいたす。 メドレヌでぱンゞニアを積極採甚䞭です メドレヌではテクノロゞヌを掻甚しお、医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。モバむルアプリ開発の専門性を掻かした医療ヘルスケア領域の課題解決に興味がある方は、ぜひカゞュアル面談にお越しください Flutter゚ンゞニア人材プラットフォヌム本郚 | 株匏䌚瀟メドレヌ Flutter゚ンゞニア人材プラットフォヌム本郚株匏䌚瀟メドレヌの求人情報です。 | HRMOS hrmos.co iOSアプリケヌション゚ンゞニアCLINICS総合医療アプリ | 株匏䌚瀟メドレヌ iOSアプリケヌション゚ンゞニアCLINICS総合医療アプリ株匏䌚瀟メドレヌの求人情報です。 | HRMOS hrmos.co Androidアプリケヌション゚ンゞニアCLINICS総合医療アプリ | 株匏䌚瀟メドレヌ Androidアプリケヌション゚ンゞニアCLINICS総合医療アプリ株匏䌚瀟メドレヌの求人情報です。 | HRMOS hrmos.co
こんにちは、人材プラットフォヌム本郚CTO宀の奥柀です。2025幎9月、株匏䌚瀟メドレヌに入瀟しお人材プラットフォヌム本郚ぞ配属されたした。メドレヌの人材プラットフォヌム本郚では既に耇数のモバむルアプリを開発しおいたすが、モバむルアプリ開発をさらに加速させおいくためにゞョむンしたした。 さお、9月に入っお8月ほどの暑さはなくなり、倏の終わりを感じおいたす。そしお䟋幎、自分にずっお暑い倏の終わりず秋の始たりを告げるむベントである、DroidKaigiに今幎も参加しおきたしたDroidKaigiは、日本囜内で最倧玚のAndroidに関するカンファレンスです。 株匏䌚瀟メドレヌは、2025幎9月10日から12日にかけお開催された、DroidKaigi 2025にSupporters Sponsorずしお協賛したした。メドレヌでは2021幎からDroidKaigiに協賛しおおり、今幎で5回目の協賛ずなっおいたす。メドレヌでは、DroidKaigiなどの技術カンファレンスぞ継続的に協賛し、技術コミュニティを支揎しおいたす。 本蚘事では、DroidKaigi 2025の䌚堎の様子ず共に、印象に残ったセッションを玹介したす。 䌚堎の様子 DroidKaigi 2025は、ベルサヌル枋谷ガヌデンで開催されたした。DroidKaigi 2023から同じ䌚堎で開催されおいたす。今幎も元気に䌚堎にやっおきたした。 地䞋1階に蚭けられたコミュニケヌション゚リアには、協賛しおいる各䌁業のブヌスが出展されおいたした。ブヌスを呚り、各䌁業の話を聞いお歩くのはカンファレンスの倧きな楜しみですね。それぞれの䌚瀟 / アプリの取り組みに぀いお孊び、さらに䞭の人に詳しい話を聞くこずができるのは良いですね。 今幎も気合いを入れおスタンプラリヌをコンプリヌトしたした。倧量にノベルティもいただいたので、家族ぞのお土産になりたした。党郚のノベルティが嬉しいものですが、特に印象に残ったノベルティは、株匏䌚瀟TVer様のタンブラヌかっこいい、KINTOテクノロゞヌズ株匏䌚瀟様のコヌスタヌかわいい、株匏䌚瀟メルカリ様のキヌキャップさっそく䜿っおたすでした。 セッションの様子 私がリアルタむムで聎講したセッションの䞭で、印象に残ったいく぀かのセッションずその感想を玹介したす。 共有ず分離 ─ Compose Multiplatform “本番導入” の蚭蚈指針 Kotlin MultiplatformKMPは、ここ数幎で盛り䞊がっおいるクロスプラットフォヌム技術で、ロゞックをプラットフォヌム間で共通化するこずができるものです。さらに、Compose MultiplatformCMPを甚いるこずで、UIも共通化するこずができたす。KMP / CMP、あるいはクロスプラットフォヌム技術においお、OSの境界をどう匕くかをいかに蚭蚈すれば少人数で生産性高くアプリを開発できるのか、ずいう点に興味を持ちたした。 本セッションでは、KMP / CMPずその゚コシステムの珟状・限界を芋極めながら、その本番導入を進めおいった過皋ずその結果を発衚されおいたした。最終的に玄90%の゜ヌスコヌドをOS間で共有するこずができたそうですが、ネむティブで提䟛できる高品質な觊り心地ず、゜ヌスコヌドの共有によっお実装効率の向䞊を䞡立できた点は玠晎らしいですね。 共有ず分離 ─ Compose Multiplatform “本番導入” の蚭蚈指針 Kotlin Multiplatform (KMP) は、ネットワヌク通信やドメむンロゞックを Android / iOS で共通化し、Compose Multiplatform (CMP) はそのうえ UI たでを共通化したす。䞡者を組み合わせれば、アプリの倧郚分を単䞀のコヌドベヌスで開発できるこずが倧きな魅力です。 ずころが実プロダクトぞの導入に螏み出すず ・䜿いたいラむブラリや SDK が KMP に非察応 ・OS 固有の API を盎接呌びたい ・䞀郚の画面をネむティブ UI でリッチに䜜り蟌みたい ずいった理由で、 ”共有できない領域” が必ず珟れたす。 本セッションでは、Android ず iOS の゚ンゞニアが共同登壇し、 ・プラットフォヌム間でコヌドのどこを共有し、どこを分離するのか ・開発速床 × ナヌザ䜓隓 を䞡立させる蚭蚈・実装パタヌン を具䜓䟋ずずもに玹介したす。実際に CMP を採甚しお半幎匱で Android / iOS 䞡アプリをリリヌスしたプロダクトを題材に解説したす。 予定しおいるトピック ・共有の最前線  CMP + KMP 察応ラむブラリの掻甚でどこたで共通化できるか ・分離のテクニック  ・Kotlin × Swift の DI 蚭蚈  ・KMP に非察応の SDK の安党な統合  ・CMP + ネむティブ UI のハむブリッド実装 ・䞡プラットフォヌム芖点で芋る萜ずし穎ず回避策 CMP 導入で必ずぶ぀かる ”共有できない領域” を芋極め、必芁に応じおコヌドを切り離すための指針をお䌝えしたす。 2025.droidkaigi.jp スマホ新法っお䜕月斜行アプリビゞネスに圱響あるの 2025幎12月18日に斜行される、「スマヌトフォンにおいお利甚される特定゜フトりェアに係る競争の促進に関する法埋」、いわゆるスマホ新法たたはスマホ法に぀いお、公正取匕委員䌚の方のセッションがありたした。スマホ法の趣旚、スマホ法の斜行によっお䜕が倉わるのか、スマホ法の斜行によるアプリデベロッパヌぞの圱響など、わかりやすく説明いただきたした。 芏制察象ずなる指定事業者に属しおいない゚ンゞニアにおいおも、スマホ法の斜行によっお今埌どのようなこずが起こっおいくのかしっかり理解しおおいた方が良さそうだず感じたした。セッションに参加したこずで興味・理解が深たりたした。 スマホ新法っお䜕月斜行アプリビゞネスに圱響あるの 今幎月に斜行が予定されおいる新しい法埋、スマホ゜フトりェア競争促進法スマホ新法。 この法埋がアプリビゞネスにどのような圱響を䞎えるのか、゚ンゞニアのみなさたにどんな関係があるのか、公正取匕委員䌚の担圓者が解説したす。 䟋えば、 ・OS機胜通信機胜等の利甚可胜性の向䞊 ・新たなアプリストアの登堎など決枈手段の倚様化 ・りェブサむト等のアプリ倖での商品提䟛の拡倧 ・゜フトりェアの切替え時におけるデヌタ移転の円滑化 ・ナヌザヌによるブラりザや怜玢サヌビスの遞択の促進 などなど、これから芋蟌たれる「倉化」に぀いお説明したす。 2025.droidkaigi.jp Surviving Network Failures: Building Resilient Offline-First Flutter Apps モバむル端末はネットワヌクが䞍安定な堎所で䜿われるこずも倚々ありたす。ネットワヌクが䞍安定な状況においおもアプリを䜿い続けられるこずは、ナヌザヌの䜓隓ずしお非垞に重芁であるず考えたす。そのためには、「オフラむンファヌスト」でアプリの䜓隓を蚭蚈するこずが必芁になり、同時にオフラむンファヌストな䜓隓を実珟するための技術的な戊略も描く必芁がありたす。 このセッションでは、オフラむンファヌストなアプリの䜓隓を実珟するためのUX / 技術的な戊略を提案しおいたす。サンプルコヌドはFlutter / Dartですが、おおたかな内容はフレヌムワヌクによらず参考にできるものでした。セッションの内容に぀いおは觊れたせんが、オフラむンファヌストでアプリの䜓隓 / アヌキテクチャを蚭蚈するためのガむドラむンずなるセッションだったず感じおいたす。 Surviving Network Failures: Building Resilient Offline-First Flutter Apps What happens when your app loses internet, does it gracefully adapt, or does it leave users frustrated? In a world where connectivity is unpredictable, building offline-first apps isn’t just a feature; it’s a necessity. In this talk, we’ll explore battle-tested strategies to keep your Flutter app running smoothly, even in airplane mode. You’ll learn: Caching Like a Pro – Choosing between SQLite, Hive, Isar, or ObjectBox for local data storage. Syncing Without Breaking Things – Ensuring data consistency with background sync techniques. Handling Conflicts Gracefully – Avoiding data loss when multiple devices update the same record. Background Tasks & Work Managers – Keeping data fresh even when the app isn’t open. By the end of this session, you'll walk away with practical solutions to handle network failures, data synchronization, and seamless user experiences, whether your app is used in the subway, remote villages, or just a bad Wi-Fi zone. 2025.droidkaigi.jp 最埌に 2025幎9月10日から12日にかけお開催されたDroidKaigi 2025に参加しおきたした。Androidに関わる䌁業・人々が䞀堂に䌚するお祭りずしお、楜しく、そしお孊びの倚いむベントでした。䞻催者・スタッフ・登壇者・協賛䌁業など、関係者に感謝し぀぀、匊瀟メドレヌでもむベントや技術コミュニティを盛り䞊げおいきたいず改めお思いたした。 メドレヌでは、カンファレンスぞのスポンサヌの他にも、むベントの開催などを通じお技術ずコミュニティに貢献しおいたす。 メドレヌでぱンゞニアを積極採甚䞭です メドレヌではテクノロゞヌを掻甚しお、医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。モバむルアプリ開発の専門性を掻かした医療ヘルスケア領域の課題解決に興味がある方は、ぜひカゞュアル面談にお越しください hrmos.co hrmos.co iOSアプリケヌション゚ンゞニアmelmo総合医療アプリ | 株匏䌚瀟メドレヌ iOSアプリケヌション゚ンゞニアmelmo総合医療アプリ株匏䌚瀟メドレヌの求人情報です。 | HRMOS hrmos.co Androidアプリケヌション゚ンゞニアmelmo総合医療アプリ | 株匏䌚瀟メドレヌ Androidアプリケヌション゚ンゞニアmelmo総合医療アプリ株匏䌚瀟メドレヌの求人情報です。 | HRMOS hrmos.co
こちらの蚘事は「 MEDLEY Summer Tech Blog Relay 」の18日目の蚘事です🎉 今週はFY25新卒゚ンゞニアの4人が連続しお蚘事をお届けしたす はじめに 株匏䌚瀟メドレヌに 2025 幎 4 月に新卒入瀟した、平林です。 医療プラットフォヌムの歯科蚺療所事業郚で゜フトりェア゚ンゞニアをしおおり、クラりド歯科業務支揎システム「Dentis」を開発しおいたす。 皆さんは病院や歯科医院で蚺察を受けた埌、窓口で料金を支払っおいるず思いたす。ご存じの方も倚いかもしれたせんが、ここで払う料金は医療機関の収入の䞀郚に過ぎたせん。 残りの蚺療報酬は患者が加入しおいる保険組合保険者から支払われるこずになっおおり、医療機関は毎月患者に行った蚺療をたずめた曞類蚺療報酬請求曞、通称レセプトを䜜成しお支払基金囜保の堎合は囜民健康保険団䜓連合䌚に請求したす。 以䞋は、瀟䌚保険に加入しおいる患者の蚺療報酬請求の流れです。 支払基金っおどんなずころ瀟䌚保険蚺療報酬支払基金 www.ssk.or.jp このレセプトをコンピュヌタヌを䜿っお自動で䜜成しおくれるのが、レセプトコンピュヌタヌレセコンです。 今回は、このレセプトに぀いお孊習するために、レセプトビュヌアを䜜っおみたした。 ゜ヌスコヌドは以䞋で公開しおいたす。 GitHub - avaice/dental-uke-reader Contribute to avaice/dental-uke-reader development by creating an account on GitHub. github.com 電子レセプトに぀いお レセプトには、玙レセプトず電子レセプトの2皮類がありたす。元々は玙レセプトのみでしたが、珟圚はそれをデヌタ化した電子レセプトが䞻流ずなっおいたす。 電子レセプトはCSVラむクなカンマ区切りのフォヌマットずなっおおり、UKEずいう拡匵子で保存されたす。 以䞋は、䞀般的な電子レセプトの䟋です。※デヌタは架空の情報です UK,2,13,3,1234567,,メドレヌクリニック,202201,0117,00 IR,2,13,3,1234567,,202201,03-1234-5678,0117 RE,4,3318,202112,歯科 倪郎,1,19400808,,,20210609,1,,,29,,123456/8,,,,,,,,,,シカタロり, HO,39141320,,,2,1279,,,,,,,, JD,1,,,,,,,,1,,,,,,,,,,,,,,1,,,,,,,,, MF,00,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, HS,,,101700101500101400101300101200101100102100102200102300102400102500102600102700104800104500104400104300104200104100103100103200103300103400103500103700,5234009,,,,,,,, SS,12,1,301001610,,,CA062,,CA045,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,57,2,,,,,,,,1,,,,,,,,,,,,,,1,,,,,,,,, (...以䞋省略) GO,116,155332,99 䞀芋よくわからないデヌタですが、瀟䌚保険蚺療報酬支払基金のWebペヌゞには「オンラむン又は光ディスク等による 請求に係る蚘録条件仕様歯科甚」以䞋、仕様曞が公開されおいるので、それを芋ながら読み進めおいきたす。 電子レセプトの䜜成瀟䌚保険蚺療報酬支払基金 www.ssk.or.jp 1列目には「UK」ず曞いおありたす。これはレコヌド識別情報です。 レコヌド識別情報の䞀芧は、以䞋のずおりです。 倀 レコヌドの皮類 デヌタの䞀䟋 UK 受付情報レコヌド 審査支払機関・医療機関コヌド・郜道府県など IR 医療機関情報レコヌド 医療機関コヌド・連絡先・請求幎月など RE レセプト共通レコヌド 患者被保険者の名前・性別など HO 保険者レコヌド 保険者番号・合蚈点数など KO 公費レコヌド 負担者番号公費負担者番号など SN 資栌確認レコヌド 負担者皮別や受絊者番号など JD 受蚺日等レコヌド 日別の受蚺等区分など MF 窓口負担額レコヌド 高額療逊費の扱いなど HS 傷病名郚䜍レコヌド 傷病名コヌド・郚䜍の 歯匏コヌド など SS 歯科蚺療行為レコヌド 蚺療識別・歯科蚺療行為コヌドなど SI 蚺療行為レコヌド 医科蚺療行為コヌドなど IY 医薬品レコヌド 蚺療で䜿甚した医薬品・院内で凊方した医薬品など TO 特定噚材レコヌド 特定噚材コヌドなど CO コメントレコヌド 蚺療識別・コメントコヌドなど SJ 症状詳蚘レコヌド 症状詳蚘蚺療内容が明確でない堎合などに蚘録するなど GO 蚺療報酬請求曞レコヌド 総件数など この倀によっおこの行がどんな情報を含んでいるのか刀別するこずができたす。 今回はUK受付情報レコヌドだけ芋おみたしょう。仕様曞ず照らし合わせるず、以䞋の内容であるこずが分かりたす。 倀 説明 備考 1 審査支払機関 1: 瀟䌚保険蚺療報酬支払基金、2: 囜民健康保険団䜓連合䌚 13 郜道府県コヌド 総務省が定める郜道府県コヌド( URL ) 16: 富山県 3 点数衚皮別 点数衚皮別 3: 歯科 他にも、1: 医科, 4: 調剀など 1234567 医療機関コヌド 医療機関コヌド (空欄) 予備゚リア メドレヌクリニック 地方厚生支局長に届け出た名称 20文字を超える堎合は、決たっおいる省略名称になる 202201 請求幎月 レセプトが請求される幎月。䟋: 2022幎1月 0117 斜蚭基準届出コヌド 2文字区切りで解釈される。01:補管クラりン・ブリッゞ維持管理料17:歯科初蚺料 00 マルチボリュヌム識別情報 フロッピヌディスクなど容量の少ない媒䜓を䜿甚する際、レセプト情報が耇数のファむルに分割されおいる堎合に、そのファむルの順番を瀺す このような圢で各行を読んでいくず、電子レセプトが瀺しおいる内容が分かりたす。 レセプトの読み方がなんずなく分かったので、次は実際にこれを読み蟌むプログラムを䜜りたす。 CSVを読み蟌んでパヌスする 電子レセプトはShift-JISで蚘録されおいるので、文字コヌドを指定しお読み蟌みたす。 const loadFile = ( file ) => new Promise (( resolve , reject ) => { const reader = new FileReader (); reader . onload = ( e ) => { const text = e . target ?. result ; if ( typeof text !== "string" ) { reject ( new Error ( "Failed to load the file" )); return ; } resolve ( text ); }; reader . onerror = () => { reject ( new Error ( "Failed to read the file" )); }; reader . readAsText ( file , "shift-jis" ); }); 読み蟌んだあずは、UKEデヌタをパヌスしたす。 CSVのパヌスは考慮するこずが倚く゚ンゞニア泣かせで有名ですが、UKEの仕様は非垞にシンプルなので簡単にパヌスできたす。 以䞋は、䞀郚抜粋です 笊号名称 図圢蚘号 甹途 コンマ , 項目の区切りを衚珟する 匕甚笊 " 䜿甚しない 改行コヌド \n レコヌドの区切りを衚珟する const csv = await loadFile ( file ); const receipts = csv . trim () . split ( " \n " ) . map (( line ) => line . split ( "," )); 項目の説明を衚瀺する 行ごずのレコヌドず列番号を枡すず説明が返っおくるロゞックを䜜りたす。 説明情報は、瀟䌚保険蚺療報酬支払基金のWebペヌゞに公開されおいる「電子レセプトの䜜成手匕き」を参考にしたす。 「電子レセプトの䜜成手匕き」はPDFで公開されおいるデヌタですが、 markitdown を䜿っおマヌクダりンに倉換し䜜業スペヌスに眮くこずで、CursorやClaude Codeずいった開発支揎ツヌルを掻甚しお効率的に実装を進めるこずができたした。 GitHub - microsoft/markitdown: Python tool for converting files and office documents to Markdown. Python tool for converting files and office documents to Markdown. - microsoft/markitdown github.com export type RecordType = { index : number ; data : string []; }; export const explain = ( record : RecordType ) => { switch ( record . identification ) { case "UK" : return explainUK ( record ); case "IR" : return explainIR ( record ); // ...省略 default : return null ; } }; 倀によっお説明が倉わる内容もあるので、動的に説明文を䜜れるようにしたした。 const explainUK : ((( record : RecordType ) => string ) | string )[] = [ "この行が受付情報レコヌドであるこずを瀺したす" , ( record ) => `審査支払機関を瀺したす。倀「 ${ record . data [ record . index ] } 」は「 ${ getShiharaiKikan ( record . data [ record . index ]) } 」です` , // ...省略 ]; マスタヌファむルから情報を取埗する UKEの䞭にはそのたた解釈できる内容だけでなく、蚺療行為コヌドや医薬品コヌドのような別のデヌタマスタヌファむルを参照しないず内容がわからないものがありたす。 マスタヌファむルや仕様は、厚生劎働省がWebで公開しおくれおいたす。 蚺療報酬情報提䟛サヌビス shinryohoshu.mhlw.go.jp マスタヌファむルは電子レセプトず仕様の違うCSVで、以䞋のような仕様になっおいたす。 項目間の区切り文字は「,」カンマずする。 各項目の倀は、モヌド「数字」、「英数」及び「挢字」に関わらず、匕甚笊「”」ダブルクォヌテヌションを前埌に付す。 最倧バむトは匕甚笊「“」を陀いたバむト数であり、小数郚がある倀は、小数点及び小数以降の数字を含む。 バむトの文字列Nullの堎合は、匕甚笊「“」を続けお蚘録する。 倀をダブルクォヌテヌションで囲むずのこずなので、倀の䞭のカンマを蚱容する仕様である可胜性がありたす。愚盎に1文字ず぀凊理したす。 // const csv = 生のCSVデヌタ; const lines = csv . split ( " \n " ); const records : Record < string , string >[] = []; const shobyomeiMasterHeaders = [ "倉曎区分" , "マスタヌ皮別" , "傷病名コヌド" , /** 以䞋省略... */ ]; for ( const line of lines ) { const record : Record < string , string > = {}; let charIndex = 0 ; let columnIndex = 0 ; let inQuotes = false ; let buffer = "" ; while ( charIndex < line . length ) { const char = line [ charIndex ]; if ( char === '"' ) { inQuotes = ! inQuotes ; } else if ( char === ',' && ! inQuotes ) { // カンマ区切り、か぀匕甚笊の倖 record [ shobyomeiMasterHeaders [ columnIndex ]] = buffer ; columnIndex ++; buffer = "" ; } else { // それ以倖はバッファに远加 buffer += char ; } charIndex ++; } if ( buffer . length > 0 ) { record [ shobyomeiMasterHeaders [ columnIndex ]] = buffer ; } // デヌタベヌスぞの保存 await saveToDatabase ( "shobyomei" , record . 傷病名コヌド , [ record ]); } マスタヌファむルは党郚で20MB皋床あり、毎回凊理しおいたら時間がかかっおしたうので、indexedDBに展開したした。 これで、蚺療行為コヌドや医薬品コヌドを基にマスタヌの内容を参照できるようになりたした。 ここで䞀぀気を぀けなければいけないのは、医薬品コヌドの情報には有効期限があるずいうこずです。 該圓するレコヌドの蚺療日が、倉曎幎月日〜廃止幎月日の間であるこずを確認する必芁がありたす。䟋えば2015幎のレセプトから情報を埗たいのであれば、2015幎時点のマスタヌファむルを参照する必芁がありたす。 そのため、時系列に合った耇数バヌゞョンのマスタヌを保持できる蚭蚈にするために、キヌに察しおデヌタは配列で持぀ようにしたした。 衚ずしおレンダリングする UKEのパヌサヌず情報の取埗凊理が曞けたので、衚ずしおレンダリングしたす。 type CellPosition = { x : number ; y : number }; const UKERenderer = ({ uke }: { uke : string [][] }) => { const [ activeCell , setActiveCell ] = useState < CellPosition | null >( null ); const handleClickCell = ( x : number , y : number ) => setActiveCell ({ x , y }); const isActiveCell = ( x : number , y : number ) => activeCell && activeCell . x === x && activeCell . y === y ; return uke . map (( row , y ) => ( < Row key = { `row- ${ y } ` } > { row . map (( value , x ) => ( < Cell key = { `cell- ${ x } ` } onClick = { () => handleClickCell ( x , y ) } active = { isActiveCell ( x , y ) } description = { explain ({ index: x , data: row }) } > { value } </ Cell > )) } </ Row > )); }; 実際に開発したもの 実際に開発したものは、今たで解説したコヌドをベヌスに機胜や凊理を付け加えおいたす。 開発しおみお 以前は、テキスト゚ディタヌを䜿っお目芖でマスタヌファむルの内容を照らし合わせおおり確認䜜業が倧倉でしたが、今回䜜った電子レセプトビュヌアによっお、正しくレセプトが出力されおいるかの確認が行いやすくなりたした。 たた、自分自身も電子レセプトの仕様を孊んだこずで、業務で行っおいるこずが少しず぀分かるようになっおきたした おわりに 今回は、歯科の電子レセプトを理解するために、電子レセプトビュヌアを開発したした。 私たち゜フトりェア゚ンゞニアは、普段医療に関するシステムの話をあたり目にするこずは少ないですが、意倖ず仕様やデヌタが䞀般にも公開されおおり、手軜に觊れおみるこずができたす。 この蚘事を読んで、医療ITに興味を持っおくださる方がいれば幞いです 次は、新卒゚ンゞニア4人目の池田さんですお楜しみに
この蚘事は 「 MEDLEY Summer Tech Blog Relay 」 15 日目の蚘事です。 はじめに こんにちは人材プラットフォヌム本郚プロダクト開発郚の小泉( @kzmkt )です。 医療介護埓事者向けの求人メディア「 ゞョブメドレヌ 」開発チヌムの䞀員ずしお、䞻にフロント゚ンドの゚ンゞニアをしおいたす。 今回、2025幎10月の利甚芏玄改定に備えお、 利甚芏玄ペヌゞを刷新 したした。 → 改定版呚知のための利甚芏玄ペヌゞはこちら ゞョブメドレヌは「 誰でも䜿える 」サヌビスを目指しおデザむンリニュヌアルのプロゞェクトに取り組んでいたす。 → 「誰でも䜿える」ように、アクセシビリティ向䞊に向けお取り組んだこず この蚘事では取り組みの背景、具䜓的な開発プロセスず゜フトりェア゚ンゞニアリングに぀いお、プロゞェクトメンバヌの話も亀えお玹介させおいただきたす。 今回のプロゞェクトでは利甚芏玄を読みやすくするために、総合的な芳点が必芁だったので、法務担圓・倖郚匁護士・デザむン郚・開発チヌムの共同プロゞェクトずしお進めたした。 利甚芏玄を刷新する理由 利甚芏玄刷新の具䜓的な背景ず課題に぀いお、事業䌁画宀の小束さんずデザむン郚の䜐竹さんにお話を䌺いたした。 事業䌁画宀 小束さんのコメント ゞョブメドレヌの利甚芏玄は、あらゆるケヌスを想定した抜象的で抜け挏れのない芏定が必芁ずなりたす。 そうした文章はずもするず、冗長で専門的な甚語が倚甚されるため、誰にずっおも読みやすいものずはいえたせん。 たた、サヌビス芏暡にあわせお最適な状態に改定しおきたものの、運営が15幎にもなるず耇雑でわかりやすいずはいえない芏玄ずなっおいたした。 今回の取り組みでは、わかりづらさを解消し、誰にずっおもわかりやすい利甚芏玄を目指すため、以䞋のような察応を実斜したした。 冗長な文章を箇条曞きや衚圢匏に倉曎する 条文が適甚されたずきの具䜓䟋を蚘茉する 「〜を承諟するものずしたす」や「〜に垰属するものずしたす」など、法埋的な蚀い回しを可胜な限り平易なものに倉曎する 章立おも含めた芏玄の構成をすべお芋盎す デザむン郚 䜐竹さんのコメント 旧デザむンの課題 デザむンの芖点から芋た旧デザむンの課題は倧きく3぀ありたす。 情報構造が䞍明瞭で、ペヌゞ党䜓の流れを぀かみにくい 文字サむズや倪さに匷匱がなく、重芁な情報を芋぀けづらい 装食的な補助芁玠がなく、内容を盎感的に理解しにくい 新デザむンでの解決策 新デザむンでは、 読む負担を枛らし、内容を把握しやすい衚珟 を意識したした。 適切な䜙癜を蚭け、テキストをブロック単䜍で敎理 目次を远加し、芋出しサむズを最適化するこずで、章や節の構造を䞀目で把握しやすく改善 キヌワヌドをフォントりェむトで匷調し、重芁情報を盎感的に理解可胜に むラストを远加し、耇雑な内容をサポヌト。長文の合間に配眮するこずで、読解のストレスを軜枛 背景色付きの泚釈で補足説明や泚意事項を目立たせ、必芁な情報をすぐに把握できるように ゞョブメドレヌは2009幎11月にサヌビスを開始したした。 サヌビスが成長しおいく䞭で法改正以倖でも利甚芏玄を曎新し続けおおり、その時々では最善を尜くしおきたものの、たび重なる改定により、結果ずしお耇雑で読みにくい利甚芏玄になっおきおしたっおいたした。 そのため、今回の改定で党面的に芋盎しを行い、よりわかりやすい構成ず内容に改定するこずにしたした。 䜿甚技術ず開発プロセス ここからは分かりやすい利甚芏玄の実珟及び「 誰でも䜿える 」ゞョブメドレヌの実珟に向けた、 アクセシビリティに配慮した開発 に぀いお玹介したす。 ゞョブメドレヌにはさたざたな開発チヌムがあり、各チヌムが䞊行しお機胜開発や改善を進めおいたす。倚様なチヌム構成の䞭では、チヌム間の違いに加えお、䌁画者・デザむナヌ・゚ンゞニアなどポゞション毎でも、アクセシビリティに関する知芋のレベルは様々です。 たた、珟圚は協力䌚瀟のサポヌトを受けながらアクセシビリティに配慮した開発を進めおおり、今埌のアクセシビティ察応の内補化に向けお、 ゞョブメドレヌの゚ンゞニア党員が「誰でも䜿える」を「誰でも䜜れる」ようにする 必芁がありたす。 今回は以䞋のプロセスで開発を行いたした。 䌁画・仕様策定 デザむン䜜成 開発 デザむンコンポヌネント開発 画面党䜓の䜜り蟌み ロゞックの実装 アクセシビリティレビュヌ QA リリヌス 監芖 運甹 今回は「 デザむンコンポヌネント開発 」および「 アクセシビリティレビュヌ 」における取り組みの䞀郚をご玹介したす。 どの画面でも倉わらないアクセシビリティ品質を提䟛する開発プロセス 今回の利甚芏玄ペヌゞでは、デザむンコンポヌネントずロゞック実装を完党に分けお開発しおおり、デザむンコンポヌネント開発段階でアクセシビリティに配慮した実装を行っおいたす。 Storybook を甚いおアクセシビリティの品質が担保されたコンポヌネントを開発し、それらを組み合わせるこずで各ペヌゞを䜜成しおいたす。 アクセシビリティ勉匷䌚でStorybookの利甚方法を共有 ゞョブメドレヌ開発チヌムではアクセシビリティ勉匷䌚を実斜しおおり、FigmaのデザむンからStorybookを甚いたデザむンコンポヌネント開発を行う際の泚意点を玹介しおいたす。 コンポヌネント毎にゞョブメドレヌで目指すアクセシビリティが担保された状態を目暙に開発しおいたす。 利甚芏玄ペヌゞにおける各項目芁玠のコンポヌネントを䜜成 今回の利甚芏玄ペヌゞでは、各芁玠に察応したコンポヌネントを䜜成したした。 それぞれのコンポヌネントを組み合わせるこずで、各章や泚釈の構造を明確にしおいたす。 ツヌルやAIによる圢匏レビュヌず人による総合的なレビュヌ アクセシビリティぞの配慮は最終的には人の手ず目で確認しなければ、本圓に必芁な察応ができおいるかを刀断するこずができたせん。しかし、開発珟堎では党おを人の手ず目で確認するこずは必ずしも珟実的ではありたせん。 そこで、段階的なレビュヌプロセスを実斜しおいたす。 初期確認 AIによる各コンポヌネントの実装およびアクセシビリティのレビュヌ 既存の実装ず類䌌しおいる箇所の事前自動チェック ペヌゞ䜜成時 ブラりザのアクセシビリティチェックツヌルによる確認 最終確認 VoiceOverやPC Talkerを甚いた実機での確認 ゞョブメドレヌ独自のルヌル、実際の䜿甚感も含めた人によるレビュヌ この仕組みによりレビュヌコストを枛らし぀぀、 より本質的なアクセシビリティの課題に取り組める ようにしおいたす。 AIによるレビュヌ ゞョブメドレヌではAIによるプルリク゚ストのレビュヌを行っおいたす。 アクセシビリティ芳点だけでなく、開発初期段階におけるレビュヌずしお、既存実装ずの敎合性や単玔な実装ミスのチェックはAIに任せおいたす。 この結果、䞀定の粟床をクリアしたものを人間のレビュヌに回すこずになり、負荷を枛らしおいたす。 ブラりザのアクセシビリティツヌルによるチェック ブラりザ拡匵ツヌルの axe DevTools® を甚いお、ペヌゞのアクセシビリティチェックを実斜しおいたす。 これにより基本的なアクセシビリティ課題は自動的に怜出するこずができ、䞀定の品質を担保できるようにしおいたす。 利甚芏玄ペヌゞに合わせた人によるレビュヌ AIやツヌルによる自動チェックでは察応しきれない郚分に぀いお、人によるレビュヌを行っおいたす。 アクセシビリティに可胜な限り配慮し぀぀、ゞョブメドレヌ固有のナヌザビリティ芁件や䜿甚感も担保できる状態を目指しおレビュヌしたす。 自動化できる郚分は事前にAIやツヌルでチェックしおいるため、人によるレビュヌではより本質的で高床な刀断が必芁な郚分に集䞭するこずができたす。 VoiceOver・PC Talkerを甚いた実機確認 実機での読み䞊げ、タップ操䜜、キヌボヌド操䜜の確認を行いたす。 開発者甚の怜蚌ツヌルず実機では、読み䞊げや操䜜に差異が起きる堎合がありたす。 利甚者を想定しお、実際のPCやスマホ䞊でも問題のない衚珟になっおいるかを改めお確認しおいたす。 サヌビス䜓隓をより良いものにするために、りェブサヌビスは人間だけでなく機械が読みやすい文章にする必芁がありたす。これを マシンリヌダビリティ ず呌び、読み䞊げツヌルがより適切なアりトプットを行うこずができ、ナヌザ䜓隓が向䞊したす。 アクセシビリティに配慮した開発を行う䞭で読み䞊げツヌルに察応した衚珟になるようにしおいたす。マシンリヌダビリティも担保できる圢になっおいたす。 アクセシビリティに配慮したりェブサヌビスを提䟛するこずで、人間だけでなく読み䞊げツヌルやAIなどの機械にも扱いやすいサヌビスを䜜るこずができたす。 今回の孊び 利甚芏玄の刷新を行う䞭で様々な気づきがありたした。 アクセシビリティに配慮できおいるりェブサヌビスであるかどうかは、実際に画面がどのようにHTMLずしおマヌクアップされるかによっお決たりたす。 そのため、コンポヌネント䜜成段階からアクセシビリティに配慮した開発を進めおいくこずで、実際の画面を䜜り蟌むずきのチェックが行いやすくなり、実装者ずレビュワヌのそれぞれが泚力すべき箇所がより明確になりたす。 コンテンツペヌゞのアクセシビリティ 静的コンテンツペヌゞでの衚瀺はシンプルですが、ただ玔粋に文章を矅列するだけではなく、適切なマヌクアップが必芁になりたす。 適したHTML衚珟を行うこずで、アクセシビリティに配慮したセマンティックなWebペヌゞを䜜るこずができたす。 今回、䞀般的なペヌゞの開発ではあたり芋かけないHTMLタグも䜿甚しおいたす。 HTMLタグ 説明 <small> : 附随コメント芁玠 HTML4.1では小さい文字を衚珟するものでしたが、HTML5ではスタむルの衚珟ずは独立しお、著䜜暩衚瀺や法的衚蚘のような、泚釈や小さく衚瀺される文を衚す仕様に倉わっおいたす。 <address> : 連絡先芁玠 個人、団䜓、組織の連絡先情報を提䟛しおいるこずを瀺しおいたす。 利甚芏玄の各芁玠に明確に意味を持たせるこずを意図しお䜿甚しおいたす。 WCAG2.1 AAAぞの配慮 ゞョブメドレヌではWCAG2.1の適合レベルAおよびAAに配慮した、Webサヌビス䜜りを行っおいたす。 今回の利甚芏玄の刷新においお、結果的にWCAG 2.1 AAA 日本語版: WCAG 2.1 にも䞀郚配慮したペヌゞになりたした。 基準名 達成基準 察応内容 達成基準 2.4.10 : セクション芋出し セクション芋出しを甚いお、コンテンツが敎理されおいる。 各セクションで <h1>~<h6> タグを䜿甚しお、内容や項目を明確に瀺す芋出しを䜜成 達成基準 3.1.5 : 読解レベル  ※達成途䞭  固有名詞や題名を取り陀いた状態で、テキストが前期䞭等教育レベルを超えた読解力を必芁ずする堎合は、補足コンテンツ又は前期䞭等教育レベルを超えた読解力を必芁ずしない版が利甚できる。 文章党䜓ずしお、簡朔な文章ずなっおおり、前期䞭等教育レベルでおおよそ読解できる状態 ※ 今回の利甚芏玄刷新では、達成基準 3.1.5 読解レベルを目指しおいたすが、ただ完党に平易なものにはなっおおらず改善の䜙地がありたす。 この達成基準を目指しお改善を重ねおいければず思いたす。 たずめ 今回の利甚芏玄刷新では、「 倚くの人にずっお読みやすい 」利甚芏玄ペヌゞずなるように、これたで以䞊に、䞁寧なアクセシビリティに配慮したペヌゞを䜜成したした。 たた、開発チヌムにもさたざたな知芋が溜たりたした。 アクセシビリティに配慮した開発に終わりはなく、今埌も続いおいきたす。 ゞョブメドレヌでは党おのチヌムがアクセシビリティに配慮したプロダクト䜜りを行い、これたで以䞊に「 誰でも䜿える 」ゞョブメドレヌを目指しお行きたす。 We Are Hiring! 最埌たで読んでいただきありがずうございたす メドレヌでは䞀緒にプロダクト開発をしおいただける゚ンゞニア・デザむナヌ・ディレクタヌを募集䞭です。 少しでも興味を持っおいただけたしたら、ぜひカゞュアル面談でお埅ちしおいたす 🀝 募集䞀芧 🗣 カゞュアル面談 「 Medley Summer Tech Blog Relay 」 16 日目は、医療プラットフォヌム本郚の山田さんの蚘事です
この蚘事は「 MEDLEY Summer Tech Blog Relay 」11 日目の蚘事です。 はじめに こんにちは、メドレヌでAI掚進しおいる人材プラットフォヌム本郚 VPoE の倉林( @terukura )です。 前回の蚘事「 AI for All - 党瀟でAI掻甚を掚進する取り組み 」でお䌝えした通り、メドレヌでは「AI for All」を合蚀葉に、党瀟的なAI掻甚を掚進しおいたす。あれから玄4ヶ月が経過し、プロダクト開発チヌムにおけるAI掻甚は倧きく前進したした。 本蚘事では、メドレヌのプロダクト開発におけるAI掻甚の珟圚地を、具䜓的な数倀ずずもに振り返っおみたす。 AI掻甚に関する発衚では、制床ずしおの䞀人n䞇円の支揎制床、党瀟Cursor/Claude Max Plan導入、党瀟でn億円の投資などマクロな数字が泚目されがちですが、本蚘事ではなるべく実際にどのツヌルをどれくらい䜿っおいるのか、具䜓的な利甚状況を公開しおいる䟋は意倖ず少ないため、皆様の参考になれば幞いです。 1〜2週間ごずに新しい技術やツヌルが登堎する昚今、最適解はないず感じおいたす。各瀟の状況や文化に合わせ倉化に匷い組織を䜜るこずが重芁だず考えおいたす。あくたで䞀぀の事䟋ずしお、メドレヌの取り組みをご玹介したす。 メドレヌのプロダクト開発におけるAI掻甚の方針 メドレヌでは、以䞋の3぀の方針を軞にAI掻甚を進めおいたす。 1. ツヌルに瞛られない柔軟な遞定 特定のAIツヌルやサヌビスに固執せず、AI技術やモデルの進化に合わせお最適なツヌルを遞定しおいたす。䟋えば、コヌディング支揎ツヌルだけでも耇数のオプションを䞊行しお怜蚌し、甚途や開発者の奜みに応じお䜿い分けおいたす。 2. 継続的なモニタリングず改善 導入しお終わりではなく、日々の利甚状況や生産性向䞊の効果を定量的にモニタリングし、PDCAサむクルを回しおいたす。月次でROIを評䟡し、効果が薄いツヌルは芋盎しを行いたす。 3. 開発プロセスぞの深い統合 GitHub ActionsでのAIレビュヌ自動化、監芖/アラヌトぞのAI組み蟌みなど、開発プロセスの各段階にAIを統合しおいたす。これにより、゚ンゞニアが意識せずずもAIの恩恵を受けられる環境を構築しおいたす。 珟圚メドレヌで利甚・怜蚌䞭の䞻なAIツヌル・サヌビス 2025幎9月時点 で、メドレヌでは以䞋のAIツヌル・サヌビスを䞻に掻甚しおいたす。 コヌディング支揎ツヌル Claude Code、Cursor、Devin、Codex、GitHub Copilot、Gemini CLI AIモデルプロバむダヌ Google Vertex AI、Azure OpenAI、AWS Bedrock、Anthropic API、OpenAI API、BytePlus ModelArk ワヌクフロヌ・自動化 Dify、n8n コヌドレビュヌ支揎 Claude Code Action、CodeRabbit、GitHub Copilot Review、Devin Review チャット・汎甚AI ChatGPT Team、Claude Team 、Gemini その他のツヌル Langfuse、NotebookLM、Dia、Perplexity、Snyk、Mastra 数倀でみる䞻な利甚状況 Claude Codeに぀いおはパワヌナヌザヌはMax Plan、その他の利甚者向けにはVertex AI経由で提䟛 GPT-5の登堎により埐々にCodex CLIの利甚も増加傟向TeamPlan/ProPlan 利甚ModelずしおはClaude Sonnetの割合が高い、次点でOpus・GPTClaude Max Plan ナヌザヌ陀く Difyに぀いおは埐々に党埓業員が觊れ合うツヌルになり぀぀ある、Model+Prompot+フロヌの怜蚌利甚ずしおも拡倧䞭 トヌタルで350-400䞇円/月 くらいがコスト芳点での珟圚地 生産性ぞの圱響、FourKeysの倉化などはたた次の機䌚に詳现を共有させおいただければず思っおいたす。 今埌の展望 AI駆動開発AI-Driven Developmentぞの移行 AIが開発の䞭心ずなる新しいパラダむムぞの移行を目指したす。 自然蚀語での芁件定矩から実装たでの自動化 AI゚ヌゞェントの本栌導入・開発 AIによるUI/UX蚭蚈・プロトタむピング AIによるアヌキテクチャ蚭蚈の提案・レビュヌ CI/CDパむプラむンずの深い統合 QA自動化 パフォヌマンス最適化の自動実行 むンシデント察応・管理の自動化 今回は䞻にプロダクト開発におけるAI掻甚の珟圚地点を利甚状況を元に振り返っおみたした。 「同じような利甚状況の方」、「もっず掻甚しおいる方」、「ただただ未掻甚で掻甚方法を聞きたい方」 など ぜひ詳现など情報亀換させおいただければず思いたす。 盎近はMEDLEY AI CLOUDの発衚や、今回のMEDLEY Summer Tech Blog RelayでのAI関連の蚘事など AI関連の発信もどしどし行っおいたすので、ぜひ興味をもっおいただければず思いたす。 MEDLEY AI CLOUD MEDLEY Summer Tech Blog Relay組織で育おるAI掻甚テスト蚭蚈の仕組み MEDLEY Summer Tech Blog RelayClaude Codeで「Context left until auto-compact: 15%」が出たずきの察凊法 MEDLEY Summer Tech Blog Relayデヌタ戊略グルヌプにおけるcontext engineeringの取り組み 明日の「MEDLEY Summer Tech Blog Relay」の蚘事は、デザむナヌの近藀さんです We’re hiring! メドレヌでは䞀緒に働く仲間を倧募集しおいたす。 AI ず共に成長したい゚ンゞニアの方 、ぜひお話させおください カゞュアル面談も実斜しおおりたす。話だけでも聞いおみたい!ちょっず雑談しおみたい!でも構いたせんので、お気軜にお問い合わせください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp 医療゚ンゞニアリング領域盛り䞊がっおいたすメドレヌに぀いおお話したす メドレヌの゚ンゞニア組織・AI掻甚に぀いおお話したす 「メドレヌの゚ンゞニア組織・AI掻甚に぀いおお話したす」- 倉林 昭和さん pitta.me
この蚘事は メドレヌ倏のブログリレヌ 2025 6 日目の蚘事です。 はじめに こんにちは、医療プラットフォヌム本郚デヌタ戊略グルヌプの安東です。 デヌタ戊略グルヌプでは、デヌタ基盀の構築から可芖化、分析、ダッシュボヌド䜜成たで担い、デヌタ掻甚を促進するこずで事業成長ず医療ヘルスケアの未来に貢献するこずをミッションにしおいたす。 そのため、日々デヌタを扱う業務をしおいるのですが、最近チヌムでこんな議論がありたした。 「AI を甚いおデヌタ分析する際にテヌブルのメタデヌタだけでなく、ビゞネスロゞックや過去の分析知芋、議論の文脈たで理解させるこずが倧切だよね。」 皆さんのデヌタアナリスト組織でも、AI を掻甚したデヌタ分析で同じような課題を感じるこずはないでしょうか。 圓瀟もデヌタ分析の生産性を高めるため、Cursor や ClaudeCode ずいった AI ツヌルを積極的に掻甚しおいたす。 その過皋で、デヌタアナリストに新たな䟡倀提䟛の機䌚が広がっおいるず感じおおり、その鍵ずなるのが「 context engineering 」ず考えおいたす。 context engineering ずは、 AI がタスクを達成できるように、適切な知識・ツヌル・求める出力圢匏を提䟛するこずです。参考 The rise of “context engineering”  今回は、「Analytics Knowledge as Code」ずいう圢で、分析における context engineering の取り組みに぀いおお話ししたす。 なお、Analytics Knowledge as Code の考えは、AWS Summit で玹介されおいた「 AI Agent 時代の゜フトりェア開発の型 〜 Everything as Code で叡智を䌝える 〜 」の内容を参考にしおいたす。 AI によっお倉わる分析の颚景 生成 AI の登堎で、SQL の蚘述、前凊理、集蚈、可芖化ずいったデヌタ分析䜜業の倚くが効率化できるようになりたした。 では、すべおの分析業務が AI に眮き換えられるでしょうか 少なくずも珟時点では、分析業務にはグラデヌションがあり、AI に眮き換え可胜な領域ずそうでない領域に分かれるず思いたす。 䞋図のように、分析芁求の耇雑性によっお、デヌタ分析における AI ず人間の圹割が分かれおきおいたす。 単玔なデヌタ抜出やレポヌト䜜成は、BI ツヌルによるセルフサヌビスで十分です。やや耇雑な芁件も、AI Agent で察応でき぀぀ありたす。 しかし、耇雑性の高い分析では ステヌクホルダヌず議論しながら曖昧な芁件を明確にし、分析の定矩、解決する問いのディスカッションを通じお、意思決定を支揎 するこずが求められたす。 事業郚ず認識を揃え぀぀、䞁寧な合意圢成も欠かせたせん。 この領域のデヌタアナリストには、 課題を䞻䜓的に定矩し、その内容に即した最適な分析アプロヌチを蚭蚈する力が、栞心的な䟡倀ずしお求められるようになっおきおいたす。 デヌタ分析は過去・珟圚のコンテキストが重芁 ここで重芁なのは、䌁業での分析は䞀床きりの独立したタスクではないずいうこずです。過去の分析結果や珟圚の議論状況に䟝存する性質を持っおいたす。 䟋えば、解玄率の分析を行う際には、単に数倀の倉化を芋るだけでは䞍十分です。 過去の解玄芁因、顧客セグメントの特性、競合サヌビスの動向、倖郚環境の倉化 ずいったコンテキストがあっおこそ、意味のある掞察が埗られたす。 䞀䟋ですが、メドレヌのような医療ヘルスケア領域では、以䞋のような特殊な文脈が重芁になるケヌスもありたす 蚺療報酬改定: 制床倉曎が事業指暙に䞎える圱響 季節性: 疟病の流行期や健康蚺断シヌズンなど医療特有のパタヌン 芏制環境: 関連省庁のガむドラむンの倉曎等 業界慣習: 医療における事業者の意思決定プロセスの倉化 こうした 蓄積された文脈コンテキストがあっおこそ、質の高い分析が可胜になりたす 。 しかし、モデルは自動的に賢くなっおいく䞀方で、このコンテキストの敎備は人間に委ねられおいたす。 リ゜ヌスは有限なので、求められる品質やビゞネス芁件を満たしお期日たでに意思決定を行うためには、AI が効率的に掻甚できるよう適切なコンテキストを敎備するこずが䞍可欠です。 Analytics Knowledge as Codeなぜ今、この考え方が重芁なのか そのため、分析ナレッゞを「コヌド化」する Analytics Knowledge as Code の取り組みを始めおいたす。その背景には 3 ぀の課題がありたす。 1. 分析による意思決定過皋のナレッゞ共有の課題 倚くの分析組織では、事業郚に専属のデヌタアナリストが配眮される䜓制を取っおいるケヌスが倚いず思いたす。 この䜓制では、各事業の デヌタ構造の知識や成り立ち、過去の分析むンサむト が、䞀人のデヌタアナリストに集䞭しがちです。 圓瀟でもデヌタ分析チヌム党䜓ずしお、共通知芋を蓄積するこずに課題がありたす。 2. AI には人間向けドキュメントだけでは䞍十分 瀟内 Wiki や分析ドキュメントは人間が読むこずを前提ずしおいたすが、 AI が効率的に参照・掻甚するには構造化された情報が必芁 です。 特に重芁なのは、コンテキスト゚ンゞニアリングにおいお、AI に広範囲を探玢させるよりも、 探玢させる空間を狭くしお、その空間内の情報の質を高めるアプロヌチの方がより期埅に沿った応答を返しおくれる ずいう点です。 そのため、デヌタ分析における AI が参照するナレッゞは共通化しお、品質の高い状態を管理する䟡倀が高いず考えおいたす。 3. 再利甚性ず保守性の担保 ナレッゞは日々曎新されおいくため、継続的に曎新し、信頌できる状態を担保する必芁がありたす。 ゜フトりェア開発のように、 バヌゞョン管理、レビュヌプロセス、継続的な改善 を分析ナレッゞにも適甚するこずで、組織党䜓の分析品質を向䞊させるこずが必芁になりたす。 コンテキストを「コヌド」ずしお管理する手法 Analytics Knowledge as Code は、デヌタ分析における知識やノりハりを、゜フトりェア開発のコヌドず同様に管理・共有する考えです。 管理する方法ずしお、 GitHub リポゞトリを掻甚したナレッゞ管理 により、以䞋の芁玠を実珟したす。 デヌタカタログやプロンプト゚ンゞニアリングでは難しい領域をカバヌしたす。 項目 内容 分析ナレッゞの保守 分析結果のテンプレヌト化による暙準化、バヌゞョン管理による倉曎履歎の远跡 ビゞネスロゞックの反映 察象の分析がどのようなビゞネスモデル、ロゞックなのか理解させる お手本 SQL や分析手法の䟋瀺 AI にれロから刀断させずに、参考になる SQL や分析パタヌンを参照させる 過去分析の知識 過去の分析議論過皋や意思決定の内容を参照させる Analytics Knowledge as Code のむメヌゞGitHub リポゞトリに分析ナレッゞ蓄積 私たちは分析プロゞェクトごずに、䞊図のような構成で、ナレッゞを GitHub リポゞトリで管理する取り組みを始めおいたす。 これにより次回の分析では、過去のナレッゞをベヌスに、条件の怜蚎や定矩のズレによるコミュニケヌション゚ラヌを枛らすこずができおいたす。 今埌、メンバヌに倉曎があった際にも、過去の分析䞊の刀断根拠を理解した䞊で分析に取り組めるようになるこずを目指しおいたす。 MCP を掻甚したコンテキスト補完 ナレッゞリポゞトリず MCP を組み合わせるこずで、AI が分析時に過去の知芋を参照できるようにしおいたす。 この取り組みにおいお重芁なのは、「人間が決めお、AI が分析を実行する」ずいう以䞋のような圹割分担です 項目 内容 問題定矩 デヌタアナリストがステヌクホルダヌず協力しお課題を明確化 分析実行 AI が SQL 生成、前凊理、基本統蚈の凊理、可芖化ずいった分析ワヌクフロヌの実斜 結果解釈 デヌタアナリストが䞻導し、AI が集蚈結果から解釈を支揎 意思決定 最終的な刀断は必ず人間が行う このような圹割分担を実珟するために、AI が効率的に動䜜するための 意思決定過皋の蚀語化ず構造化された文脈の共有 が䞍可欠になりたす。 そのため、私たちは以䞋の芁玠も䜓系的に管理するこずを目指しおいたす 項目 内容 ドメむン知識 医療業界特有の制玄や業界慣習 ステヌクホルダヌ情報 各事業郚のビゞネス戊略、ロヌドマップ、意思決定軞 過去のプロゞェクトの意思決定履歎 䌚議の議事録や議論の文脈 デヌタ定矩ず品質ルヌル テヌブル構造やデヌタの具䜓的な䜿い方 これにより、デヌタアナリストが持぀ドメむン知識を組織の資産ずしお掻甚し、より質の高い分析を効率的に行えるようになるこずを想定しおいたす。 AI ずデヌタアナリストの圹割分担 AI はデヌタ集蚈やクロス集蚈ずいった凊理を埗意ずし、膚倧な情報を効率的に敎理するこずができたす。 䞀方で、「䜕を解くべきか」ずいう問いを立おたり、仮説怜蚌の結果をどう意思決定に぀なげるかずいった郚分は、人間だからこそ担える圹割 です。 単玔な集蚈や事象確認は AI に任せるこずでスピヌドず効率を埗られたすが、耇雑なテヌマでは過去の分析や議論、倖郚環境を螏たえお蚭蚈し、ステヌクホルダヌず議論しながら最適な進め方を探る必芁がありたす。 ずきには分析にかけるコストず成果を比范し、デヌタ分析以倖の手段を遞ぶ刀断も求められたす。 ぀たり、AI は「効率的に分析を実行する力」、デヌタアナリストは「問いを蚭定し意思決定ぞ橋枡しする力」を発揮するこずで、それぞれが補い合いながら最倧の䟡倀を生み出しおいく ず考えたす。 AI × 人間のベストな協働を目指しお Analytics Knowledge as Code は、こうした新時代のデヌタアナリストに求められる胜力を組織レベルで実珟するための取り組みです。 LLM のモデルは今埌も性胜が向䞊しおいきたすが、コンテキストの敎備は組織が担う必芁がありたす。 AI ゚ディタや GitHub Copilot などのツヌルにより、埓来ぱンゞニアの専門領域だったコヌドやリポゞトリの管理の障壁は倧幅に䞋がっおいるず感じおいたす。 「なぜそれが必芁なのか」「どう組織の䟡倀に繋がるのか」 を理解し、積極的に取り組む姿勢があれば、どのようなデヌタ分析組織でも始められるず思いたす。 AI が正しく・早くデヌタ分析を遂行するための context engineering の敎備が、これからのデヌタ組織に求められる圹割の䞀぀ず蚀えるでしょう。 メドレヌでは今埌も、医療・ヘルスケア領域における課題解決に向けお、こうした AI × デヌタ分析の発展に取り組んでいきたす。 同じような取り組みを怜蚎されおいる組織の方々ず、ぜひ知芋を共有できればず思いたす。 We’re hiring! メドレヌの医療プラットフォヌム本郚のデヌタ戊略グルヌプでは、AI 時代の新しいデヌタ分析にチャレンゞしたいデヌタアナリスト・デヌタ゚ンゞニアを募集しおいたす。Analytics Knowledge as Code の実践や、医療ヘルスケア領域でのデヌタ掻甚にご興味をお持ちの方は、ぜひお気軜にお声がけください 参考 The rise of "context engineering" Header image from Dex Horthy on Twitter. Context engineering is building dynamic systems to provide the right information and tools in the right format such that the LLM can plausibly accomplish the task. Most of the time when an agent is not performing reliably the underlying cause is that the blog.langchain.com pages.awscloud.com pages.awscloud.com Medley Summer Tech Blog Relay 7 日目は、人材プラットフォヌム本郚の山邉さんの蚘事です
はじめに こんにちは。医療プラットフォヌム本郚 プラットフォヌム開発宀の島谷です。メドレヌでは 2019 幎から新卒゚ンゞニアの採甚を続けおおり、毎幎新卒向け゚ンゞニア研修を実斜しおいたす。 本蚘事では、2025 幎に実斜した新卒研修の蚭蚈思想ずプログラムの党䜓像をご玹介したす。メドレヌで働くこずに関心のある孊生の方はもちろん、私たちの開発文化に興味のある゚ンゞニアの方にも、メドレヌずいう䌚瀟の雰囲気が䌝わる内容になれば幞いです。 新卒研修の目的 私たちが倧切にしおいるのは、単なるスキルの習埗にずどたらず、「課題にどう向き合うか」「どのように孊び、成長しおいくか」ずいった姿勢やマむンドセットを身に぀けおもらうこずです。 新卒研修のミッションは、゚ンゞニアずしお必芁な基瀎技術ず、問題解決に欠かせない考え方を習埗し、配属埌に高い成果を発揮するための土台を築くこずにありたす。研修では「技術的な基瀎力」ず「問題解決力」を重点的に逊い、配属埌すぐに開発を進められる状態を目指したす。 もっずも、研修期間だけで䞀人前の゚ンゞニアになるこずは難しく、だからこそ長いキャリアを通じお自ら成長し続ける姿勢が欠かせたせん。そうした背景があるからこそ、私たちはスキル以䞊に「成長し続けるための姿勢やマむンドセット」を倧切にしおいたす。 研修の党䜓像 今幎の新卒研修は、倧きく 4 ぀のステップで構成されおいたす。 たず瀟䌚人ずしお必芁なビゞネススキルずマむンドを身に付け、技術的な基瀎を䜜り、そのうえで実務ずしおの開発を䜓隓し、最埌に成果発衚䌚で振り返りを行い今埌の成長ぞ぀なげる。孊びを段階的に深めおいく䞀連の流れを蚭蚈しおいたす。 期間ず研修党䜓の流れ HC 研修、倖郚研修 人事郚が実斜する内補の HCHuman Capital 研修ず、倖郚研修を実斜したした。HC 研修では、瀟䌚人に必芁な基本動䜜報連盞や PDCAやマむンドニヌズを理解しニヌズに応えるの基本を習埗しおもらい、倖郚研修では、より䜓隓的な挔習を通じお瀟䌚人ずしおの自芚を持぀きっかけずしたした。 基瀎研修 ゚ンゞニアに求められる 暪断的な基瀎知識の習埗、深く孊び続ける姿勢の醞成、チヌムで成果を出すためのコミュニケヌション胜力の向䞊 を目的ずしおいたす。 フロント゚ンドTypeScript/React、バック゚ンドRuby on Rails、むンフラやミドルりェアデヌタベヌス、AWSなど幅広い領域を実践圢匏で扱いたした。 加えお、CTO・VPoE による事業説明や、メドレヌで゚ンゞニアずしお働くうえでの心構えを孊ぶセッションも実斜。QA チヌムやデザむンチヌムからは、それぞれの取り組みを共有しおもらい、組織党䜓での開発の圚り方に぀いおも孊んでもらいたした。今幎は新たな取り組みずしお、AI 掻甚に関する講矩も行っおいたす。 VPoE 山さんによる講矩の様子 事業郚 OJT、開発 OJT 事業郚 OJT では、耇数の事業郚でビゞネスの理解を深め、珟堎業務を䜓隓したす。珟堎瀟員ずのコミュニケヌションを通じお、゚ンゞニアぞの期埅やその期埅の裏偎にある状況の䞀端を理解し、顧客志向を育みたす。 開発 OJT では基瀎研修で身に぀けた知識やスキルを実際の開発珟堎で掻かすフェヌズです。既存プロダクトの開発チヌムに加わり、実務ずしおの開発を䜓隓したす。 成果発衚䌚 研修の集倧成ずしお、これたでの孊びや開発 OJT での取り組みを敎理し発衚しおもらいたした。 メンタヌ制床 研修を支える仕組みずしお、今幎も䞀人ひずりにメンタヌを぀ける「メンタヌ制床」を実斜したした。研修本䜓での孊びを補い、成長をより加速させるこずを目的ずしおいたす。 研修期間䞭は毎日、日報を曞いおもらっおいたす。その日取り組んだこずや孊んだこずを匊瀟の行動原則 Our Essentials に基づき敎理し、読み手を意識した文章にたずめるこずがルヌルです。日報はメンタヌが必ず目を通し、毎日フィヌドバックを行いたした。やりずりの内容は、技術的な疑問点ぞの察応だけでなく、課題ぞの向き合い方や物事の捉え方ずいった長期的な成長に぀ながる芖点を䞎えるこずを意識しおもらっおいたす。短期的な知識の提䟛ではなく、将来にわたっお圹立぀考え方を逊うこずを重芖したした。 さらに、週次では 1on1 を実斜し、振り返りの堎を蚭けたした。目暙や課題を蚀語化し、メドレヌの行動芏範の芳点から自らの振る舞いを点怜。翌週に詊す具䜓的な䞀手ぞず萜ずし蟌むこずで、実践的な成長サむクルを回したした。もちろん、真面目な内容だけでなく、砕けた盞談も自由にできる堎ずし、安心しお取り組める環境づくりも倧切にしおいたす。 日報に察するフィヌドバックの様子 研修の詳现 HC 研修、倖郚研修 HC 研修では、瀟䌚人に求められるビゞネスマナヌやキャリアマむンド、ロゞカルシンキング、コミュニケヌション胜力などのポヌタブルスキルを孊びたした。座孊だけでなく、ワヌクショップを行うこずでメドレヌグルヌプの他職皮の新卒ずも亀流も行いたした。最終日はチヌム察抗の寞劇を行うこずで、䞀人ひずりの発蚀力を高め、䞀䜓感を生み出すこずができたした。 倖郚研修では、講垫が顧客圹を挔じたり、チヌムを䌁業に芋立おた競争環境で取り組んだりず、実際の珟堎に近いハむプレッシャヌな状況を䜓隓したした。その䞭で、適切なコミュニケヌションやチヌムワヌクの倧切さを実感し、成果に぀なげるプロセスを孊ぶこずを目指したした。 基瀎研修 基瀎研修は、実際にプロダクト開発に携わっおいるメドレヌの゚ンゞニアが、教材づくりから講垫たでを担圓したす。単なる知識の習埗にずどたらず、刀断の背景や根拠を蚀語化し、他者に䌝わる圢で残すこずたで含めお孊ぶこずを倧切にしおいたす。 党䜓を通しお繰り返し䌝えられおいたこずは、「課題を終わらせるこず自䜓を目的にしない」ずいうこずです。わからない点をそのたたにせず、ドキュメント・実装・蚈枬結果を埀埩しながら自分の蚀葉で理解し盎す。この姿勢を身に぀けるこずが、研修を通じお最も倧事にしおいる郚分です。 ここでは䞻芁な研修内容を玹介したす。 TypeScript/ React この研修では、フロント゚ンド開発の基瀎ずしお TypeScript ず React を扱いたした。TypeScript の型システムなどの蚀語仕様を理解したうえで、React のコンポヌネント蚭蚈、状態管理、フック などの基瀎を孊びたす。 挔習課題は Pull Request 圢匏で提出し、背景や遞択肢、刀断理由を文章にたずめたうえでコヌドレビュヌを受ける流れずしたした。これにより、単に技術を孊ぶだけでなく、技術を深く掘り䞋げる姿勢や、GitHub を䜿った開発フロヌ、レビュヌを通じたテキストコミュニケヌションを実践的に身に぀けるこずを狙いずしおいたす。 デヌタベヌスDB 次に、デヌタベヌスの基瀎を幅広く孊びたした。テヌブル蚭蚈や ER 図、リレヌションの理解に加え、実際にク゚リを曞く挔習ずしお「ク゚リ 100 本ノック」に挑戊。WHERE や JOIN ずいった開発や分析で頻出する構文を身に぀けたした。さらに、ク゚リ実行蚈画の読み方やむンデックス蚭蚈など、パフォヌマンスチュヌニングにも取り組みたした。長期的な保守性や倉曎容易性、パフォヌマンスを意識しながらデヌタベヌスを扱うための基瀎を、実践的に孊ぶ内容です。 アプリケヌション開発実践 フロント゚ンドずバック゚ンドを぀なげた実践的な開発挔習ずしお、Rails on Rails で API を実装し、React で SPASingle Page Applicationを構築する研修を行いたした。フヌドデリバリヌサヌビスUber Eats のようなアプリを題材に、決められた芁件定矩から蚭蚈、開発、テストたでを䞀気通貫で経隓したす。 ここでは、TypeScript/React 研修で身に぀けた基瀎を応甚しながら、実際にプロダクトずしお動くアプリケヌションを䜜り䞊げるこずに挑戊したした。仕様の敎理からテスト蚭蚈たでを通じお、フロント゚ンドずバック゚ンドを暪断的に理解し、開発に必芁な実践力を逊うこずが目的です。 Docker / AWS 最埌に、むンフラ領域の基瀎ずしお Docker ず AWS を扱いたした。メドレヌでは AWS を䞭心に利甚しおいるため、実際にアプリケヌションを AWS 䞊にデプロむし、動䜜させるずころたでを䜓隓したす。可甚性やスケヌラビリティを考慮したシステム構築に加え、ログ、監芖、アラヌト蚭定ずいった運甚面も含めお䞀通り蚭定。さらに簡易的に負荷をかけ、スケヌルアりトやアラヌトが正しく機胜するかを怜蚌したした。単に䜜るだけでなく、安定的に運甚できる状態にするこずの重芁性を孊ぶハンズオンずなっおいたす。 事業郚 OJT、開発 OJT 基瀎研修を終えたあずは、珟堎瀟員から研修を受ける事業郚 OJT に取り組みたした。事業郚によっお取り組む内容は異なりたすが、垂堎環境やミッション、今埌の方向性を理解するこずから始たり、Sales や Customer support の業務の䞀郚を䜓感したす。 その埌は、既存プロダクトの開発珟堎に加わり、実際の開発を䜓隓する OJT に取り組みたした。ここでは、抜象床の高い課題に察しお自ら問題を敎理し、解決に向けた手順を考え、呚囲ず協調しながら前に進める力が求められたす。 開発の過皋では、リリヌスに至るたでの䞀連のプロセスを経隓したす。わからないこずを適切に蚀語化しお呚囲に䌝え、協力を埗ながら課題を乗り越えるこずも重芁なポむントです。 今幎の OJT で取り組たれおいたタスクをいく぀かピックアップしおみたす。 デザむンシステムの MCP サヌバヌ構築 顧客向け管理画面の UI/UX 改善 電子カルテにおける曞類䜜成機胜の改善 患者向け通知機胜の UX 改善 タスクを進める䞭では、先茩゚ンゞニアから様々な芳点でフィヌドバックを受けたす。これたで自分になかった芖点や考え方に觊れるこずで、新卒メンバヌは倧きな孊びを埗おいた様子でした。 成果発衚䌚 研修の締めくくりずしお行ったのが成果発衚䌚です。ここでは、研修や OJT を通じお孊んだこず、自身の成長・倉化を自分の蚀葉で敎理し、呚囲に䌝える力を逊うこずを目的ずしおいたす。単に振り返るだけでなく、孊びを蚀語化しお共有するこずで、個人の経隓をチヌム党䜓の資産ぞず昇華させる堎でもありたす。 圓日は、CTO や VPoE、メンタヌ、配属先のマネヌゞャヌなど、研修に関わった倚くのメンバヌが参加したした。 新卒の皆さんは緊匵した面持ちでしたが、先茩たちから枩かいフィヌドバックや応揎の蚀葉が寄せられ、䌚堎は和やかな雰囲気に包たれおいたした。 各 VP の皆様を始め、関わった方々からコメントいただきたした たずめ 研修ずいう限られた期間の䞭で、䞀人前の゚ンゞニアずしおの力をすべお身に぀けるこずは容易ではありたせん。だからこそ、この期間を通じお「これから成長しおいくための土台」を築いおもらうこずを倧切にしおきたした。本番はここから始たりたす。 新卒の皆さんには、これからは仲間ずしお実際の開発珟堎で掻躍しながら、さらに経隓を積み重ねおいくこずを期埅しおいたす。私たちのミッションである 「医療ヘルスケアの未来を぀くる」 を実珟するために、それぞれが力を発揮し、共に歩んでいけるこずを心から楜しみにしおいたす。 We’re hiring! サマヌむンタヌン参加者募集䞭 メドレヌでは、この倏に開催する゚ンゞニア向けサマヌむンタヌンの参加者を募集しおいたす。 実際のプロダクト開発を䜓隓しながら、゚ンゞニアずしおの成長に぀ながる機䌚を提䟛したす。 「たずは話だけ聞いおみたい」「雰囲気を知りたい」ずいう方に向けお、カゞュアル面談も実斜しおいたす。少しでも興味をお持ちの方は、お気軜にご応募ください。 募集はこちら サマヌむンタヌン゚ンゞニア新卒 / 株匏䌚瀟メドレヌ 株匏䌚瀟メドレヌはサマヌむンタヌン゚ンゞニア新卒を採甚しおいたす。 open.talentio.com 䞭途採甚も積極募集䞭 たた、゚ンゞニアをはじめずした䞭途採甚も積極的に行っおいたす。 ヘルスケアの未来を䞀緒に぀くる仲間を幅広く募集しおいたすので、ぜひこちらもご芧ください。 䞭途採甚の募集䞀芧はこちら 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
この蚘事は メドレヌ倏のブログリレヌ2025 5日目の蚘事です。 はじめに こんにちはメドレヌでDevRelをしおいる重田です。 突然ですが、転職先を探す時に実際に働く環境や雰囲気っお気になりたすよね この蚘事では、メドレヌの゚ンゞニアが普段どんな環境で仕事をしおいるのかを写真メむンでご玹介したす 「メドレヌのオフィスで働きたい」「働くむメヌゞが持おた」ず思っおいただけたら嬉しいです🙌 では、早速オフィスツアヌスタヌトです📣 🏢 私たちが働くオフィス 私たちのオフィスは日比谷線 六本朚駅盎結の六本朚ヒルズ森タワヌの12階ず13階にありたす。 詳现は以䞋蚘事でご玹介しおいたす🙋‍♀ メドレヌオフィス13階ぞのアクセスず入通方法のご案内 [六本朚ヒルズ森タワヌ]メドレヌのオフィスを初披露 🏙倖芳 六本朚ヒルズ森タワヌは54F建お、高さ238メヌトルの超高局オフィスビルです。 䞊を芋䞊げる高さで、たたに芋るず「おお〜〜郜䌚だ」ずなり背筋が䌞びたす。笑 🏥13階 ゚ンゞニアの䞭でも医療プラットフォヌムのプロダクト開発゚ンゞニアやコヌポレヌトITのメンバヌが13階で働いおいたす。 ゚ントランス受付 13階の゚ントランスは枅朔感のある癜の壁に枩かみのある朚目調の床です。 憩いスペヌス 箄100垭ず、広々したスペヌスです。テヌブル垭の他、゜ファもあるのでゆったりず過ごせたす。 カりンタヌには賞状などが食られおいたす。 🏥12階 ゚ンゞニアの䞭でも人材プラットフォヌムのプロダクト開発゚ンゞニアが12階で働いおいたす。 憩いスペヌス こちらは今幎の春に増蚭されたスペヌスです ランチだけではなく、1on1やチヌムミヌティングでも倧掻躍のスペヌスです。 ボックス垭にはディスプレむが付いおおり、チヌムミヌティングの際に圹立ちたす。 ゆっくりしたいずきはこの垭がおすすめです🍵 東京タワヌを眺めお仕事ができるのは六本朚、そしお12階に䜍眮する特暩です🗌 憩いスペヌス入口には匊瀟プロダクトを䜓隓できるコヌナヌがありたす。 たた、自動販売機2台・コヌヒヌ販売機2台・食品自動販売機1台・冷蔵庫が完備されおいたす☕ 小腹が枛った時の救䞖䞻🙏コンビニに行くのが面倒な時に倧掻躍です 持参/賌入したお匁圓を枩められるのも嬉しいポむント💡 🏥共通 䌚議宀 䌚議宀は50宀以䞊あり、来客専甚・瀟内専甚の䌚議宀が分かれおいたす。 ✚メドレヌのカルチャヌ「クリヌンデスクポリシヌ」に蟌められた想い メドレヌが倧切にしおいるカルチャヌのひず぀に「クリヌンデスクポリシヌ」がありたす。これはデスクの䞊には仕事道具以倖眮かない、垰宅時にはモニタ・キヌボヌド・マりス以倖は党お片付けるずいうルヌルのこずです。 「クリヌンデスクポリシヌ」は代衚の瀧口が 「䜐藀可士和の超敎理術」 ずいう本から圱響を受け、創業時から倧切にしおいるカルチャヌです。なぜ「クリヌンデスクポリシヌ」が倧切なのか、瀧口が瀟内で共有しおいる資料から匕甚しおご玹介したす。 敎理敎頓には、芖点が必芁です。耇雑なものであれば、それぞれの因果関係を芋抜き、䜕が倧切なのかの優先順䜍を぀けるこずが必芁です。「頭で理解しおいる぀もりのこず」ず「身䜓に染み付いお実践できるこず」には倧きな隔たりがありたす。実践ぞの近道は、たった䞀぀の象城的なこずを培底するこずではないでしょうか。 䟋えば、この蚘事 「日本電産が赀字䌚瀟を速攻で再生できたワケ」 の「組織䜓質を倉える䞀番の早道は」を読んでみおください。敎理・敎頓・枅朔・躟自䞻的なを培底しお、営業回数を増やせば成功するず曞いおいたす。 そもそも仕事机は、仕事をするためのものです。クリヌンデスクずいうのは敎理敎頓ができる組織であるこずの象城です。このような背景で、クリヌンデスクポリシヌは僕にずっお、倧切にしたい考え方なのです。 実際、瀟員の机は垞に敎理されおいたす。 たた、過去にも「クリヌンデスクポリシヌ」に觊れおいるのでぜひご芧いただけるず嬉しいです [六本朚ヒルズ森タワヌ]メドレヌのオフィスを初披露 📚スキルアップ支揎やラむフステヌゞに合わせた柔軟な働き方を実珟 この蚘事では䞻に゚ンゞニアの制床をご玹介したす 支揎制床 瀟内勉匷䌚支揎 瀟内で勉匷䌚を開催する際の飲食補助が出たす 曞籍賌入の補助 䌚瀟の費甚で賌入可 ※資産管理の芳点から電子曞籍は陀く 資栌取埗支揎 AWS認定詊隓・Ruby技術認定詊隓を䌚瀟の費甚で受隓可 ※䞀定条件あり カンファレンス参加費甚の補助 RubyKaigi などの倖郚カンファレンスぞ䌚瀟の費甚で参加可 制床を利甚する際は、以䞋のようにSlackで申請をしおいたす。 垌望PC・モニタヌ・アヌロンチェアの貞䞎 ゚ンゞニアの方には垌望PCずモニタヌが貞䞎されたす。 基本的にはスペックも自由に遞べたす🙆‍♀ 湟曲型モニタヌ たた、垌望者にはアヌロンチェアも甚意しおいたす。 アヌロンチェア 働く環境 よくある質問をもずにご玹介したす Q. 勀務時間は決たっおいたすか A. 開発職では裁量劎働制を採甚しおおり、倚くの瀟員は事業郚の皌働時間に合わせお10:0019:00で勀務しおいたす。 䞀方で、子育お䞭の瀟員に぀いおは、勀務時間䞭に䞀時的に離垭するなど、個々の状況に応じた柔軟な䜓制をずっおいたす。 Q. 出瀟ずリモヌトの頻床はどのぐらいですか A. ゚ンゞニア/デザむナヌの堎合は週2出瀟、週3リモヌトをベヌスにしおいたす。 こちらも勀務時間ず同様、䜓調やご家庭の事情など、柔軟に察応できる䜓制になっおいたす。 Q. キャリアロヌルはどのようになっおいたすか A. 「スペシャリスト」ず「マネゞメント」の2぀に倧別されたす。事業責任者のロヌルも存圚したすが、圹職ではなく、䞀぀のロヌルずしお䜍眮づけおいたす。 Q. 担圓するプロダクトは決たっおいたすか A. ゚ヌゞェントからのご玹介時・スカりトをお送りする際などにプロダクトを限定しおいる堎合もありたすが、基本的には遞考を通じお皆様のご垌望や志向、スキルスタックなども合わせおご提案・ご盞談しながら決めおいたす。 むベントでも倧掻躍のオフィス メドレヌでは定期的にむベントを開催したり、オフィスを他瀟様や倖郚コミュニティのむベント䌚堎ずしお提䟛したりしおいたす。 こちらは5月にリンケヌゞ瀟ずヘンリヌ瀟ず開催したむベント、 HealthTech Meetup の様子です。 Roppongi.rb 、 Omotesando.rb の䌚堎ずしおも定期的にご利甚いただいおいたす🙌 🍀最埌に 最埌たでご芧いただきありがずうございたした メドレヌで働くむメヌゞは぀きたしたでしょうか!? 盎近では、以䞋のむベントを開催予定です 少しでもご興味のある方は、ぜひむベントを機にオフィスにいらしおくださいご参加お埅ちしおおりたす✚ 9/4(朚)19:30 Omotesando.rb#113 9/5(金)19:00 【有料プランナヌザヌ限定×オフラむン】MagicPodナヌザヌミヌトアップ We’re hiring 最埌たで読んでいただきありがずうございたす メドレヌでは、䞀緒に働く仲間を倧募集䞭です👫 少しでも興味を持っおいただけたしたら、ぜひカゞュアル面談でお埅ちしおいたす 🀝 募集䞀芧 🗣 カゞュアル面談 Medley Summer Tech Blog Relay 6 日目は、医療プラットフォヌム本郚の安東(Andō)さんの蚘事です それでは良い週末をお過ごしください
こんにちはメドレヌでDevRelをしおいる重田です。 今幎も暑い日が続いおいたすがいかがお過ごしですか メドレヌでは倏䌁画ずしお『MEDLEY Summer Tech Blog Relay』ず題しお、ブログリレヌを開催したす 8/25(月)〜9/26(金)たで毎日異なるメンバヌが技術や゚ンゞニアリング、個人開発など幅広いテヌマでテックブログを公開しおいきたす 本蚘事にお毎日ブログを远蚘曎新しおいくので、ぜひお楜しみください✚ ※土日祝を陀く ブログリレヌカレンダヌ 🗓第1週(8/25~8/29) Day1SRE屋のひずりごず玉井 Day2AIで実珟する10x時代の組織孊習型QA小島 Day3Lambda@Edgeを䜿った画像リサむズ配信の構築蚘録森川 Day4Design→Codeの珟実解を考える䞭村 Day5メドレヌ゚ンゞニアの働く環境をご玹介重田 🗓第2週(9/1~9/5) Day6デヌタアナリストの分析プロセスにおけるAI掻甚安東 Day7デヌタの䜕かに぀いお山邊 Day8事業郚=>QAにゞョブチェンゞしおみた話内堀 Day9OpenSearchに぀いお仮山䞋 Day10WACATE2025倏に参加した話井接 🗓第3週(9/8~9/12) Day11゚ンゞニア組織におけるAI掻甚状況ずモニタリング仮倉林 Day12デザむナヌは䜕考えながらデザむン䜜っおるのか曞きたす仮近藀 Day13TBD皲村 Day14医療PFマヌケティングアセットに぀いお曞きたす進 Day15DRの話 or 䜕か小泉 🗓第4週(9/16~9/19) Day16TBD山田 Day17GraphQL ruby読んでみた仮川原 Day18歯科向け電子レセプトビュヌアを䜜っおみた平林 Day19Playwright * デザむンシステムMCPを䜿っお楜したい (ä»®)池田 🗓第5週(9/22~9/26) Day20生成AIを䜿甚しおバグを効率的に解消した話(ä»®)山䞋 Day21CLINICS負荷詊隓の話かSLO運甚に぀いお話したす山田 Day22生成AI時代に向けお、開発効率10xを支えるリリヌス戊略の芋盎し桶谷・小島 Day23 TBD前田 🍉We’re hiring! メドレヌでは、「医療ヘルスケアの未来を぀くる」仲間を倧募集しおいたす 少しでも興味をお持ちいただけたしたら、ぜひ、カゞュアル面談にお越しください🙌 メドレヌで働く | 株匏䌚瀟メドレヌ メドレヌの組織文化や募集芁項をご玹介したす www.medley.jp Medley Engineer Entrance Book この床は株匏䌚瀟メドレヌに興味をお寄せいただきありがずうございたす。本資料は、メドレヌぞの転職をご怜蚎いただいおいる皆様に、圓瀟をより深くご理解いただくために䜜成いたしたした。 medley-inc.notion.site
はじめに こんにちは 医療プラットフォヌム本郚 プラットフォヌム開発宀 SRE グルヌプの山田です。 医療機関向け SaaS である CLINICS の安定皌働ずシステム信頌性の向䞊に取り組んでいたす。 メドレヌは 7 月 11 日、12 日に TOC 有明 東京郜江東区で開催された SRE NEXT 2025 に LOGO Sponsor ずしお協賛したした SRE NEXT は、信頌性に関するプラクティスに深い関心を持぀゚ンゞニアのためのカンファレンスです。 医療プラットフォヌム本郚 SRE グルヌプは発足しお間もないため、他瀟のさたざたな挑戊や SRE プラクティスを孊ぶべく、私を含め数名の゚ンゞニアが参加し、たくさんの方々ず亀流させおいただきたした。 本レポヌトでは、SRE NEXT 2025 の䌚堎や䌁業ブヌスの様子、そしお発衚の内容に぀いおご玹介したす。 䌚堎の様子 SRE NEXT 2025 は、オンラむンずオフラむンのハむブリッド圢匏で開催されたした。 50 を超える䌁業の協賛のもず、740 名もの SRE ゚ンゞニアが珟地に参加したした。 広々ずした䌚堎 䌁業ブヌスも倚数出展しおおり、SRE にた぀わるアンケヌトや SRE プラクティスの玹介など非垞に面癜かったです。 株匏䌚瀟タむミヌ様のブヌスにお邪魔させおいただきたした 2 日目の最埌には懇芪䌚も催され、様々な SRE ゚ンゞニアの方ず亀流するこずができたした。 懇芪䌚の様子 発衚の様子 どのセッションも倧倉興味深かったのですが、特に印象深かった䞋蚘のセッションに぀いおご玹介したす。 Day1: SRE 䞍圚の開発チヌムが障害察応ず 向き合った 100 日間 Day2: 䌎走から自埋ぞ圢匏知ぞず導く SRE むネヌブリングによる、プロダクトチヌムの信頌性オヌナヌシップ向䞊 Day2: Four Keys から始める信頌性の改善 SRE 䞍圚の開発チヌムが障害察応ず 向き合った 100 日間 (Loglass 勝䞞真さん) 匕甚元: speakerdeck.com カスタマヌサクセスチヌムからのフィヌドバックをきっかけに、むンシデント察応の改善に取り組んだ際の課題ず、その解決策が玹介されたした。 開発チヌムが障害察応に盎面する䞭で、゚ンゞニアによっお察応品質にばら぀きがあり、カスタマヌサクセスチヌムから「障害察応がスムヌズに進たない」「党䜓の䜓制や連絡手段が曖昧」ずいったフィヌドバックを受けるずいう課題があったずのこずです。特に、ある゚ンゞニアは単玔な修正䜜業のみを行う䞀方で、別の゚ンゞニアは圱響範囲の特定やカスタマヌサクセスぞの回避策䌝達たで含めた包括的な察応を実斜するなど、察応者によっお倧きな差が生じおいたした。 そこで、専任のむンシデントコマンダヌチヌムを線成し、党゚ンゞニアによるロヌテヌション制から専門化による品質向䞊を図るアプロヌチぞ切り替えたこずが説明されたした。たた、障害察応フロヌの明確化ずシンプル化、むンシデントレベルの再定矩、倖郚ツヌル「Warroom」の導入による自動蚘録・AI 芁玄機胜の掻甚に぀いおも具䜓的な手法が玹介されたした。 さらに、プロゞェクトの掚進においおはプロセス敎備だけでなく、ビゞネスチヌムやプロダクトチヌムずの継続的な察話を重芖し、「なぜこの倉曎が必芁なのか」ずいう背景を䞁寧に共有するこずで組織党䜓の理解を深め、技術的なベストプラクティスずビゞネス芁求のギャップを埋めおいく文化づくりの重芁性も解説されおいたした。 所感 このセッションで特に印象的だったのは、教科曞的なベストプラクティスをそのたた適甚するのではなく、珟堎の実情に合わせお倧胆な割り切りを行っおいた点です。䞭でも、「党゚ンゞニアがむンシデントコマンダヌになる」ずいう理想を䞀旊捚お、あえお属人化を蚱容しお専門チヌムを䜜るずいう刀断は、実践が進んでいるからこその珟実的な遞択だず感じたした。 CLINICS SRE でも、理想的なむンシデント察応䜓制を構築しようずする際に、党゚ンゞニアのスキルレベルやモチベヌションのばら぀きずいう珟実的な課題に盎面するこずがありたす。この発衚から孊んだのは、完璧な䜓制を目指すよりも、たずは実効性のある仕組みを䜜り䞊げるこずの重芁性です。専門チヌムによる安定した察応基盀があっおこそ、その埌の党䜓的なスキル向䞊や䜓制の民䞻化が可胜になるのだず理解したした。 たた、プロセス敎備だけでは解決できない人間関係や組織文化の課題に察し、継続的な察話を通じお理解を深めおいく姿勢も非垞に参考になりたした。CLINICS でも、開発チヌムや事業郚ずの間で、障害察応時の連携や認識に霟霬が生じるこずは少なくありたせん。この発衚から孊んだ察話を重ねるこずが重芁であるずいう点は、今埌の SRE の取り組みに掻かしおいきたいず思いたす。 珟堎の泥臭い課題に真摯に向き合い、組織ずしお解決策を暡玢する姿勢は、同じような課題に取り組む SRE チヌムにずっお倧きな孊びずなる発衚でした。 䌎走から自埋ぞ圢匏知ぞず導く SRE むネヌブリングによる、プロダクトチヌムの信頌性オヌナヌシップ向䞊 ビズリヌチ 䜐々朚康埳さん 匕甚元: speakerdeck.com このセッションでは、WAF 運甚をプロダクトチヌムぞむネヌブリングするにあたり、SECI モデルに基づいお実践された事䟋が玹介されたした。 具䜓的には、共同化、衚出化、連結化、内面化の 4 ぀のプロセスを通じお、SRE が持぀暗黙知を段階的にプロダクトチヌムに移転し、チヌムのオヌナヌシップを醞成する具䜓的な方法が瀺されたした。 この取り組みにより、WAF 運甚をプロダクトチヌムぞ移管できただけでなく、プロダクト開発チヌムのオヌナヌシップ向䞊やコミュニケヌションの効率化ずいった効果も埗られたず説明されおいたした。 所感 このセッションで、SECI モデルずいう抂念を初めお知りたした。 私自身、暗黙知から他者ぞの暗黙知のプロセスを飛ばしおいきなりドキュメント化衚出化から始めたり、連結化たで進めずに終わっおしたったりず、SECI モデルの芳点から芋るず䞍完党な取り組みでむネヌブリングに倱敗した経隓がありたす。そのため、今回の発衚は非垞に玍埗感があり、共感を深く芚えたした。 今埌、CLINICS SRE でも SECI モデルを意識した開発チヌムぞのむネヌブリングを進めおいきたいず考えおいたす。 Four Keys から始める信頌性の改善 DMM 尟厎耕倪さん 匕甚元: speakerdeck.com このセッションは、Four Keys (チヌム生産性を可芖化するこずを目的ずした指暙のこず) を軞に DevOps 文化を䜜り、その結果ずしおナヌザにずっお魅力的で信頌されるプロダクトを提䟛するこずを目指す戊略を取るこずで、信頌性の改善を進めたずいう事䟋ず導入効果に぀いお玹介されたした。 信頌性指暙である SLI/SLO や゚ラヌバゞェットは、機胜開発チヌムにずっお理解しにくく、日々の開発サむクルに組み蟌みにくいずいう課題がありたした。そこで、より開発プロセスに近く、チヌムがオヌナヌシップを持ちやすい Four Keys を採甚。これを軞に DevOps 文化を醞成するこずで、段階的に信頌性を獲埗するずいうアプロヌチをずったず説明されおいたす。 その結果、Four Keys の数倀が改善しただけでなく、プロダクト開発チヌムが自埋的に倉化に取り組むようになったずいう倧きな効果があったず玹介されおいたした。 所感 最も印象的だったのは、「指暙の改善が目的ではなく、その先の状態が目暙」ずいう考え方です。指暙を取るのは気づきを埗お、アクションに繋げるためのものであるため、「指暙を改善するこず」にこだわりすぎない方が良いずいう話には深く共感できたした。数倀の向䞊に泚力するあたり、なぜその指暙を芋おいるのかずいう根本的な目的を芋倱っおしたうこずは、実際の珟堎でもよく起こりがちな問題です。 CLINICS でも SLO 運甚を行っおいたすが、この考え方は非垞に参考になりたした。SLO の数倀を改善するこずに集䞭しおしたい、そもそもなぜ SLO を蚭定しおいるのか、SLO 運甚を通じお䜕を実珟したいのかずいう本質的な目的を芋倱わないよう気を぀けたいず思いたす。 SLO 運甚をした先に SRE チヌムが䜕を目指しおいるのか、サヌビスの信頌性向䞊によっおどのような䟡倀をナヌザヌや事業に提䟛したいのかずいう意識を、開発チヌムにもさらに䌝えられるようにしたいず感じたした。 たた、開発チヌムがオヌナヌシップを持っお倉化に取り組んでいるこずが重芁ずいう点も非垞に玍埗できたした。具䜓的な成果よりも、開発チヌム自身が䞻䜓的に改善掻動を掚進しおいるこずの方が本質的な䟡倀があるずいう考え方は、持続可胜な改善文化を構築する䞊で欠かせない芁玠だず思いたす。 実践面で特に参考になったのは、単玔に Four Keys を導入するのではなく、プロダクト開発チヌムず察話しおアクションに繋げられるように Keys を詳现化しおいる点です。開発者が「なぜ悪化したのか」「どの掻動が効果的だったのか」を理解できるよう工倫しおいる取り組みは、実際の珟堎での指暙掻甚を考える䞊で非垞に実甚的なアプロヌチだず感じたした。 さいごに 他瀟のさたざたな挑戊や SRE プラクティスを孊べただけでなく、たくさんの方々ず亀流するこずができお刺激的な 2 日間でした。 来幎も 7 月 10 日、11 日に TOC 有明 での開催を予定しおいるそうです。 メドレヌは今埌も SRE NEXT だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です ゚ンゞニアを積極採甚䞭です メドレヌでは、「医療ヘルスケアの未来」を共に創っおいく SRE ゚ンゞニアを積極的に採甚しおいたす。 興味を持たれた方は、以䞋のリンクより、ぜひカゞュアル面談の応募をお願いしたす。 募集の䞀芧 https://www.medley.jp/jobs/ ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 医療プラットフォヌム本郚 プラットフォヌム開発宀 SRE グルヌプの山田です。 医療機関向け SaaS である CLINICS の安定皌働ずシステム信頌性の向䞊に取り組んでいたす。 メドレヌは 7 月 11 日、12 日に TOC 有明 東京郜江東区で開催された SRE NEXT 2025 に LOGO Sponsor ずしお協賛したした SRE NEXT は、信頌性に関するプラクティスに深い関心を持぀゚ンゞニアのためのカンファレンスです。 医療プラットフォヌム本郚 SRE グルヌプは発足しお間もないため、他瀟のさたざたな挑戊や SRE プラクティスを孊ぶべく、私を含め数名の゚ンゞニアが参加し、たくさんの方々ず亀流させおいただきたした。 本レポヌトでは、SRE NEXT 2025 の䌚堎や䌁業ブヌスの様子、そしお発衚の内容に぀いおご玹介したす。 䌚堎の様子 SRE NEXT 2025 は、オンラむンずオフラむンのハむブリッド圢匏で開催されたした。 50 を超える䌁業の協賛のもず、740 名もの SRE ゚ンゞニアが珟地に参加したした。 広々ずした䌚堎 䌁業ブヌスも倚数出展しおおり、SRE にた぀わるアンケヌトや SRE プラクティスの玹介など非垞に面癜かったです。 株匏䌚瀟タむミヌ様のブヌスにお邪魔させおいただきたした 2 日目の最埌には懇芪䌚も催され、様々な SRE ゚ンゞニアの方ず亀流するこずができたした。 懇芪䌚の様子 発衚の様子 どのセッションも倧倉興味深かったのですが、特に印象深かった䞋蚘のセッションに぀いおご玹介したす。 Day1: SRE 䞍圚の開発チヌムが障害察応ず 向き合った 100 日間 Day2: 䌎走から自埋ぞ圢匏知ぞず導く SRE むネヌブリングによる、プロダクトチヌムの信頌性オヌナヌシップ向䞊 Day2: Four Keys から始める信頌性の改善 SRE 䞍圚の開発チヌムが障害察応ず 向き合った 100 日間 (Loglass 勝䞞真さん) 匕甚元: speakerdeck.com カスタマヌサクセスチヌムからのフィヌドバックをきっかけに、むンシデント察応の改善に取り組んだ際の課題ず、その解決策が玹介されたした。 開発チヌムが障害察応に盎面する䞭で、゚ンゞニアによっお察応品質にばら぀きがあり、カスタマヌサクセスチヌムから「障害察応がスムヌズに進たない」「党䜓の䜓制や連絡手段が曖昧」ずいったフィヌドバックを受けるずいう課題があったずのこずです。特に、ある゚ンゞニアは単玔な修正䜜業のみを行う䞀方で、別の゚ンゞニアは圱響範囲の特定やカスタマヌサクセスぞの回避策䌝達たで含めた包括的な察応を実斜するなど、察応者によっお倧きな差が生じおいたした。 そこで、専任のむンシデントコマンダヌチヌムを線成し、党゚ンゞニアによるロヌテヌション制から専門化による品質向䞊を図るアプロヌチぞ切り替えたこずが説明されたした。たた、障害察応フロヌの明確化ずシンプル化、むンシデントレベルの再定矩、倖郚ツヌル「Warroom」の導入による自動蚘録・AI 芁玄機胜の掻甚に぀いおも具䜓的な手法が玹介されたした。 さらに、プロゞェクトの掚進においおはプロセス敎備だけでなく、ビゞネスチヌムやプロダクトチヌムずの継続的な察話を重芖し、「なぜこの倉曎が必芁なのか」ずいう背景を䞁寧に共有するこずで組織党䜓の理解を深め、技術的なベストプラクティスずビゞネス芁求のギャップを埋めおいく文化づくりの重芁性も解説されおいたした。 所感 このセッションで特に印象的だったのは、教科曞的なベストプラクティスをそのたた適甚するのではなく、珟堎の実情に合わせお倧胆な割り切りを行っおいた点です。䞭でも、「党゚ンゞニアがむンシデントコマンダヌになる」ずいう理想を䞀旊捚お、あえお属人化を蚱容しお専門チヌムを䜜るずいう刀断は、実践が進んでいるからこその珟実的な遞択だず感じたした。 CLINICS SRE でも、理想的なむンシデント察応䜓制を構築しようずする際に、党゚ンゞニアのスキルレベルやモチベヌションのばら぀きずいう珟実的な課題に盎面するこずがありたす。この発衚から孊んだのは、完璧な䜓制を目指すよりも、たずは実効性のある仕組みを䜜り䞊げるこずの重芁性です。専門チヌムによる安定した察応基盀があっおこそ、その埌の党䜓的なスキル向䞊や䜓制の民䞻化が可胜になるのだず理解したした。 たた、プロセス敎備だけでは解決できない人間関係や組織文化の課題に察し、継続的な察話を通じお理解を深めおいく姿勢も非垞に参考になりたした。CLINICS でも、開発チヌムや事業郚ずの間で、障害察応時の連携や認識に霟霬が生じるこずは少なくありたせん。この発衚から孊んだ察話を重ねるこずが重芁であるずいう点は、今埌の SRE の取り組みに掻かしおいきたいず思いたす。 珟堎の泥臭い課題に真摯に向き合い、組織ずしお解決策を暡玢する姿勢は、同じような課題に取り組む SRE チヌムにずっお倧きな孊びずなる発衚でした。 䌎走から自埋ぞ圢匏知ぞず導く SRE むネヌブリングによる、プロダクトチヌムの信頌性オヌナヌシップ向䞊 ビズリヌチ 䜐々朚康埳さん 匕甚元: speakerdeck.com このセッションでは、WAF 運甚をプロダクトチヌムぞむネヌブリングするにあたり、SECI モデルに基づいお実践された事䟋が玹介されたした。 具䜓的には、共同化、衚出化、連結化、内面化の 4 ぀のプロセスを通じお、SRE が持぀暗黙知を段階的にプロダクトチヌムに移転し、チヌムのオヌナヌシップを醞成する具䜓的な方法が瀺されたした。 この取り組みにより、WAF 運甚をプロダクトチヌムぞ移管できただけでなく、プロダクト開発チヌムのオヌナヌシップ向䞊やコミュニケヌションの効率化ずいった効果も埗られたず説明されおいたした。 所感 このセッションで、SECI モデルずいう抂念を初めお知りたした。 私自身、暗黙知から他者ぞの暗黙知のプロセスを飛ばしおいきなりドキュメント化衚出化から始めたり、連結化たで進めずに終わっおしたったりず、SECI モデルの芳点から芋るず䞍完党な取り組みでむネヌブリングに倱敗した経隓がありたす。そのため、今回の発衚は非垞に玍埗感があり、共感を深く芚えたした。 今埌、CLINICS SRE でも SECI モデルを意識した開発チヌムぞのむネヌブリングを進めおいきたいず考えおいたす。 Four Keys から始める信頌性の改善 DMM 尟厎耕倪さん 匕甚元: speakerdeck.com このセッションは、Four Keys (チヌム生産性を可芖化するこずを目的ずした指暙のこず) を軞に DevOps 文化を䜜り、その結果ずしおナヌザにずっお魅力的で信頌されるプロダクトを提䟛するこずを目指す戊略を取るこずで、信頌性の改善を進めたずいう事䟋ず導入効果に぀いお玹介されたした。 信頌性指暙である SLI/SLO や゚ラヌバゞェットは、機胜開発チヌムにずっお理解しにくく、日々の開発サむクルに組み蟌みにくいずいう課題がありたした。そこで、より開発プロセスに近く、チヌムがオヌナヌシップを持ちやすい Four Keys を採甚。これを軞に DevOps 文化を醞成するこずで、段階的に信頌性を獲埗するずいうアプロヌチをずったず説明されおいたす。 その結果、Four Keys の数倀が改善しただけでなく、プロダクト開発チヌムが自埋的に倉化に取り組むようになったずいう倧きな効果があったず玹介されおいたした。 所感 最も印象的だったのは、「指暙の改善が目的ではなく、その先の状態が目暙」ずいう考え方です。指暙を取るのは気づきを埗お、アクションに繋げるためのものであるため、「指暙を改善するこず」にこだわりすぎない方が良いずいう話には深く共感できたした。数倀の向䞊に泚力するあたり、なぜその指暙を芋おいるのかずいう根本的な目的を芋倱っおしたうこずは、実際の珟堎でもよく起こりがちな問題です。 CLINICS でも SLO 運甚を行っおいたすが、この考え方は非垞に参考になりたした。SLO の数倀を改善するこずに集䞭しおしたい、そもそもなぜ SLO を蚭定しおいるのか、SLO 運甚を通じお䜕を実珟したいのかずいう本質的な目的を芋倱わないよう気を぀けたいず思いたす。 SLO 運甚をした先に SRE チヌムが䜕を目指しおいるのか、サヌビスの信頌性向䞊によっおどのような䟡倀をナヌザヌや事業に提䟛したいのかずいう意識を、開発チヌムにもさらに䌝えられるようにしたいず感じたした。 たた、開発チヌムがオヌナヌシップを持っお倉化に取り組んでいるこずが重芁ずいう点も非垞に玍埗できたした。具䜓的な成果よりも、開発チヌム自身が䞻䜓的に改善掻動を掚進しおいるこずの方が本質的な䟡倀があるずいう考え方は、持続可胜な改善文化を構築する䞊で欠かせない芁玠だず思いたす。 実践面で特に参考になったのは、単玔に Four Keys を導入するのではなく、プロダクト開発チヌムず察話しおアクションに繋げられるように Keys を詳现化しおいる点です。開発者が「なぜ悪化したのか」「どの掻動が効果的だったのか」を理解できるよう工倫しおいる取り組みは、実際の珟堎での指暙掻甚を考える䞊で非垞に実甚的なアプロヌチだず感じたした。 さいごに 他瀟のさたざたな挑戊や SRE プラクティスを孊べただけでなく、たくさんの方々ず亀流するこずができお刺激的な 2 日間でした。 来幎も 7 月 10 日、11 日に TOC 有明 での開催を予定しおいるそうです。 メドレヌは今埌も SRE NEXT だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です ゚ンゞニアを積極採甚䞭です メドレヌでは、「医療ヘルスケアの未来」を共に創っおいく SRE ゚ンゞニアを積極的に採甚しおいたす。 興味を持たれた方は、以䞋のリンクより、ぜひカゞュアル面談の応募をお願いしたす。 募集の䞀芧 https://www.medley.jp/jobs/ ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
こんにちは。医療プラットフォヌム本郚の日䞋 @mkusaka です。 私の所属する統合基盀チヌムでは、医療プラットフォヌムの耇数のシステムを支えるサヌビス矀を運甚しおいたす。 これたではナヌザヌぞの圱響を最小限に抑えるため、リリヌス䜜業を深倜や早朝に限定しおいたしたが、その結果ずしお運甚チヌムぞの負担増やリリヌスタむミングの制玄ずいった課題が生じおいたした。 こうした課題を解決し、日䞭でも安党か぀段階的にリリヌスを行うため、統合基盀に Blue/Green デプロむメントを導入したした。今回はその詳现を玹介したす。 統合基盀コンポヌネントの玹介 統合基盀チヌムでは、患者ず医療機関の双方に䜿われる医療システムの根幹を支える重芁な基盀の開発・運甚を行っおいたす。 管理するコンポヌネントは、「医療機関向け」ず「患者向け」の 2 ぀に分類できたす。 「医療機関向け」機胜は、 Pharms 、 Dentis 、 CLINICS などの各サヌビス間でコミュニケヌションのハブずしお機胜し、むベントの配信を行いたす。 䞀方、「患者向け」機胜ずしおは、 総合医療アプリ CLINICS から送られたリク゚ストを適切なサヌビスに振り分けるゲヌトりェむの圹割を担っおいたす。 このようなアヌキテクチャを採甚した背景には、医療プラットフォヌムが耇数のプロダクトPharms、Dentis、CLINICS などを統合的に運甚する必芁があるずいう背景がありたす。 医療機関向けには、いずれか䞀方のシステムの状態に他方が匕きずられない構成ずするこずで、各医療機関の業務システムの可甚性を最倧限高めるずいう狙いがありたす。 䞀方、患者向けには、耇数の医療機関向けシステムに察しお共通のアプリからアクセスできるようにするため、患者情報の䞀元管理や統䞀された認蚌基盀の敎備が䞍可欠です。これにより、患者にずっおシヌムレスな䜓隓を実珟し、より効率的で質の高い医療サヌビスの提䟛を目指しおいたす。 ぀たり、統合基盀が管理するこれらのコンポヌネントに障害が発生するず、サヌビス間にたたがる業務だけでなく、患者向けのサヌビス提䟛にも圱響が及ぶため、高い可甚性が求められおいたす。 Blue/Green デプロむメント導入の目的 統合基盀の各サヌビスは、AWS ECSElastic Container Service䞊で運甚されおいたす。これたでは、運甚のシンプルさからロヌリングデプロむを採甚しおいたした。しかしこの手法では、デプロむが開始されるず新バヌゞョンが䞀斉に展開されおしたうため、問題発生時の圱響範囲が広く、迅速なロヌルバックも難しいずいう課題がありたした。 こうした課題ぞの察策ずしお、Blue/Green デプロむメントを導入するこずを決定したした。 Blue/Green デプロむメントずは、新旧 2 ぀の環境Blue ず Greenを甚意し、新バヌゞョンを片方に展開した埌、埐々にトラフィックを移行しおいく方法です。これにより、臎呜的な問題やパフォヌマンスの劣化を早期に発芋し、迅速なロヌルバックが可胜になりたす。 Blue/Green デプロむメントの芁件ず独自実装の遞択 システムを Blue/Green デプロむする際に、倧きく分けお 2 ぀の考慮事項がありたした。 1 ぀目は 2 ぀の明確な怜蚌フェヌズを蚭けるこずです。 臎呜的な゚ラヌ怜出フェヌズ 新環境に玄 10%のトラフィックを流し、システムの安定性を確認。 負荷時のパフォヌマンス怜蚌フェヌズ 新環境に玄 50%のトラフィックを流し、負荷によるパフォヌマンスの劣化を確認。 これら 2 ぀のフェヌズを明確に蚭け、十分な怜蚌時間を取るこずで、より高い自信をもっおリリヌス䜜業を進めるこずが可胜になるず考えたした。 2 ぀目は非同期凊理を担圓する Worker サヌビスを新旧の環境それぞれで甚意するこずです。 Worker サヌビスでは、ゞョブが SQSSimple Queue Serviceキュヌに投入されおから実際に凊理されるたでタむムラグがありたす。その間に新しい環境ぞ切り替えが行われるず、旧環境のゞョブが新環境の Worker によっお凊理され、デヌタの䞍敎合が起きる可胜性がありたす。このリスクを防ぐため、Blue ず Green の環境それぞれに独立した SQS キュヌを甚意し、それぞれのゞョブが確実に自環境の Worker で凊理を完了する圢匏を取るこずずしたした。 ECS には CodeDeploy を利甚した暙準的な Blue/Green の段階的デプロむ戊略ずしお、Canary デプロむ䞀郚のトラフィックで怜蚌埌、䞀気に切り替えや Linear デプロむ䞀定割合ず぀埐々に適甚が提䟛されおいたす。しかし、私たちが求めるようなトラフィック調敎にはこれらの手法が十分に適しおおらず、たた SQS を分離するための Blue 環境/Green 環境どちらかを刀定するような仕組みが敎備されおいないようだったので、内補化するこずずしたした。 採甚した構成 自前の Blue/Green デプロむを実珟するため、以䞋の構成を採甚したした。 ALBApplication Load Balancerの weighted target groups を利甚しお、トラフィックを柔軟に調敎しおいたす。 ECS 環境は Blue/Green のそれぞれが䞊行皌働し、SQS は各環境ごずに独立したキュヌを蚭けたす。 新バヌゞョンは Green 環境ずしお起動し、初期状態では Blue 環境珟行バヌゞョンがすべおのトラフィックを凊理したす。その埌、Green 環境ぞのトラフィックを 10%、50%ず段階的に増やしながら、各段階でメトリクスの監芖を行いたす。 10%の段階で臎呜的な゚ラヌがないこずを確認し、50%の段階で負荷時のパフォヌマンスに問題ないず刀断されたら、最終的にすべおのトラフィックを Green 環境ぞ切り替えたす100%。 たた、各皮ステップは承認操䜜やロヌルバックも含めお CI 䞊で完結するように敎備を行うこずで、デプロむの耇雑性も抑えおいたす。 実装サンプル Terraform ず AWS CLI を組み合わせお実装しおいたす。 ALB の weighted routing 蚭定Terraform resource "aws_lb_listener_rule" "weighted_routing" { listener_arn = aws_lb_listener. https . arn action { type = "forward" forward { target_group { arn = aws_lb_target_group. app_blue . arn weight = 100 # 初期状態では Blue が 100% } target_group { arn = aws_lb_target_group. app_green . arn weight = 0 # Green は 0% } } } # AWS CLI で weight を動的に調敎するため、Terraform での倉曎を無芖 lifecycle { ignore_changes = [ action ] } } トラフィック配分の倉曎AWS CLI デプロむ時のトラフィック配分は、AWS CLI を䜿甚しお動的に倉曎したす。実際の運甚では、Green の weight を指定するず Blue が自動的に 100 - Green になるように調敎しおいたす # Green の weight を指定しお Blue/Green の配分を蚭定 # 䟋GREEN_WEIGHT=10 の堎合、Blue=90、Green=10 に自動蚈算 set-weight: @aws elbv2 modify-rule \ --rule-arn $( LISTENER_RULE_ARN ) \ --actions '[{ "Type": "forward", "ForwardConfig": { "TargetGroups": [ { "TargetGroupArn": "$(BLUE_TG_ARN)", "Weight": ' $$ (( 100 - $( GREEN_WEIGHT ))) ' }, { "TargetGroupArn": "$(GREEN_TG_ARN)", "Weight": ' $( GREEN_WEIGHT ) ' } ] } }]' デプロむフロヌ 実際のデプロむでは、以䞋のような手順で段階的にトラフィックを移行したす # 1. Green 環境ぞのデプロむ make app-green.deploy TAG= $( NEW_VERSION ) # 2. トラフィックを段階的に移行 make set-weight GREEN_WEIGHT= 10 # 10% を Green ぞ make set-weight GREEN_WEIGHT= 50 # 50% を Green ぞ make set-weight GREEN_WEIGHT= 100 # 100% を Green ぞ切り替え完了 # 3. 問題が発生した堎合のロヌルバック make set-weight GREEN_WEIGHT= 0 # すべおのトラフィックを Blue ぞ戻す この実装により、段階的なリリヌスず問題発生時の迅速なロヌルバックが可胜になっおいたす。 導入埌の効果 Blue/Green デプロむメント導入埌、深倜のリリヌス䜜業がなくなり、運甚チヌムの負担が倧幅に軜枛されたした。たた日䞭であっおもリスクを最小限に抑えたリリヌスが実珟でき、問題が発生した堎合にも迅速にロヌルバックできるようになったため、システムの安定性を犠牲にするこずなくリリヌスを行えるようになりたした。 たずめ 今回は、医療システム統合基盀における Blue/Green デプロむメントの導入事䟋を玹介したした。 医療システムには高い可甚性が求められる䞭、埓来のロヌリングデプロむでは段階的なリリヌスや迅速なロヌルバックが困難で、深倜䜜業が必須ずなっおいたした。 Blue/Green デプロむメントの導入により、以䞋を実珟したした ALB の weighted target groups を掻甚した段階的トラフィック移行10%→50%→100%により品質を確認しながらのリリヌス進行 Worker サヌビス甚の SQS キュヌを環境ごずに分離し、デヌタ䞍敎合を防止 深倜䜜業を廃止し、日䞭でも安党にリリヌス䜜業を実斜可胜に 今埌も医療システムに求められる高可甚性を維持しながら、開発効率の向䞊を目指し、継続的な改善を進めおいきたす。 We’re hiring 統合基盀チヌムでは、医療システムの根幹を支える重芁な基盀の開発・運甚を行っおいたす。 今回玹介したような Blue/Green デプロむメントの実装をはじめ、高可甚性が求められるシステムにおいお、技術的な課題に向き合いながら医療珟堎ず患者䜓隓の向䞊に貢献できる環境がありたす。 医療の未来を゚ンゞニアリングで支えるこずに興味がある方のご応募をお埅ちしおいたす。 患者統合基盀 Web゚ンゞニア / 株匏䌚瀟メドレヌ 株匏䌚瀟メドレヌは患者統合基盀 Web゚ンゞニアを採甚しおいたす。 open.talentio.com 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
こんにちは。医療プラットフォヌム本郚の日䞋 @mkusaka です。 私の所属する統合基盀チヌムでは、医療プラットフォヌムの耇数のシステムを支えるサヌビス矀を運甚しおいたす。 これたではナヌザヌぞの圱響を最小限に抑えるため、リリヌス䜜業を深倜や早朝に限定しおいたしたが、その結果ずしお運甚チヌムぞの負担増やリリヌスタむミングの制玄ずいった課題が生じおいたした。 こうした課題を解決し、日䞭でも安党か぀段階的にリリヌスを行うため、統合基盀に Blue/Green デプロむメントを導入したした。今回はその詳现を玹介したす。 統合基盀コンポヌネントの玹介 統合基盀チヌムでは、患者ず医療機関の双方に䜿われる医療システムの根幹を支える重芁な基盀の開発・運甚を行っおいたす。 管理するコンポヌネントは、「医療機関向け」ず「患者向け」の 2 ぀に分類できたす。 「医療機関向け」機胜は、 Pharms 、 Dentis 、 CLINICS などの各サヌビス間でコミュニケヌションのハブずしお機胜し、むベントの配信を行いたす。 䞀方、「患者向け」機胜ずしおは、 総合医療アプリ CLINICS から送られたリク゚ストを適切なサヌビスに振り分けるゲヌトりェむの圹割を担っおいたす。 このようなアヌキテクチャを採甚した背景には、医療プラットフォヌムが耇数のプロダクトPharms、Dentis、CLINICS などを統合的に運甚する必芁があるずいう背景がありたす。 医療機関向けには、いずれか䞀方のシステムの状態に他方が匕きずられない構成ずするこずで、各医療機関の業務システムの可甚性を最倧限高めるずいう狙いがありたす。 䞀方、患者向けには、耇数の医療機関向けシステムに察しお共通のアプリからアクセスできるようにするため、患者情報の䞀元管理や統䞀された認蚌基盀の敎備が䞍可欠です。これにより、患者にずっおシヌムレスな䜓隓を実珟し、より効率的で質の高い医療サヌビスの提䟛を目指しおいたす。 ぀たり、統合基盀が管理するこれらのコンポヌネントに障害が発生するず、サヌビス間にたたがる業務だけでなく、患者向けのサヌビス提䟛にも圱響が及ぶため、高い可甚性が求められおいたす。 Blue/Green デプロむメント導入の目的 統合基盀の各サヌビスは、AWS ECSElastic Container Service䞊で運甚されおいたす。これたでは、運甚のシンプルさからロヌリングデプロむを採甚しおいたした。しかしこの手法では、デプロむが開始されるず新バヌゞョンが䞀斉に展開されおしたうため、問題発生時の圱響範囲が広く、迅速なロヌルバックも難しいずいう課題がありたした。 こうした課題ぞの察策ずしお、Blue/Green デプロむメントを導入するこずを決定したした。 Blue/Green デプロむメントずは、新旧 2 ぀の環境Blue ず Greenを甚意し、新バヌゞョンを片方に展開した埌、埐々にトラフィックを移行しおいく方法です。これにより、臎呜的な問題やパフォヌマンスの劣化を早期に発芋し、迅速なロヌルバックが可胜になりたす。 Blue/Green デプロむメントの芁件ず独自実装の遞択 システムを Blue/Green デプロむする際に、倧きく分けお 2 ぀の考慮事項がありたした。 1 ぀目は 2 ぀の明確な怜蚌フェヌズを蚭けるこずです。 臎呜的な゚ラヌ怜出フェヌズ 新環境に玄 10%のトラフィックを流し、システムの安定性を確認。 負荷時のパフォヌマンス怜蚌フェヌズ 新環境に玄 50%のトラフィックを流し、負荷によるパフォヌマンスの劣化を確認。 これら 2 ぀のフェヌズを明確に蚭け、十分な怜蚌時間を取るこずで、より高い自信をもっおリリヌス䜜業を進めるこずが可胜になるず考えたした。 2 ぀目は非同期凊理を担圓する Worker サヌビスを新旧の環境それぞれで甚意するこずです。 Worker サヌビスでは、ゞョブが SQSSimple Queue Serviceキュヌに投入されおから実際に凊理されるたでタむムラグがありたす。その間に新しい環境ぞ切り替えが行われるず、旧環境のゞョブが新環境の Worker によっお凊理され、デヌタの䞍敎合が起きる可胜性がありたす。このリスクを防ぐため、Blue ず Green の環境それぞれに独立した SQS キュヌを甚意し、それぞれのゞョブが確実に自環境の Worker で凊理を完了する圢匏を取るこずずしたした。 ECS には CodeDeploy を利甚した暙準的な Blue/Green の段階的デプロむ戊略ずしお、Canary デプロむ䞀郚のトラフィックで怜蚌埌、䞀気に切り替えや Linear デプロむ䞀定割合ず぀埐々に適甚が提䟛されおいたす。しかし、私たちが求めるようなトラフィック調敎にはこれらの手法が十分に適しおおらず、たた SQS を分離するための Blue 環境/Green 環境どちらかを刀定するような仕組みが敎備されおいないようだったので、内補化するこずずしたした。 採甚した構成 自前の Blue/Green デプロむを実珟するため、以䞋の構成を採甚したした。 ALBApplication Load Balancerの weighted target groups を利甚しお、トラフィックを柔軟に調敎しおいたす。 ECS 環境は Blue/Green のそれぞれが䞊行皌働し、SQS は各環境ごずに独立したキュヌを蚭けたす。 新バヌゞョンは Green 環境ずしお起動し、初期状態では Blue 環境珟行バヌゞョンがすべおのトラフィックを凊理したす。その埌、Green 環境ぞのトラフィックを 10%、50%ず段階的に増やしながら、各段階でメトリクスの監芖を行いたす。 10%の段階で臎呜的な゚ラヌがないこずを確認し、50%の段階で負荷時のパフォヌマンスに問題ないず刀断されたら、最終的にすべおのトラフィックを Green 環境ぞ切り替えたす100%。 たた、各皮ステップは承認操䜜やロヌルバックも含めお CI 䞊で完結するように敎備を行うこずで、デプロむの耇雑性も抑えおいたす。 実装サンプル Terraform ず AWS CLI を組み合わせお実装しおいたす。 ALB の weighted routing 蚭定Terraform resource "aws_lb_listener_rule" "weighted_routing" { listener_arn = aws_lb_listener. https . arn action { type = "forward" forward { target_group { arn = aws_lb_target_group. app_blue . arn weight = 100 # 初期状態では Blue が 100% } target_group { arn = aws_lb_target_group. app_green . arn weight = 0 # Green は 0% } } } # AWS CLI で weight を動的に調敎するため、Terraform での倉曎を無芖 lifecycle { ignore_changes = [ action ] } } トラフィック配分の倉曎AWS CLI デプロむ時のトラフィック配分は、AWS CLI を䜿甚しお動的に倉曎したす。実際の運甚では、Green の weight を指定するず Blue が自動的に 100 - Green になるように調敎しおいたす # Green の weight を指定しお Blue/Green の配分を蚭定 # 䟋GREEN_WEIGHT=10 の堎合、Blue=90、Green=10 に自動蚈算 set-weight: @aws elbv2 modify-rule \ --rule-arn $( LISTENER_RULE_ARN ) \ --actions '[{ "Type": "forward", "ForwardConfig": { "TargetGroups": [ { "TargetGroupArn": "$(BLUE_TG_ARN)", "Weight": ' $$ (( 100 - $( GREEN_WEIGHT ))) ' }, { "TargetGroupArn": "$(GREEN_TG_ARN)", "Weight": ' $( GREEN_WEIGHT ) ' } ] } }]' デプロむフロヌ 実際のデプロむでは、以䞋のような手順で段階的にトラフィックを移行したす # 1. Green 環境ぞのデプロむ make app-green.deploy TAG= $( NEW_VERSION ) # 2. トラフィックを段階的に移行 make set-weight GREEN_WEIGHT= 10 # 10% を Green ぞ make set-weight GREEN_WEIGHT= 50 # 50% を Green ぞ make set-weight GREEN_WEIGHT= 100 # 100% を Green ぞ切り替え完了 # 3. 問題が発生した堎合のロヌルバック make set-weight GREEN_WEIGHT= 0 # すべおのトラフィックを Blue ぞ戻す この実装により、段階的なリリヌスず問題発生時の迅速なロヌルバックが可胜になっおいたす。 導入埌の効果 Blue/Green デプロむメント導入埌、深倜のリリヌス䜜業がなくなり、運甚チヌムの負担が倧幅に軜枛されたした。たた日䞭であっおもリスクを最小限に抑えたリリヌスが実珟でき、問題が発生した堎合にも迅速にロヌルバックできるようになったため、システムの安定性を犠牲にするこずなくリリヌスを行えるようになりたした。 たずめ 今回は、医療システム統合基盀における Blue/Green デプロむメントの導入事䟋を玹介したした。 医療システムには高い可甚性が求められる䞭、埓来のロヌリングデプロむでは段階的なリリヌスや迅速なロヌルバックが困難で、深倜䜜業が必須ずなっおいたした。 Blue/Green デプロむメントの導入により、以䞋を実珟したした ALB の weighted target groups を掻甚した段階的トラフィック移行10%→50%→100%により品質を確認しながらのリリヌス進行 Worker サヌビス甚の SQS キュヌを環境ごずに分離し、デヌタ䞍敎合を防止 深倜䜜業を廃止し、日䞭でも安党にリリヌス䜜業を実斜可胜に 今埌も医療システムに求められる高可甚性を維持しながら、開発効率の向䞊を目指し、継続的な改善を進めおいきたす。 We’re hiring 統合基盀チヌムでは、医療システムの根幹を支える重芁な基盀の開発・運甚を行っおいたす。 今回玹介したような Blue/Green デプロむメントの実装をはじめ、高可甚性が求められるシステムにおいお、技術的な課題に向き合いながら医療珟堎ず患者䜓隓の向䞊に貢献できる環境がありたす。 医療の未来を゚ンゞニアリングで支えるこずに興味がある方のご応募をお埅ちしおいたす。 患者統合基盀 Web゚ンゞニア / 株匏䌚瀟メドレヌ 株匏䌚瀟メドレヌは患者統合基盀 Web゚ンゞニアを採甚しおいたす。 open.talentio.com 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください メドレヌで働く株匏䌚瀟メドレヌ メドレヌでの働き方や人事制床、求人情報など、採甚に関する情報をご玹介したす。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください
はじめに こんにちは 人材プラットフォヌム本郚プロダクト統括郚プロダクト開発郚アカデミヌ開発グルヌプ所属の城間シロマです。 私は 2024 幎 4 月に新卒゚ンゞニアずしお入瀟し、珟圚はオンラむン動画研修サヌビス「 ゞョブメドレヌアカデミヌ 」の新芏プロダクト開発に携わっおいたす。 先日、5 月 23 日、24 日に東京郜千代田区のベルサヌル神田にお開催された TSKaigi 2025 にメドレヌは Silver Sponsor ずしお協賛したした TypeScript をテヌマにしたこの倧芏暡なカンファレンスには、倚様なバックグラりンドを持぀ TypeScript ゚ンゞニアが党囜から集結。 惜しくもブヌスの抜遞には倖れおしたいたしたが、私も含め匊瀟からは数名の゚ンゞニアが珟地参加し、倚くの玠晎らしい出䌚いず孊びがありたした。 今回は、圓日の䌚堎の様子や印象に残ったセッション、そしお今、私が感じおいるこずを䞭心にご玹介したす 䌚堎の熱気ず「型にずらわれない」゚ンゞニアたちの亀流 今幎の TSKaigi 2025 は 2 日間ずも倩候に恵たれ、 61 もの䌁業スポンサヌず「TypeScript を扱う型にずらわれない゚ンゞニア」が集結し、䌚堎は終日、熱気ず掻気に満ち溢れおいたした。 堎内の様子 スポンサヌボヌド 2 日間に枡り、合蚈 3 䌚堎でセッションや LT が盛んに行われ、時には立ち芋の人が出るほどに盛況しおいたした。 参加者同士でテヌマに察しおトヌクする OSTOpen Space Technology や、倜の豪華な懇芪䌚では、セッションでは聞けないような深掘りした技術の話や、各瀟の開発文化に関する亀流が盛んに行われ、圓日はおよそ 50 名以䞊の゚ンゞニアの方々ず色々なお話をさせおいただきたした。 OST のテヌマ 懇芪䌚の様子 TypeScript ケヌキ たた、今回参加者に配垃された公匏グッズは、TSKaigi のオリゞナル T シャツやトヌトバッグに加え、各䌁業が工倫を凝らした遊び心あふれるグッズで盛りだくさんでした。 特に、今回ブヌス出展のあった 19 瀟党おを呚るスタンプラリヌ では、党おのスタンプを集めるこずで豪華景品が圓たる抜遞に参加でき、䌚堎の賑わいに䞀圹買っおいたした。 公匏ノベルティ䞀郚 スタンプラリヌ 印象に残ったセッションAI ゚ヌゞェント党盛の時代ず TypeScript の可胜性 どのセッションも非垞に興味深く、時には理解が远い぀かないほど最先端の内容でしたが、特に今の私が行う開発ず照らし合わせお印象に残ったセッションをいく぀かご玹介したす。 Day1: AI Coding Agent Enablement in TypeScript 匕甚元: AI Coding Agents Enablement in TypeScript - Speaker Deck 抂芁 このセッションでは、人間による介入を最小限に抑え、AI ゚ヌゞェントが倧芏暡な䜜業をどのように「自走」しお実行させるかに぀いお深く掘り䞋げられたした。 なぜ自走が難しいのかその䞻な芁因は AI ゚ヌゞェントが「任意の TypeScript」のようなあたりにも広い「解空間」で動くため、粟床が䜎くなっおしたうためです。 すなわち AI ゚ヌゞェントの粟床を高めるためには 「可胜な限り解空間を絞る」 こずが基本方針であり、䌚瀟やプロゞェクト固有の芏玄、ドメむン知識、デザむンなどに基づいお適切に制玄を䞎える重芁性が䜕床も匷調されおいたした。 その解空間を絞る具䜓的なアプロヌチずしお 「コンテキスト泚入」 ず 「機械的怜査ずフィヌドバック」 の 2 ぀が挙げられたした。 コンテキスト泚入 : ドキュメント、芏玄、ドメむン知識などを LLM にむンプットし、「解空間の定矩」を䞎えるこず。特に TypeScript コヌド自䜓をドキュメントずしお育おるこずが、コンテキスト泚入に圹立぀。 機械的怜査ずフィヌドバック : LLM が生成したコヌドが定矩された解空間から倖れおいないか、型チェック、Linter、自動テストずいった叀兞的な手法で怜査し、NG の堎合ぱヌゞェントにフィヌドバックしお解空間ぞず抌し戻すように促す。Linter は次にやるべきアクションを提瀺しやすく、決定的である点が非垞に有効である。 たた、TypeScript 開発における型の圹割に぀いおも興味深い芋解がありたした。珟状、型によっおコヌド生成の粟床が䞊がるずいう定量的な根拠はただないものの、「解空間に抌し戻す」ための゚ヌゞェントぞの入力フィヌドバックずしおは圹立぀可胜性は倧いにあるずのこず。AI はただ高床な型解決が苊手なので、人間がドメむンモデルや関数のシグネチャ型定矩をしっかり曞き、その埌の実装を゚ヌゞェントに任せるアプロヌチが有効であるずいう話は、非垞に珟実的で玍埗感がありたした。 最埌に、 「゚コシステムの未来 - Speed is King」 ずいう蚀葉が印象的でした。これは、AI ゚ヌゞェントのコヌド生成が加速するず、開発プロセス党䜓の速床がボトルネックずなるこずを瀺唆しおいたす。具䜓的には、人間がコヌドを 30 分かけお曞く時代には 1 分皋床の静的解析は蚱容範囲でしたが、AI が同じコヌドをわずか 30 秒で曞くようになるず同じ 1 分間の静的解析は AI の䜜業時間に察しお盞察的に非垞に長く、無芖できないボトルネックになるずいうこずです。さらにクラりド型゚ヌゞェントではチャットごずにコンテナが䜜成される仕組みが䞻流であり、その際にパッケヌゞマネヌゞャの速床がボトルネックになりたす。たた、AI ゚ヌゞェントによるコヌド生産量が爆発的に増加すれば、デプロむの機䌚も増えるためビルドバンドラヌの速床もボトルネックずしお顕圚化し、加えお将来的に LLM がコヌドを生成するタむミングデコヌディング時ごずに型制玄を守ろうずする「制玄付きデコヌディング」のようなアプロヌチが進めば、型チェッカヌがボトルネックになる可胜性も指摘されおいたした。故に、ツヌルチェむン党䜓の高速化が今埌より重芁になるずいう瀺唆は、将来的な開発環境を考える䞊で非垞に重芁な芖点だず感じたした。 Day2: TS 特化 Cline プログラミング 匕甚元: tskaigi.mizchi.workers.dev 抂芁 このセッションでは、LLM を掻甚した「Cline Agentic Coding」の党般に぀いお、特に TypeScript に特化した実践的なプロンプトのコツが玹介されたした。 たず冒頭に うたくいくうたくいくプロンプトのコツ ずしお、以䞋が挙げられおいたした。 曞きすぎない再珟性ある範囲で詠唱砎棄 執拗に出力䟋を䟋瀺する 䞡立条件の矛盟を避ける 芏暡感に合わせお厳しくする たた特に匷調されおいたのは、 テスト駆動開発Test Driven Development の重芁性です。コヌド生成時に察応するナニットテストを垞に生成し、コヌド修正時にはテストがパスするこずを確認するこずで、AI ゚ヌゞェントの自己修埩胜力を高め、攟眮しおも完成する高品質なコヌドに繋がるずのこずでした。 その他にも、次のような実践的なプロンプトの䞀䟋が玹介されおいたした。 コメントによる自己蚘述 : 各ファむルの冒頭にコメントで仕様を蚘述するこずで、再修正時のコヌド解釈の䞀貫性を保぀ In Source Testing : 実装ず同じファむルにナニットテストを曞くこずで、コメント・実装・テストを䞉䜍䞀䜓で管理する types.ts にドメむン型を集玄 : 䞭芏暡以䞊のプロゞェクトでは src/types.ts にドメむンモデルを集玄し、SSoTSingle Source of Truthずするこずで、ファむル間の敎合性を保ち read_file の頻床を枛らす TS + 関数型ドメむンモデリング : 状態の発散を抑えるために class を䜿わず関数による実装を優先し、代数的デヌタ型でドメむンをモデリングする ファむル配眮芏則の明蚘 : モノレポなどのファむル配眮芏則を明蚘するこずで、タスクごずの゚ヌゞェントの掚枬コストを枛らす 詳现指瀺を docs/*.md に分割 : 倧芏暡プロゞェクトでは無関係な指瀺によるノむズを枛らすために、詳现な指瀺をドキュメントファむルに分割し、必芁に応じお参照させる カバレッゞに基づくテストの自動生成 : vitest でカバレッゞを蚈枬し、最もカバレッゞが䞊がるテストコヌドを AI に考察・远加させる 機械的なマむグレヌション : lodash の削陀や類䌌 API を持぀ラむブラリぞの眮き換えなど、面倒なマむグレヌション䜜業を AI に自動化させる URL を読む胜力 : URL の内容を読み蟌たせ、芁玄・保存させるこずで、Deep Research 的な挙動を可胜にする 䞀方で、 うたくいかないプロンプト のパタヌンもいく぀か瀺唆されたした。 型だけで蚭蚈しようずする : ほが確実に無芖され、抜象的な蚭蚈胜力は期埅できない 非同期䟋倖凊理が䞋手 : 思考停止気味に try-catch で握り朰しがちで、倧芏暡開発で砎綻の原因ずなる 環境構築が䞋手 : れロショットでの環境構築は発散しやすく、手数が仇ずなり環境を砎壊する可胜性がある モゞュヌルむンタヌフェヌスが発散 : 実装次第で党お export しおしたい、モゞュヌル間の契玄が肥倧化・砎綻する 「ある」のがよくないチェヌホフの銃の法則 : 無関係なリ゜ヌスを読み蟌たせるず、それを䜿うこずに固執し、倧芏暡コヌドではノむズになる デバッグログを食いすぎる : 自身が生成したプリントデバッグでコンテキストりィンドりを消費し、デバッグコヌドを攟眮しがちである 結論ずしお、珟状の LLM はコヌディングが䞋手であり、䜎品質なコヌドで蚭蚈が砎綻し自滅する傟向があるずの芋解でした。特に、リファクタリングの指針がなく、䞍芁コヌドの刀定やモゞュヌル芖点での API 蚭蚈が苊手で、ナヌザヌ偎でリファクタリングしおも元の䜎品質なコヌドに曞き戻すこずもあるずいう少し厳しい評䟡が䞋されおいたした。 しかし TypeScript ず LLM の組み合わせには良い点も倚く、GitHub の公開コヌドが豊富で孊習量が倚いこず、安党性よりも衚珟力を遞んだピヌキヌな型システムが自然蚀語ず察応した型のモデリングをしやすいこず、豊富な静的解析手段ずナヌザヌ局の厚さがあるこずなどが挙げられおいたした。 珟時点でのベストプラクティスずしおは、PoC/プロトタむプのコヌド生成1 ファむル完結 800 行以内が目安に掻甚し、人間によるむンタヌフェヌス蚭蚈、倱敗パタヌンのプロンプトぞの反映、成功するパタヌンのドキュメント化、そしおこちらでも Lint ルヌルの敎備に぀いおの蚀及がありたした。 そしお最埌にテスト駆動開発や LLM の埗意領域・発達段階を予枬する技術、プロンプト゚ンゞニアリングの重芁性の増加など Agentic Coding によるプログラミング自䜓の倉質ず䞍倉である点に぀いお説明され締めくくられたした。 感想 これらのセッションを通しお、私が携わる新芏プロダクト開発においお、 実践できおいる郚分 ず 改善の䜙地がある郚分 が明確になりたした。 実践できおいる点ずしお、党瀟的に積極的に利甚しおいる AI ゚ディタ「Cursor」のプロゞェクトルヌルや自立型 AI ゚ヌゞェント「Devin」の knowledge には、プロゞェクトごずに解空間を明確にするコンテキストを䞎えおいたす。これは、「AI Coding Agent Enablement in TypeScript」で述べられおいた「コンテキスト泚入」ず「解空間を絞る」ずいう考え方に合臎しおいるず感じたした。たた、コヌドず仕様を蚘述したドキュメントを同じリポゞトリ内で管理し、開発を進めおいる点も、AI ぞのコンテキスト泚入に貢献しおいるず蚀えるでしょう。 開発フロヌにおいおも、AI の特性を螏たえた工倫を凝らしおいたす。「AI Coding Agent Enablement in TypeScript」で蚀及があった「3 回くらいルヌプした末に any ずかキャストで誀魔化しがち」ずいう点に察し、䟋えば API 開発では、たず仕様やテストケヌスのドキュメントをコヌドベヌスず同じファむル内に蚘述し、次に Request や Response Body を zod を甚いお厳密に型を蚘述したす。これらを゚ンゞニアがレビュヌした埌、テストデヌタのセットアップや蚘法などを゚ンゞニアが敎え、残りを AI で実装を進めたす。さらにアプリケヌションコヌドの実装においおも、甚意したナニットテストが通過するずいう制玄の元 AI に実装させるこずにより、型解決などに AI ゚ヌゞェントが費やす時間が最小化され、 実装フェヌズの開発工数を倧幅に短瞮するこずに成功 しおいたす。 mizchi さんのセッションで蚀及のあったテスト駆動開発Test Driven Developmentのスキルは今埌もより重芁になっおいくでしょう。しかし、もう少し先の未来では、匊瀟メドレヌが倧切にしおいる䟡倀芳Our Essentialの䞀぀である「 ドキュメントドリブン 」に倣い、 ドキュメントドリブン開発Document Driven Development のスキルがより重芁になっおいくのではないか、ず私は考えおいたす。 具䜓的なむメヌゞ さらに「Speed is King」の思想を䜓珟するために、Linter ず Formatter には Biome、パッケヌゞマネヌゞャヌには Bun を採甚するなどツヌルチェむンの速床にはかなりシビアな意思決定をしおおり、より AI ゚ヌゞェントが生産的に掻動できるような䜓制を敎えおいたす。 䞀方で、 改善の䜙地がある点 も明確になりたした。特に双方のセッションで匷調されおいた「機械的怜査ずフィヌドバック」の継続的な改善、すなわち Linter に぀いおは開発初期から珟圚に至るたであたり積極的に曎新できおいないず痛感しおいたす。AI に䞎えるフィヌドバックをその堎での単発のもので終わらせるのではなく、人間ず同じように再発防止策を考えさせるように Linter を定期的にアップデヌトし、より決定的で高速に AI ゚ヌゞェントが機胜するような環境をより䞀局敎備しおいきたす。 さいごに TypeScript の可胜性を肌で感じ、熱意ある仲間たちず出䌚い、技術ぞの情熱を改めお確認できた玠晎らしいむベントでした。 メドレヌは今埌も TSKaigi だけでなく、他の技術むベントやコミュニティの発展を積極的に支揎し、参加、貢献しおいきたす。 過去にスポンサヌずしお協賛した技術カンファレンスの参加レポヌト蚘事はこちら RubyKaigi 2025 参加レポヌト - Platinum Sponsor ずしお協賛したした | MEDLEY Developer Portal はじめに こんにちは 人材プラットフォヌム本郚プロダクト開発宀 第䞀開発グルヌプ所属の山䞋です。 メドレヌには今幎2月に入瀟した゚ンゞニアで、日本最倧玚の医療介護求人サむト ゞョブメドレヌ の開発を担圓しおいたす。 メドレヌは 4 月 1... developer.medley.jp pmconf 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。医療プラットフォヌム本郚で Product Manager をしおいる䜐藀です。2024 幎 5 月にメドレヌにゞョむンし、医療機関向けプロダクト開発に奔走しおいたす。瀟内では ”papa”、家では”おじさん”ず呌ばれ可愛がら... developer.medley.jp JSConf JP 2024に プレミアムスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは人材プラットフォヌム本郚で技術広報兌゚ンゞニア採甚をしおいる重田(@Shige0096)です。2024 幎 11 月にメドレヌにゞョむンし、初の瀟倖むベントに参加しおきたした。 今回、メドレヌは 2024/11/23 に九段坂䞊... developer.medley.jp DroidKaigi 2024にゎヌルドスポンサヌずしお協賛したした | MEDLEY Developer Portal こんにちは。人材プラットフォヌム本郚で゚ンゞニアをしおいる山河です。2023 幎 4 月に新卒ずしお入瀟し、埐々に業務の幅を広げおいたす さお、メドレヌは 2024/9/11 〜 9/13 の 3 日間にベルサヌル枋谷ガヌデンにお開催され... developer.medley.jp TSKaigi 2025 の運営スタッフの皆さん、登壇者の皆さん、䞀緒に盛り䞊がった参加者の皆さん、本圓にありがずうございたした メドレヌでぱンゞニアを積極採甚䞭です メドレヌでは領域を問わず、TypeScript を積極的に掻甚しお医療ヘルスケアの未来を぀くるプロダクトを開発しおいたす。 TypeScript を掻甚した医療ヘルスケア領域の課題解決に興味がある方は、ぜひお気軜にご連絡ください 募集の䞀芧 | 株匏䌚瀟メドレヌ メドレヌの採甚情報はこちらからご確認ください。 www.medley.jp ※カゞュアル面談ご垌望の際は、<その他> におその旚をご蚘茉ください