Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI主導でFastAPIのWebサービスを作るときに 人間が構造化すべき境界線

AI主導でFastAPIのWebサービスを作るときに 人間が構造化すべき境界線

AIを使えば実装は速くなりました。しかし、開発が止まる瞬間は今も変わらず「判断できなくなったとき」です。本発表では、FastAPIによる実プロダクト開発(NecoKeeper)の経験をもとに、AI主導開発において人間が構造化すべき境界(データモデル、認証、業務ルール、E2Eの正解定義)について整理しました。静的解析・自動テストで守れるものと、人間が担うべき判断の違いを考えます。

PyCon mini Shizuoka 2026での登壇用スライド
https://shizuoka.pycon.jp/2026/
https://pycon-shizu.connpass.com/event/372943/

作ったプロダクト:https://devpost.com/software/necokeeper

Avatar for Jun okazaki

Jun okazaki

February 19, 2026
Tweet

More Decks by Jun okazaki

Other Decks in Programming

Transcript

  1. ⾃⼰紹介 名前: オカザキ (@dario_okazaki) • Web系エンジニア → PM(SE) • 過去個⼈開発したもの:Webサービス、アプリ、ノベルゲーム等 • 「⾃分はコードを書かない」縛りでハッカソンKiroween参加

    • 保護猫管理WEBアプリ「NekoKeeper」を開発 Pycon mini shizuokaでは過去 2020年に「Pythonでデスクトップアプリを簡単に作る⽅法」で登壇 2
  2. NecoKeeperの規模感 画⾯は31画⾯ DB はSQLiteで15テーブル コード⾏数 • Backend Python: 10K •

    フロンエンド:html 7K, JavaScript: 10K 主要技術 FastAPI / SQLAlchemy / Alembic / Pydantic Jinja2 / Vanilla JavaScript / SQLite Ruff / mypy / pytest / MCP / WeasyPrint 13
  3. Kiro / Kiroween について Kiro: Agentic AI開発を⽀援するIDE/CLI • SPEC とVibe

    Codingの使い分け Kiroween: Kiro活⽤を条件とする公式ハッカソン • 期間は2025/10/31〜2025/12/5 • NecoKeeperは提出作品(Devpost公開) 参照 • https://kiro.dev/ • https://kiroween.devpost.com/ 15
  4. 「認証実装のズレ」について 【Before】 • 画⾯単位で実装、 • 判定場所が分散 • 不整合発⽣ 【After】 •

    認証仕様を先に⽂書化 • ミドルウェア‧共通処理に集約 • 未認証時の遷移、レスポンスコードをまとめる 学び:認証は「実装で合わせる」のではなく「仕様を先に固定する」 24
  5. 「データ定義のズレ」について (例1 猫の区分) • 初期案(AI提案): ⼦猫 / 成猫 / ⽼猫 •

    現場ヒアリング: 外⾒で年齢判定は難しく運⽤上も粗い • 判断: ⽉齢中⼼の⼊⼒へ変更(必要時は推定フラグ) 学び: わかりやすさより、現場で意味があるか 25