「事前面談で自分のスキルをうまく伝えられず、ミスマッチが起きてしまった…」。エンジニアなら一度は抱えるこんな悩みを、テクノロジーの力で解決する画期的な社内ツールが誕生しました。
先日開催された第14回社内勉強会では、ITCユニットの岸本湧士郎さんが登壇。「AIが面談官に!? 顧客面談をAIで練習する新しいカタチ ~Dify × Azureで実現する音声対話AI~」と題し、自作の面談AIアプリの裏側と技術要素が語られました。 開発現場のペインをどう解決したのか、そのエッセンスをお届けします。

1. 面談練習のハードルと「上司の工数」問題
案件参画に向けた顧客との事前面談や顔合わせは、自身の経歴やスキルを正しく伝え、業務内容とのミスマッチを防ぐための重要なステップです。
しかし、その受け答えを本番前に十分練習できる機会は決して多くありません。上司に面談官役をお願いする方法もありますが、毎回上司の工数を割くわけにもいかないという現実的な課題がありました。
そこで岸本さんが考案したのが、「面談官の役割をAIに担ってもらう」というアプローチです。
2. スキルシート×案件情報で作る「超実践的」な面談AI
構築されたAI面談アプリの使い方は非常にシンプルです。案件の情報と、面談を受けるメンバーのスキルシートをシステムに読み込ませます。すると、AIが顧客側の面談官になりきり、自動的に面談を開始して音声で質問を投げかけてきます。
これに対してユーザーも自分の「声」で回答していくため、本番に近い雰囲気で練習が可能です。あらかじめ設定された回数(デモでは5回)のやり取りが終わると面談は自動で終了し、各質問に対する改善点や総合的なフィードバックが提示されます。
このアプリの最大の強みは、「案件情報とスキルシートの内容に合わせて質問を組み立ててくれる点」と、「自社独自の評価基準(ナレッジ)を設定して練習できる点」にあります。
3. Dify × Azureで構築したアーキテクチャの全貌
セミナーでは、この面談AIを実現するための技術構成が詳しく解説されました。
アプリは自社管理のAzure仮想マシン(VM)上でDockerコンテナとして稼働し、Nginxで通信を振り分けています。
画面はReact、バックエンドはFastAPIを使用し、APIキーを保持して各種AIサービスへの通信を中継しています。
面談の中身はLLM開発ツールの「Dify(Chatflow)」を利用し、案件情報やスキルシート、質問履歴を「変数」として保持しながら会話を進める仕組みです。
さらに、ブラウザからの音声を文字に変換する音声認識(STT)と、AIの生成したテキストを音声で読み上げる音声合成(TTS)には、Azure OpenAIのSpeechサービスを活用しています。
通信はHTTPSで暗号化し、自社のVM内で完結させることで情報漏洩リスクにも配慮されています。
4. ライブデモでのハプニングと、広がる改善のアイデア
勉強会後半のライブデモや質疑応答では、開発途中のリアルな課題や、システムをさらに良くするためのアイデアが活発に飛び交いました。
デモ中には、AIがIT用語の「DB(データベース)」を「デシベル」と誤読してしまうハプニングが発生。これはDify側ではなく、音声合成を担うAzure OpenAI Speech側の発音解釈によるものだと分析されました。
また、参加者からは「スキルシートに記載された経験年数(1ヶ月か1年か)によって質問の深さを調整できないか」「Difyに全会話履歴を渡したほうが、実際の面談らしい深掘り質問ができるのではないか」といった実践的な改善案が次々と寄せられました。
岸本さんもこれらの意見を真摯に受け止め、今後の社内展開に向けた意欲を見せていました。
編集後記
毎週水曜日に開催されている社内勉強会。今回はITCユニットの岸本さんによる、現場の課題を自らの技術で解決しようとする素晴らしいセッションでした。 業務のペインをそのままにせず、「どうすれば技術で解決できるか」を考え、実際に形にして社内でブラッシュアップしていく姿勢は、当社の開発カルチャーそのものです。
当社では現在、最新技術を活用しながら、共にプロダクトと組織を成長させていく仲間を募集しています。このような技術交流や課題解決のプロセスにワクワクした方は、ぜひ採用ページもご覧ください!