セキュリティアセスメント・教育プラットフォームと、推し活ロイヤリティプラットフォームの開発。フロントエンドを中心に、バックエンドやRAG、インフラまで担当。
セキュリティレビューAIのPoCから始まり、セキュリティアセスメント・教育プラットフォームの開発と、別クライアント向けの推し活ロイヤリティプラットフォームの構築を担当しました。2案件で性格が全然違って、前者は既存プロダクトの機能開発と運用、後者はゼロからの立ち上げです。
セキュリティアセスメント・教育プラットフォーム
セキュリティのアセスメントと社内教育をまとめて提供するプラットフォームです。フロントエンド、バックエンド、RAGサービスの3つのリポジトリすべてに入っていて、稼働が一番多かったのはフロントエンドでした。
- フロントエンド(Next.js): アセスメント画面と教育コンテンツ画面(マインドマップ、アジェンダ、インシデント詳細)の実装と改修。マインドマップは生成に時間がかかるので、ローディングとポーリングで完了を待つUIにした。ほかに結果テーブルのCSV出力、テナント判別方式をドメインベースと環境変数ベースで切り替えるリファクタなど
- バックエンド(Express + Prisma): 管理画面向けのアセスメント機能、インシデント教育のフロー、アンケート管理。Entra ID移行に伴うレガシー認証の削除。コンテナのリソース監視機能(cgroupベースのメトリクス取得)とテーブル設計
- RAGサービス(FastAPI + Celery): PDFのセキュリティガイドラインを解析してベクトルDBを作り、仕様書のレビューを自動生成する部分。AI側とアプリ側の繋ぎ込み、トークン数超過時のエラーハンドリング、Celery Workerのリソース監視をAzure Container Apps対応で作り直した
推し活ロイヤリティプラットフォーム
Wixで運用されていたチケット販売とグッズ受注を、決済やポイントまで一元化した自社システムに移行するプロジェクトです。設計から入って、DB設計、認証(Better Auth + LINE Login、運営とインフルエンサーでロール分離)、バックエンドAPI(Hono)、フロントエンド(React + Vite)まで一人で通して実装しました。
- 出演者管理、商品売り行き集計、イベント横断の商品一覧、連日開催イベントの日程CRUDなど、ドメインのAPIと画面を一式
- インフラはTerraformでGCPを構築し、GitHub ActionsでCI/CDを整備
- 環境変数はdotenvxで暗号化してリポジトリ管理に一元化、セットアップはMakefileで一発にした
立ち上げ案件だったので、コードよりも先に「運用が回る形」を決めるのに時間を使いました。
使った技術
- Next.js / React / TypeScript
- Node.js (Express / Hono) / Prisma / PostgreSQL
- Python / FastAPI / Celery / Azure OpenAI / Cosmos DB
- Azure Container Apps / GCP Cloud Run / Terraform
- Stripe / Better Auth / Supabase