概要
Webエンジニアとして約7年の実務経験があり、直近5年はフロントエンド領域を中心に活動しています。
React / Next.js / TypeScript を軸としたSPA・SSR開発が得意で、技術選定・アーキテクチャ設計からCI/CD構築、メンバー育成まで一貫して担当できます。
Node.jsによるバックエンド実装やスキーマ駆動でのAPI設計も対応可能です。
キャリア初期にはインフラエンジニアとしてサーバ設計・ネットワーク運用に従事しており、フロントエンドからインフラまで幅広い知見を持っています。
得意領域
React / Next.js(App Router)でのSPA・SSR開発、featuresベースのディレクトリ設計
OpenAPI定義からのクライアント自動生成(orval)を活用したAPI連携
CI/CD整備、ビルド高速化(Webpack→Vite移行でビルド時間を最大90%短縮)、ChatOpsによるリリース自動化
スキルセット
言語
フレームワーク
ツール・インフラ
設計・プロセス
DevOps
職務経歴詳細
株式会社Medii
ユーザーオンボーディング改善機能の開発(フルスタック)
ユーザー登録後の定着率向上を目的としたオンボーディングタスク管理基盤を新規開発。外部アンケートツール連携による動線刷新・バックエンドの大規模機能追加・フロントエンド実装をフルスタックで担当。
- オンボーディングタスクのDB設計(タスクマスタ・進捗の2テーブル新規追加、ユニーク制約・外部キー設計、有効フラグによる段階展開設計。約5,220行追加)
- タスク達成の共通ロジック実装(達成判定・ポイント付与・通知作成の原子的処理、冪等性保証・並行実行対策・テーブルドリブンテストによる網羅的検証。約4,820行追加)
- タスク進捗の初期作成トリガーを医師登録・ステータス変更時に注入(特定ユーザー区分の全件スキップ・冪等な重複作成防止・複数の登録経路への対応。約3,780行追加)
- AIチャット機能の応答完了イベントにタスク達成処理を注入し、初回検索達成を自動記録(3つの応答経路への対応・ゲスト除外・タイムアウト安全実行。約2,510行追加)
- 通知一覧APIをタスク進捗通知に対応させる拡張実装(種別ごとのレスポンス型定義、アンカーベースのページネーション再設計、状態判定ロジックの改善。約1,770行追加)
- タスク一覧取得・完了更新エンドポイントの実装(APIスキーマ定義・コントローラー・ユースケース・DI登録。外部アンケートツール回答による達成判定同期も実装。約1,160行追加)
- 新規登録フロー複数経路における特定ユーザー区分のオンボ除外ロジックを整理し、ユーザー種別確定タイミングでのタスク生成に集約(約460行追加・約218行削除)
- Phase4: タスク作成タイミングを専門科確定時に一括集約し、コンサル送信・ギフト交換時のタスク達成判定を実装(ポイント付与の冪等設計・テストケース追加。合計約294行追加・約262行削除)
- 外部アンケートツール(HubSpot)埋め込みによる新オンボーディングアンケートページを新設し、回答後の動線分岐(コンサル誘導・トップリダイレクト・スキップ)とタスク完了処理を実装(約488行追加・約1,407行削除)。旧アンケート関連コードの段階的削除でコードベースを整理
- 登録後セッションにおけるユーザー種別(書類登録完了・専門科確定・認証ステータス等)に応じた動線改善をAPIレベルで実装。状況別のオンボーディング適用判定とルーティング最適化をOpenAPIスキーマ更新込みで対応(約1,162行追加・約73行削除)
- 新規登録ユーザー向けTOPページ・マイページへのオンボーディングタスク一覧表示機能をフロントエンドで実装(タスク進捗の可視化コンポーネント・ページへの埋め込み・状態管理。約1,314行追加)
- 期限切れの未達成タスクを一覧APIから除外するフィルタリングロジックを実装(達成済みタスクは期限後も継続返却、サーバー時刻基準の期限判定・境界値テスト追加。約121行追加)
AIエージェントレコメンド機能の開発(フルスタック)
ユーザーの検索・質問内容をもとに関連する専門家情報提供AIエージェントをレコメンドする機能を新規開発。DBスキーマ設計・バックエンドAPI・フロントエンドUIをフルスタックで担当。
- AIエージェントレコメンドのDBスキーマ設計(話題グループ管理・キーワードマスタ・サジェスト検知結果の3テーブル新規追加、外部キー・ユニーク制約設計含む。約2,666行追加)
- 段階キーワード検知ロジック(話題キーワード判定→ルールキーワード照合の2段階判定)と、サジェスト一覧取得・既読処理・回答記録の3エンドポイントをGo APIで実装(冪等な設計・スレッドスコープ管理・テスト整備含む。約2,097行追加)
- エージェント提案UIをフロントエンドに実装(フローティング起動ボタン・デスクトップ用提案パネル・モバイル用ボトムシート・未読到着時の自動オープン制御・既読承諾フロー管理。約1,781行追加)
AIエージェント・情報提供機能の開発(フルスタック)
医療専門家向けチャットサービスにおけるLLMを活用した情報提供AIエージェント機能を、DB設計・バックエンドAPI・フロントエンドにわたってフルスタックで開発。
- 疾患・薬剤情報提供AIエージェントのDB設計(5テーブル新規追加・外部キー制約設計)・バックエンドAPI実装(キーワード検知ロジック・3エンドポイント)・フロントエンド表示機能(フローティングボタン・パネル・既読管理)をフルスタックで開発(合計約8,600行追加、関連PR 6件)
- AI回答における引用論文・ガイドラインの可視化機能を実装(医学ジャーナルの権威性判定アイコン、参照リストのアコーディオン表示、約2,028行追加)
- LLM応答生成フローを改修し、質問タイプ(治療・鑑別診断・その他)に応じたプロンプト動的選択機能を実装(約892行追加)
- ガイドライン・論文参照情報をメッセージ単位で返却するAPIを設計・実装し、フロントエンド表示と連携(約1,629行追加)
- 代理コンサルにおけるアンケート回答結果に基づくAI応答機能を実装(設問タイプ別の回答生成ロジック、約1,050行追加)
Markdownメモ機能の開発(フルスタック)
専門家向けコンサル画面にMarkdown形式のメモ機能を追加。DB設計・APIルート実装・フロントエンドコンポーネントをフルスタックで担当。
- テーブル設計(ユニーク制約・外部キー・カスケード設計)からGo APIのルート実装(権限チェック・バリデーション・テーブルドリブンテスト)まで一貫して担当(約1,586行追加)
- フロントエンドにMarkdownレンダリング・文字数制限・編集モーダル・カスタムフック・ユニットテストを実装(約404行追加)
フロントエンド機能開発・UX改善
医療専門家向けコンサル機能・ユーザー向けAIチャット機能の機能追加とUX改善を複数のPRで継続的に推進。オンボーディング体験改善にも注力。
- 専門家向け相談投稿フローへの勤務先確認ステップを追加(確認モーダル・カスタムフック・バリデーション・単体テスト実装、約490行追加)
- AIチャットの初回送信UXを改善し、送信直後のメッセージ即時表示・スレッド遷移を最適化(約457行追加)
- チャット入力UIをコンパクト/展開モードに改善し、フォーカス連動リサイズ・レイアウト制御を実装(約419行追加)
- アンケート後の動的ポイント表示機能を追加(ポイント判定ロジックをカスタム関数に分離、約500行追加)
- お知らせ機能としてヘッダー通知メニューを実装(通知一覧表示・未読バッジ・既読管理、約1,287行追加)
- テキストエリアの自動リサイズバグ修正、フォントサイズ修正、Cmd+Enterキーボードショートカット実装など細かいバグ修正・改善を多数対応
- 相談投稿フォームの初期テンプレート文言を刷新し、固定文・動的生成文の整合性を保証するユニットテストを追加(約50行追加)
- AIチャット回答の出力中における引用表示方法を改善し、参照情報のリアルタイム表示を最適化(約532行追加)
- コンサル作成完了後の確認ダイアログを全コンサルタイプに対応して実装し、操作完了のフィードバックを強化(約162行追加)
- チャット画面の吹き出しUIを全面リニューアルし、視覚的一貫性と可読性を改善(約1,927行追加)
- オンボーディング改善としてタスク達成基盤・お知らせ連動表示・通知ベルの状態管理リファクタリングを実施(Phase1対応、約288行追加)。旧オンボアンケート関連コードの段階的削除によりコードベースを整理(約1,196行削除)
開発基盤整備・品質向上
テストカバレッジの可視化、Storybook運用ガイドライン策定、AIコーディングツール設定の最適化、メジャーバージョンアップ対応など、チームの開発生産性・セキュリティ向上に貢献。
- GitHub ActionsにテストカバレッジレポートのPRコメント自動投稿を設定し、品質の可視化を推進
- Storybook運用方針・ファイル命名規則を策定し、AIエージェント向け開発ガイド(AGENTS.md)を整備
- CursorルールをベストプラクティスベースのMDC形式に再構成し、AI補助開発の精度と再現性を向上
- PR Agentの設定を最適化(バグ優先・日本語対応・除外パターン設定)し、コードレビュー品質を改善
- Next.js 16バージョンアップ(型修正・テスト更新を含む)、Node.jsセキュリティアップデートを担当
- フロントエンドリポジトリのセキュリティ強化(CSP設定・依存関係の脆弱性対応、約218行追加)とcriticalなdependabotアラートを優先対応(約234行追加)
- Storybook v10へのメジャーアップグレード(破壊的変更対応・API更新・設定刷新、約1,321行追加)
- VitestメジャーアップデートおよびCI並列実行の復元によりテスト実行効率を改善(約552行追加)
- フロントエンドリポジトリへのCLAUDE.md新設およびバックエンドAPIリポジトリへのAGENTS.md・コーディングルールファイル追加により、AI支援開発環境の整備をフロントエンド・バックエンド双方に展開(合計約239行追加)
お知らせ・通知機能の開発(フルスタック)
キャンペーン通知機能(お知らせ)の新規開発。DBスキーマ設計・バックエンドAPI実装・フロントエンド一覧ページ構築をフルスタックで担当。
- 通知テーブルのDBスキーマ設計(通知マスタ・ユーザー受信箱の2テーブル新規追加、ユニーク制約・外部キー制約設計、ステータス判定ロジック含む。約1,276行追加)
- 通知関連API 3本実装(未完了通知取得・既読更新・アンケート作成時の通知自動一括作成。カーソルベースページネーション・冪等な既読更新設計。約653行追加)
- お知らせ一覧取得APIの新規作成(オフセットベースページネーション・通知ステータス自動判定・リダイレクトURL生成。ユースケーステスト11件追加、カバレッジ80%以上。約1,208行追加)
- お知らせ一覧ページのフロントエンド実装(ページネーション対応一覧表示・未回答/回答済み/募集終了のステータス表示・レスポンシブ対応・カスタムフック実装。約921行追加)
株式会社and.d
AI搭載Shopifyカスタマーサービスアプリの新規開発
ShopifyストアにAIチャット機能を提供するカスタムアプリをゼロから開発。プロトタイプ段階のWebアプリ構築からShopifyアプリへの刷新、管理画面へのShopifyアプリ組み込みから、AIチャットフロントエンド・バックエンド・DB設計まで全領域を担当。
- プロトタイプ段階でAPIサーバー・Webアプリ・チャットウィジェットの大規模コード統合を実施し、サービス基盤を構築(約20,000行の整理・統合)
- TypeScript strictNullChecks対応を推進し、コードベース全体の型安全性を強化(116ファイル対象の型修正)
- Shopifyストアからのアプリネイティブインストールフロー実装およびWebドメイン許可設定機能を開発
- APIアーキテクチャ設計(約4,235行)・チャット機能API実装(Bot管理・会話履歴・約3,202行)を主導し、アプリの基盤を構築
- Shopifyストアフロントへのチャットウィジェット埋め込み機能を実装(LLMを活用した会話・履歴保存、約6,743行追加)
- 注文キャンセルをチャット内で完結させる機能(約4,796行追加)・Shopify商品検索のチャット連携(約929行)を実装
- AIパイプライン処理(クエリ変換→検索→ストリーム生成)をサービスとして抽出するアーキテクチャリファクタリングを推進
- GitHub ActionsによるShopifyデプロイワークフロー(開発・本番・カスタム環境対応)を整備(約592行追加)
- ステージング環境へのデプロイメントフローを整備し、本番リリース前の検証環境を構築(約120行追加)
- 管理画面に配送状況設定のON/OFF切替機能を追加(管理UIコンポーネント・API連携、約793行追加)
- 自動テストをフェーズ分割で段階的に導入(純粋関数ユニット・バリデーション・モックサービス・DB統合テストの4フェーズ、147件以上のテストケースを追加)。vitestバージョンアップ・GitHub Actions統合テストジョブを整備(約9,303行追加)
- 注文キャンセル・住所変更のフィルタリング条件バグを修正し、対象判定ロジックの正確性を向上。関連テストを追加・更新(約83行追加)
- チャットウィジェットの起動時間を最適化(事前読み込み・二段階初期化・進捗インジケーター表示・親ウィンドウ通信による有効化タイミング制御、約178行追加)
- 管理画面にFAQ自動生成機能を実装(外部サイトクロール・LLMによるFAQ生成・進捗表示・個別編集・削除・データソース登録フロー、約1,815行追加)
- FAQ自動生成機能を継続改善(生成ジョブの削除機能追加・入力フィールドのオプション化・クローリングページ数の拡大・プライバシーポリシーページの自動対応・ジョブステータス管理の詳細化、約221行追加)
- 注文キャンセル設定UIを大幅拡張し、配送カットオフ時間帯・指定曜日・返金ポリシー・除外商品タグ・複数カスタムメッセージ等の詳細設定と入力バリデーションを実装。キャンセル可否の判定ロジック改善とテスト整備も実施(約2,006行追加)
- GDPRコンプライアンス必須Webhookを実装(顧客データ削除・データリクエスト・ショップオーナーデータ削除の3エンドポイント対応。約400行追加)
- キャンセル済み注文がキャンセル可能一覧に誤って表示されるバグを修正し、注文状態の判定ロジックの正確性を向上(約188行追加)
AI活用特集ページ自動生成機能の開発
LLMを活用してショップオーナーが入力した情報をもとに特集ページ(ヒーロー画像・テキスト・関連商品)を自動生成し、Shopifyストアフロントに公開するフル機能を開発。バックエンドAPI・DB設計・管理画面フロントエンド・ストアフロント公開ページをすべて担当。
- 特集ページのDBスキーマ設計(階層化されたコンテンツ構造・スタイルバリアント・カスタムスラッグ管理のテーブル新規追加、複数マイグレーション対応)とバックエンドAPI一式(CRUD・単項目再生成・公開/非公開/削除)を実装(PR 1件で約41,000行追加)
- LLMによるヒーロー画像プロンプト設計(人物混入排除・商品忠実度確保のモデル選定・プロンプトエンジニアリング)と画像生成APIを整備
- 管理画面に特集ページ編集パネルを構築(テキスト・画像差し替え・関連商品手動選択・単項目再生成・公開フロー・色付きステータスバッジ・リアルタイムスラッグ重複チェック・生成回数ウィジェット表示、約638行追加の段階的改善を複数回実施)
- Shopifyストアフロント向け公開ページを実装(LLMを活用したコンテンツ表示、商品カードのライブデータ同期・カート追加・詳細ページリンク、生成中のステップ進捗表示・離脱復帰対応、生成失敗時のフォールバック表示)
- 本番環境以外では生成回数制限を無効化する環境変数制御を追加し、開発・ステージング環境での動作確認コストを削減
- Shopify App Bridgeによるスコープ不一致時の自動再認可フローを実装し、既存インストール済みショップの再認証を透過的に処理
- Node.jsビルドおよびDockerファイルの依存関係問題(node-sassからDart Sass移行・Dockerfile alpine修正)を解決し、CI/CDを安定化
AI商品推薦管理画面のリニューアル(Phase 1)
AIが商品を学習してパーソナライズされた商品推薦タグを生成する管理機能をフルリニューアル。学習フロー・タグ管理・運用画面を統合的に再設計し、バックエンドAPIとフロントエンドコンポーネントを全面的に開発。
- 商品推薦AIの学習フロー(未学習→学習中→運用)を管理するDBスキーマ(利用規約同意・学習フェーズ・学習履歴の3テーブル新規追加)とバックエンドAPI(学習開始・キャンセル・タグ管理・履歴一覧)を設計・実装(約4,807行追加)
- 管理画面に学習フロー統合UIを構築(パーソナリティタグ選択・利用規約同意ステップ・学習中キャンセル・運用タブ切替・推薦タグのドラッグ並替・非表示・削除・編集モーダル・学習履歴表示)
- 学習キャンセル時の生成回数返金ロジックと失敗終端化(失敗理由を履歴保存)を実装し、課金・回数管理の堅牢性を向上
- プロンプト構築・応答パースモジュールを共通化し、重複約100行を削除してコードベースの保守性を改善
- 月間生成回数の上限値とリセット時刻の仕様不一致(日本標準時基準への修正)を修正し、利用規約との整合性を確保
- ストアフロントへのインラインJSサイズが制限を超えたため外部アセットとして分離し、デプロイブロックを解消(約444行のリファクタリング)
- GitHub flowへの移行(長命ブランチの整理・手動デプロイワークフローのdispatch化)によりブランチ運用を標準化
クライアント向けカスタムWebアプリ開発
クライアントの要件に基づいたインタラクティブなWebアプリケーションをゼロから短期開発。認証機能の実装から主要機能の構築まで一貫して担当。
- 認証フローを設計・実装し、セキュアなユーザー管理基盤を構築(約3,399行追加)
- クライアント指定の3月末要件に沿った機能実装と、追加アップデートを短期間で対応(合計約4,630行追加、3件PR)
ShopifyアプリのUI開発・ECストアカスタマイズ
ECブランド向けのShopifyアプリ開発・テーマカスタマイズを継続的に担当。配送日時指定・ギフト機能・送料バー等の各種Shopifyアプリのフロントエンド開発と、複数クライアントのECストア構築を推進。
- ギフトアプリのカスタマイズ・機能追加(TypeScript)を実装し、ステージング環境へのデプロイフローを整備
- 配送日時指定・送料バー・スマート購入ボタン等のShopifyアプリをTypeScript / Vue.jsで開発
- 複数クライアント向けにShopifyテーマのLiquidカスタマイズ・UI実装を担当
- 送料バーShopifyアプリのCSSビルドツールをnode-sassから移行し、依存関係の最新化と保守性を向上
- 本番環境の高頻度パスで大量のデバッグログが出力されていた問題を特定し、不要なconsole.log削除によりログ取り込みコストを大幅削減(年数十万円規模の削減見込み)
スマートキャンプ株式会社
サイトフルリニューアル
SPAからSSRへの全面移行を伴うフルリニューアル。フロントエンドの技術選定・アーキテクチャ設計・CI/CD構築・メンバー育成を一貫して担当。
- Next.js + pnpm workspacesによるモノレポ構成を採用。route handler / server actionsを活用し、セキュリティとBE連携を最適化
- GitHub ActionsでOpenAPIクライアント自動生成・ECS自動デプロイを実現。ESLint / Prettier / stylelintを導入し、コード品質を標準化
- トップ・サービス・カテゴリーページの構造を最適化し、Lighthouseで高スコアを達成。比較表機能をゼロベースでSSR再構築
- ペアプロ・モブプロを通じてFE経験の浅いメンバーを支援。全員が自立してタスクを完遂できる状態に引き上げ
比較表機能リニューアル
約2年間停止していた比較表機能リニューアルを再始動。設計・開発・チーム調整を兼任し、カンバン方式で推進。
- JSONカラムからRDBベースのスキーマに再設計。請求機能を障害ゼロでリリースし、売上への影響を回避
- Vite導入によりビルド時間を1分→7秒、ホットリロードを30秒→1秒未満に改善
- RESTful API設計方針をチームで合意形成し、実装のばらつきと手戻りを削減
- React勉強会の主催、技術ブログの執筆
サービス運用保守
約8年運用されてきたSaaSの機能追加・パフォーマンス改善・開発基盤の刷新を担当。
- esbuild-loader導入 + Webpack5移行により、ビルド時間を6:43→1:43に短縮(約75%改善)
- yarn workspaceでjQuery / Vue.js / React混在環境を統合。環境構築ミスをゼロに
- Slack Bot(Serverless Framework)を開発し、ボタン操作でPR確認・GitHub Actions実行を可能に。リリース頻度を向上させ、半年以上継続運用
株式会社フォトラクション
電子小黒板機能フルリニューアル
工事写真撮影プロセスの効率化を目的に、電子小黒板機能をフルリニューアル。Backbone.js→Vue.jsへの移行とVite導入によるビルド高速化を実現。
労務安全サービスのマイクロサービス化
Laravel本体と密結合していたフロントエンドを分離し、独立リリース可能な構成に刷新。Vue.js→Nuxt.js移行、GitHub ActionsによるECS自動デプロイ環境を構築。
新規労務安全サービスの開発
建設現場の労務安全書類をDX化するサービスを開発。クライアントサイドで動作が遅かったPDF生成処理を、Nest.jsによるサーバーサイドAPIに移行してパフォーマンスを改善。
株式会社キーリンク
建設業界向け現場管理サービス
Vue.jsでのプロトタイプ開発、API設計・実装
アパレル業界向け生産管理システム
React / Vue.jsでの実装、GCPインフラ構築
建設業界向け入退場管理アプリ
Vue.jsコンポーネント実装、JenkinsによるCI構築
ニスコム株式会社
サーバ設計・構築業務
Windows Serverの詳細設計・構築、顧客折衝、テスト仕様書作成
大学系ネットワーク運用・保守
ネットワーク機器リプレース、監視サーバー構築、firewall設定