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

新卒目線で感じたAIレビュー機能開発の学びと課題

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for kuracchi kuracchi
November 15, 2025
520

 新卒目線で感じたAIレビュー機能開発の学びと課題

Avatar for kuracchi

kuracchi

November 15, 2025
Tweet

Transcript

  1. • コードの理解やドメイン知識が少ない • チームにジョインして2ヶ月 • プロダクトコードの理解が浅い • 何がわからないのかを言語化する苦労 • 技術レベルが高かったり、ドメイン知識が必要な議論に着いていけない

    • 分からないから参加出来ないが、何が分からないかも上手く言語化ができない 課題:実装開始時はわからないことだらけ 14 学び①:認識のズレを防ぐ具体化
  2. • サーバーサイドの実装 • 〇〇package配下に△△Serviceの実装 • Publicメソッドはget()とset()を定義 • □□Controllerで△△Service.get()を呼び出す • クライアントサイドの実装

    • 「アプリ設定をレビュー」ボタンを〇〇.jsに実装 • レビュー依頼のrequestメソッドを実装 • ボタンのUIを実装 壁打ちの効果: • 実装前に方向性を確認できた • 自分の理解の曖昧な部分が明確になった 解決策:実装方針をチームメンバーに壁打ちしてもらう 16 学び①:認識のズレを防ぐ具体化
  3. 各設定のMarkdown生成をシンプルにするため、Markdown構築用のBuilderクラスを用意 前提:AIに渡すアプリ設定データを構築するためにMarkdownBuilderを実装 20 • 見出し作成 (header): 指定されたレベルの見出しを追加 • HeaderLevelでプレフィックス(#の数)を制御 •

    テキスト追加 (text): 通常のテキストを追加 • 箇条書き (uli): インデント付きの箇条書き項目を追加 • IndentLevelでインデント量を制御 • 改行 (newline): 明示的に改行を挿入 • ビルド (build): Markdownテキストを文字列として返す 学び②:設計で意識した責務分離と拡張性
  4. 責務分離の考え方とその効果 • 関心事に基づいて整理する • 単にコードを分割するのではなく、「何をする処理なのか」という関心毎で分ける • 抽象度のレベルを揃える • 全体構造では「何をしているか」を示し、詳細は別の場所に隠蔽する •

    変更の影響範囲を限定する • 1つの責務が明確になると、変更時に外の部分への影響を最小限に抑えられる 何を学んだのか 33 学び②:設計で意識した責務分離と拡張性
  5. • タスクの優先順位調整 • 何を基準に判断したか • 限られた時間での判断 • チーム全体として納得した状態で取り組むためのコミュニケーション • 新卒でも意見を気軽に伝えられる機会がある

    • 何を基準に取捨選択したのかは常にチーム全体に共有 解決策:タスクの優先順位を調整し、取り組むことを絞る 41 学び④:意思決定とコミュニケーション
  6. チームで認識を合わせながら機能の取捨選択をして開発を進めること • 意思決定プロセス • 新卒でも意見を言える環境 • 技術的な制約を踏まえた提案の仕方 • やらないことを決める判断 •

    理想の実現と工数のトレードオフ • 限られた時間での現実的な判断 何を学んだのか 42 学び④:意思決定とコミュニケーション
  7. • ユーザー視点を持つ • ユーザーが普段どのような状態で働いているのかを深く想像する • 認識を統一できる • 曖昧さを残さず、具体例を使って早期に認識のズレを解消する • コミュニケーションを円滑にできる

    • チーム内外で情報を透明にし、信頼関係を築きながらプロジェクトを進める ユーザーが満足するプロダクトを作れるエンジニアを目指す 46 今後の目標