「履歴書と職務経歴書が20通。全部読んで、スコアつけて、エージェントに返信して...」
採用担当なら一度は経験する書類の山。「この人、リーダー経験あるっけ?」と3回目に読み返す瞬間、ふと思うんです。「これ、人間がやる仕事なのか...?」
今回はCistree社の採用業務をAIで変えた受託開発プロジェクトの話です。Gemini API × Next.js で書類選考の自動化に挑みました。
プロジェクト概要
| 項目 | 内容 |
|---|---|
| クライアント | Cistree社(IT企業・人材採用強化中) |
| 開発形態 | playpark LLC による受託開発 |
| 開発期間 | 約1週間(2026年3月末〜4月初旬) |
課題:採用業務の「見えないコスト」
Cistree社は成長フェーズで積極採用中でしたが、採用プロセスには人の手に頼り切った部分が多く残っていました。
- 書類選考に時間がかかりすぎる: 経験年数やリーダー経験、PMO歴を1通ずつ確認。1人あたり15〜20分(時に30分)
- 評価基準が属人的: 上流工程重視かリーダー経験重視か担当者で違い、一貫した基準で比較できないのは質の問題でした
- 候補者情報が散らばっている: Excel、メール、Google Drive、エージェント連絡...「あの書類どこだっけ?」が頻発します
解決策:AI採用管理ダッシュボード
「AI自動化」と「一元管理」を両立する採用管理ダッシュボードを受託開発しました。
主要機能
| 機能 | 効果 |
|---|---|
| AI書類選考 | 履歴書・職歴をGeminiが読み取り定量スコア化 |
| 候補者一元管理 | 候補者情報・ステータスをダッシュボードで把握 |
| 多段階面接記録 | 相互理解→1次→2次→お茶会まで、評価を一気通貫で管理 |
| AI面接支援 | 合否判定レコメンドと連絡文案の自動生成 |
| タレントプール | 不採用候補者もカテゴリ別に管理し将来へ活用 |
Gemini APIの活用
AI書類選考の設計が核心です。単なるPDF OCRではなく「採用担当者の目」をAIに移植するチャレンジでした。
Geminiモデル選定理由
Gemini 2.5 Flash を採用した理由は3つ。
- マルチモーダル対応: PDF・画像をそのまま投げて抽出でき前処理が不要
- 構造化出力: 経験年数などを比較可能な数値データとして返す
- コスト: 1件あたりの処理コストが安く、数をこなす書類選考で差が出る
評価の4軸スコアリング
AIが書類から抽出するのは選考基準に合わせた4つの定量スコアです。
| 評価軸 | 内容 |
|---|---|
| リーダー経験 | チームリーダー経験の年数 |
| 下流工程 | 実装・テスト等の実務経験年数 |
| 上流工程 | 要件定義・設計の経験年数 |
| PMO経験 | PMO経験年数 |
AIは3〜5文の経歴サマリと詳細評価を自然言語で生成します。判断の起点は「ゼロから読む」から「AIの要約をレビューする」に変わりました。
AIの判定は人間が上書き
大事なのはAIの判定は「推奨」であって「決定」ではないこと。AIが3段階で提案した後、担当者が最終区分を記録します。AIが見落とすニュアンスを人間が拾うのが本質です。
技術構成
| 項目 | 採用技術 |
|---|---|
| フレームワーク | Next.js 16 / React 19 |
| データベース | PostgreSQL(Neon Serverless) |
| DB操作ツール | Prisma 7 |
| AI | Google Gemini API(gemini-2.5-flash) |
| ファイルストレージ | Google Drive API |
| 認証 | Neon Auth(OAuth)+ 招待制アカウント管理 |
| UI | shadcn/ui / Tailwind CSS 4 |
| デプロイ | Vercel |
構成の理由
Neon + Vercel は使った分だけ課金でスケールでき合理的。Prisma 7は複雑なデータ関係も安全に扱えます。招待制アカウント管理は個人情報保護のため招待リンク経由限定にしました。
開発プロセスと導入効果
開発スケジュール
初回コミットから本番稼働まで約1週間。
| フェーズ | 内容 | 期間 |
|---|---|---|
| 仕様策定 | 画面設計・DB設計・認証フロー設計 | 2日 |
| MVP開発 | 候補者CRUD・AI選考・面接記録 | 2日 |
| 改善サイクル | パフォーマンス最適化・UX改善・バグ修正 | 3日 |
パフォーマンス最適化
MVP完成後の「動きがもっさりする」というフィードバックを受け、プロファイリングでボトルネックが4つ見つかりました。
- 認証セッション:
get-sessionの応答383msをキャッシュTTL明示化で100ms以下に - バンドルサイズ: Google連携ライブラリ190MBを必要部分だけに置き換え削減
- データ取得: 候補者一覧の1件ずつ取得を並列取得に改修
- 全件取得: 評価・タレントプールの一括読み込みをページ分割・先読みに変更
「動きがもっさり」の一言から4つのボトルネックを特定して全部潰す。
定量的な成果
| 指標 | Before | After | 改善 |
|---|---|---|---|
| 書類選考(1名あたり) | 15〜20分 | 約2分(AIスコア確認 + 最終判断) | 約90%削減 |
| 評価基準の一貫性 | 担当者依存 | 4軸定量スコア | 標準化達成 |
| 候補者情報の検索 | Excel・メール・Driveを横断 | ダッシュボード一画面 | 即時アクセス |
定性的な成果
- 担当者の負荷軽減: 「読む」から「レビューする」作業に変わり判断に集中できるように
- 選考スピードの向上: AIが即座にスコアリングし候補者への返答が早くなった
- ナレッジの蓄積: 評価データが構造化されて残り振り返りに使える
まとめ
「全部読まなきゃ」のプレッシャーから解放されるだけで、採用担当の毎日はかなり変わります。
今回のシステムはGemini APIとNext.js 16を組み合わせた中小企業向けの採用管理システムです。playparkが技術支援し約1週間という短期間でMVPから本番運用まで立ち上げました。
AIは「判断を代替する」のではなく「人間が判断に集中できる環境を作る」ためにある。その思想を反映したプロジェクトでした。
「採用業務も、もう少し楽にならないかな」という方は、業務フローの棚卸しから一緒に整理してみませんか?
もっと詳しく知りたい方へ
同様の課題を抱えている方は、業務自動化ソリューションのページからご相談いただけます。



