はじめに
記事を開いていただきありがとうございます!
現在私は、GitHub Copilotを活用しながら、業務効率化や社内改善のためのWebアプリ開発に取り組んでいます。
本記事ではその中のひとつ、AI人事評価管理システムを作ってみての学びを共有します。
ぜひご覧ください!
※動画もあります!
目次
開発の背景と使った技術
開発の背景
私は現在、新卒1年目のメンバーの 目標設定や振り返りのフォロー に関わっています。
この取り組みの中で、次のような場面をよく目にしました。
- 何を書けばいいのか分からない
- どう考えればいいのか分からない
- 書き始めるまでに時間がかかる
その様子を見て、
「考え始める前のハードルが少し高いのでは?」
と感じるようになりました。
「目標設定時や振り返り時に、こんな機能があったらもう少し楽になりそう」
そんな発想をもとに、このアプリを作り始めました。
技術スタック
- フロント: React 18 + Vite
- UI / スタイル: Tailwind CSS
- AI: Google Gemini API
- データ保存: localStorage(検証用)
- 認証: Google OAuth
- GitHub Copilot: 実装補助
アプリの概要
アプリの流れ
- ユーザーが目標を入力
- AIがSMART形式を意識した目標案を生成
- 四半期ごとに進捗・振り返りを入力
- AIが四半期レビュー文を生成
- 年間評価時に、AIが総評コメントを生成
- ユーザーが最終確認・修正して提出
AIを補助役として活用し、人が考えることを前提とした設計にしています。
目標生成
自己評価からサマリー生成
評価管理者・システム管理者画面
権限・ロール設計の壁と工夫
今回のアプリ開発で一番悩んだのは、ユーザーごとの権限・ロール設計でした。
人事評価系のアプリでは、
- 誰がどこまで閲覧できるのか
- 誰が編集できるのか
- 誰が最終的に確定させるのか
といった制御がとても重要になります。
1. 権限設計はUIと強く結びついている
- ボタンを表示していいのか
- 入力欄は編集可能にするのか
- 閲覧専用にするのか
といった判断が、
画面・項目単位で必要になりました。
結果として、
「どのロールで、どの状態のときに、何ができるか」
を整理することに一番時間を使いました。
2. 要件の曖昧さがそのまま手戻りになる
特に今回は GitHub Copilot を活用した開発 だったこともあり、
初期段階での要件整理の重要性を強く感じました。
権限やロールに関する要件を、
初期プロンプトで「なんとなくこんな感じ」とふわっと伝えてしまったことで、
- 想定と少し違う実装が出てくる
- 後から条件を足すたびに修正が増える
- 結果として手戻りが多く発生する
といったことが起きました。
要件が曖昧なまま進めると、その曖昧さをそのまま拡大してしまうと痛感しました。
最後に
今回、実際にアプリを作ってみたことで、
- どこを改善すればよくなりそうか
- どこが使いにくくなりやすいか
が少しずつ見えてきました。
これからアップデートを重ね、より使いやすく、
現場にの要望にあったアプリにできたらいいなと思っています。
この記事が「自分も何か作ってみようかな」と思うきっかけになれば嬉しいです!
最後までご覧いただき、ありがとうございました!!


