Blog
フルスタック・AI・チームビルディングの現場知識を言語化した記事一覧
NestJS + LangChainで治験CRMにAI機能を追加した構成メモ
ベンダーから引き継いだNestJS+React+PostgreSQLの治験CRMに、LangChain.jsのRe-Actエージェントを追加した際のモジュール設計と判断の記録。
TypeScriptで型安全なLangChainアプリを作る —LangChain.jsの型定義と実装パターン
LangChain.jsの型定義の扱い方からストリーミングレスポンスの型安全な実装、カスタムChainの設計まで、医療系スタートアップのNestJS実務で得た知見をまとめました。
RAGをやめてツールベースに切り替えた話——LangChain.jsとCRMの相性
治験CRMへのAI統合でRAGを試みた結果、精度要件と相性が悪いと判断しRe-Actエージェント×ツールベースに切り替えた経緯。プロンプト設計の泥臭さも含めた実録。
LangChain.js 2025年の現状:実務で使って感じたこと
NestJSプロジェクトでLangChain.jsを実務投入して1年。バージョン変遷の激しさ・LCEL構文への移行・RAG実装・OpenAI SDKとの使い分けまで正直にレビュー。
NestJSの治験CRMを引き継いで学んだバックエンド設計
ベンダーから引き継いだNestJS製治験CRMの保守・改修を通じて理解したモジュール設計、Repositoryパターン、DTOバリデーション、エラーハンドリングの実際。
治験データが増えるにつれてシステムが遅くなった——パフォーマンス改善の実記録
治験システムの被験者管理・来院記録が蓄積されるにつれて発生したパフォーマンス問題。N+1解消・インデックス追加・ページネーション導入の改善プロセスを記録する。
製薬メーカーのシステム監査に技術者として対応した話
治験依頼会社による社内システムの監査に、テックリードとして技術面の対応を担当した実体験。事前準備から当日のQ&A対応、盲点だった観点まで赤裸々に紹介します。
CSV(コンピュータ化システムバリデーション)とは何か — 医療ITエンジニア目線で解説
医療・製薬業界で必須のCSV(コンピュータ化システムバリデーション)をエンジニア視点で解説。「スプレッドシートのCSVと違う」と知ったところから、実際にドキュメントを整備するまでの実務経験。
引き継いだリリースフローが、監査で初めて意味を持った
ベンダーから引き継いだリリースフローを、監査対応で改めて理解した話。SOP・変更管理・ロールバック手順——規制産業のリリース管理が「なぜそうなっているか」がわかるまで。
外部ベンダーから内製化した3年間 — 年間480万円の固定費をゼロにするまで
医療系スタートアップで外部ベンダーからシステムを引き継ぎ、内製化を達成した実録。技術的負債の解消、孤独との戦い、年間480万円の固定費をゼロにするまでの全プロセス。
同僚が部下になった日——テックリード就任、最初の90日の現実
横並びだった同僚と突然「上下関係」になる日が来た。先輩もいない、手引きもない。脆弱性診断、コードの読み込み、逆転した要件フロー——テックリード就任直後の3ヶ月を正直に書く。
直したいのに直せない——技術的負債と向き合う3年間
ベンダーのコードを引き継いだ日から、技術的負債との戦いが始まった。「あなたのせいですよ」と笑われながら何もできなかった日から、今も板挟みが続く現実まで。