JMDC TECH BLOG

https://techblog.jmdc.co.jp/

JMDCのエンジニアブログです

フィード

記事のアイキャッチ画像
Amazon Q Developer導入の壁 「請求」と「ポリシー」の壁を乗り越えた話
JMDC TECH BLOG
はじめに こんにちは、インシュアランス本部の黒木です。 昨今、生成AIの技術が急速に発展し、開発現場でもさまざまなAIツールが活用されるようになってきました。当社でも業務効率化や生産性向上を目的に、複数のAIサービスを導入・検証しています。そんな中、Amazon Q Developerというサービスを知りました。実際に業務で使えるか検証してみることにしました。 「AWSのサービスだし、ポチッと有効化すればすぐ使えるだろう」 当初はそう軽く考えていました。しかし、実際に使い始めるまでには想像以上のハードルがありました。 この記事では、機能の素晴らしさではなく、企業内で検証を開始するまでの過程で直…
13日前
記事のアイキャッチ画像
RedisからValkeyに移行しようとしたら思わぬ落とし穴にハマった話
JMDC TECH BLOG
はじめに こんにちは、JMDCエンジニアの片岡です。 qiita.com 本記事は、JMDC Advent Calendar 2025の24日目の記事です。 今回、弊社アプリPepUpで利用していたAWS ElastiCache for Redis OSSを、AWS ElastiCache for Valkeyに移行しました。(Redis 6.2 => Valkey 7.2) 本記事では、移行の際のポイントや、実際に移行作業でハマった部分について解説します。 Valkeyとは? Valkeyとは、Redis互換のオープンソースインメモリデータベースです。 2024年3月、RedisがBSD 3…
14日前
記事のアイキャッチ画像
GitHub Copilot向けMCP RegistryをGitHub Pagesで構築する
JMDC TECH BLOG
[!NOTE] この記事は筆者が下書きした内容をAIを活用して文章化し、筆者が監修して執筆しました。 Pep Up モバイルアプリチームのスクラムマスター兼エンジニアの @mrtry です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 23日目の記事です。 Model Context Protocol(MCP)サーバーの登場により、Coding Agentの機能拡張が容易になりました。MCPサーバーを導入することで、外部サービスとの連携やカスタムツールの利用が可能になります。しかし、MCPサーバーは…
15日前
記事のアイキャッチ画像
クラウド移行プロジェクト:見える化と共通認識づくりの効果
JMDC TECH BLOG
こんにちは!データウェアハウス開発部の大出です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 22日目の記事です。 21日目は秦さんによる「Amazon Bedrock✖️GenkitをGoで構築してみる」でした。 はじめに 私がプロジェクトマネージャー(以下、PM)を担当した基幹システムのクラウド移行プロジェクトが、約 1 年半の期間を経て 2025 年 11 月に完了しました。あらためて感じたのは、「計画と実態のギャップをどう可視化し、どう共通認識をつくるか」が移行プロジェクトの成否を大きく左右…
16日前
記事のアイキャッチ画像
Amazon Bedrock✖️GenkitをGoで構築してみる
JMDC TECH BLOG
はじめに 皆様、こんにちは!今年8月からJMDCに入社した秦(しん)です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 の 21日目の記事です。 この記事では、Google が提供する AI アプリケーション開発フレームワーク「Genkit」を Go で使用し、AWS Bedrock と連携して生成 AI 機能を構築する方法についてサンプルを用いて解説します。 Genkit は Firebase/GCP との連携が注目されがちですが、実は AWS Bedrock とも組み合わせて使用できます。 この…
17日前
記事のアイキャッチ画像
AI×システム開発 ― 進め方とドキュメント整備のリアル
JMDC TECH BLOG
こんにちは。株式会社JMDC データウェアハウス開発部の川島です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 20日目の記事です。 1.はじめに 2.取り組みの内容 2-1. ドキュメントのMarkdown化とGit一元管理 2-2. Instructionsファイルの整備 2-3. 「設計書→タスクリスト→プロンプト」の細分化プロセス 2-4. Geminiとのクロスレビュー体制 3.実際にやってみた結果 3-1. 開発が速くなった? 3-2. アーキテクチャ設計における人間の責任と重要性 3-…
18日前
記事のアイキャッチ画像
個人情報連携システムにおけるセキュリティ設計
JMDC TECH BLOG
こんにちは!株式会社JMDC プロダクト開発部 プラットフォームGの姜です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 19日目の記事です。 今回は個人情報を扱う外部APIとの連携システムを構築する際に採用したセキュリティ設計についてご紹介致します。 1. 背景 2. システム概要 3. セキュリティ設計 PrivateLink - ネットワーク層の保護 PrivateLink とは? なぜ採用したか? mTLS - クライアント認証 mTLS とは? なぜ採用したか? Proxy - アウトバウ…
19日前
記事のアイキャッチ画像
AWS ConfigとSlack連携で実現!S3バケットポリシーの不正・意図しない変更を即座に検知する仕組み
JMDC TECH BLOG
こんにちは。株式会社JMDC データウェアハウス開発部の古橋です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 18日目の記事です。 目次 1. はじめに 2. システム概要と構成要素 3. 構築手順 3.1. S3バケットの準備 3.2. AWS Configの設定 3.3. EventBridgeの設定 4. 動作検証 4.1. S3バケットポリシーの意図的な変更 4.2. 通知の確認 5. おわりに 6. 参考情報 1. はじめに 本記事でご紹介するのは、AWSサービスを利用して以下を実現する…
20日前
記事のアイキャッチ画像
ヘルスビッグデータ分析サービスの複数のプロダクトを統合した話
JMDC TECH BLOG
みなさん、こんにちは!株式会社JMDC プロダクト開発部 製薬システム開発グループの関田です。 現在、当社が製薬会社様向けに提供しているヘルスビッグデータ分析サービス JMDC Data Mart のバックエンド開発を担当しています。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 17日目の記事です。 はじめに 私が所属しているチームでは、冒頭でお伝えした製薬会社様向けヘルスビッグデータ分析サービス JMDC Data Mart(以降、JDM)の開発・運用を行っています。 JDM は、ローンチから18…
21日前
記事のアイキャッチ画像
Glueジョブ開発の実践:PySpark + Jupyterによる大量データ変換と単体テスト
JMDC TECH BLOG
こんにちは。JMDCの開発本部 データウェアハウス開発部の金です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 16日目の記事です。 目次 はじめに 1. 背景・概要 前提条件と課題 2. 実装の工夫:パフォーマンスと品質の向上 (1) CSV → Parquet変換とファイルサイズ制御(パフォーマンス向上) (2) Spark SQLによる宣言的な変換(品質向上) 3. 開発環境の工夫:ローカル開発による高速化 (1) AWS/ローカルの自動実行環境切り替え (2) Docker Composeに…
22日前
記事のアイキャッチ画像
年間数千万円のコスト削減が見えた。RedshiftからSnowflakeへの移行PoCをやってみた話
JMDC TECH BLOG
こんにちは。株式会社JMDC プロダクト開発部の三井です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 15日目の記事です。 はじめに 私が関わっているプロダクトでは現在、DWH基盤をRedshiftからSnowflakeへ移行する検討をしております。 上期にPoCを実施してみたのでその活動を振り返ってみようと思います。 はじめに ざっくりまとめ Snowflakeとは 現状の課題 PoCを実際にやってみた 想定される定量・定性効果 実際にやってみて 今後について ざっくりまとめ 「Redshift…
23日前
記事のアイキャッチ画像
医療データ基盤における入社後1年の振り返りとデータスペシャリストへの挑戦
JMDC TECH BLOG
こんにちは。株式会社JMDC データウェアハウス開発部の西川です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 14日目の記事です。 はじめに JMDCの開発本部 データウェアハウス開発部 医療機関基盤グループの西川です。 現在は、JMDCが保有する多様な医療データを処理・活用するための基盤を開発・運用するチームに所属しています。 私は2025年1月に中途入社し、もうすぐ1年が経過します。 この記事では、私がこの1年間で何を学び、どのような経験を積んできたのかを振り返るとともに、JMDCのデータ基盤…
24日前
記事のアイキャッチ画像
pprof で Go のパフォーマンス問題に向き合ってみた
JMDC TECH BLOG
今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 13日目の記事です。 1年ほど前から Go のバックエンド開発に携わっています。プロダクト開発部の飯田です。 今回、社内向けWebアプリケーションで、「Excelファイルのダウンロード機能」のパフォーマンス問題に直面しました。データ量が1万件程度なら問題ありませんが、5万件を超えたあたりからCPU使用率にもメモリ使用量にも余裕があるのにタイムアウトエラーが発生してしまうという現象です。 すでにチーム内で対応案は検討されていましたが、苦手意識のあったパフォー…
25日前
記事のアイキャッチ画像
PM1年目で失敗したことと学んだこと
JMDC TECH BLOG
今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 12日目の記事です。 こんにちは。医療機関基盤チームのPMを担当している西村です。 今回の記事では、エンジニア→PMへとロールチェンジした私が実際に直面した壁とどのように乗り越えたか、乗り越えようとしているのかをお話ししたいと思います。 PMを目指した背景 私はエンジニアとして約6年間、サーバーサイド開発や基盤の運用保守に従事してきました。 技術的な視点で課題解決をおこなうなかで、「なぜこの機能が必要なのか」「会社のビジネス的にどのような価値があるのか?」…
1ヶ月前
記事のアイキャッチ画像
Auth0とGoogle Workspace(Googleグループ)のSAML認証を利用した話
JMDC TECH BLOG
今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 11日目の記事です。 背景・概要 こんにちは!プロダクト開発部の山岡です。 今回新規のプロジェクトでAuth0の認証を利用したサービスを開発しております。 その際にメインサービスとは別に運用チームが利用する、 多機能ではありませんが管理側のサービスも必要となりました。 管理ツールのユーザー制御を検討し下記のように決定しました。 利用できるユーザーはGoogleグループで管理する 最初に候補に上がったのは Google Workspaceを直接利用したSAM…
1ヶ月前
記事のアイキャッチ画像
.NET Aspireをローカル開発環境に取り入れてみる
JMDC TECH BLOG
こんにちは。インシュアランス本部ソリューション部の照屋です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は JMDC Advent Calendar 2025 10日目の記事です。 はじめに 弊部署ではWebアプリやWeb API、DBなどの多層構造を持つ分散アプリケーションを.NET系の技術スタックで開発することがあります。本番環境ではPaaSやクラウドDBを利用してアプリケーションを動かしますが、開発初期においてローカル端末に開発環境を整備する手間がかかることが悩みの種でした。 手間1: 接続情報の準備と設定 Webアプリ・Web API・DB間の…
1ヶ月前
記事のアイキャッチ画像
GoプロジェクトのCI/CD高速化の話
JMDC TECH BLOG
こんにちは!Pep Upモバイルアプリチームの楊です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 9日目の記事です。 はじめに 皆さんは、GitHub ActionsでGoプロジェクトをビルドする際に、ビルド時間が長すぎて困った経験はありませんか? 直近担当していたGoのプロジェクトではGitHub Actionsでのデプロイに約58分もかかっていました。ランチを食べて戻ってきても、まだビルドが終わっていない...そんな状況でした。私たちは様々な最適化手法を実施し、とうとうデプロ時間を2分(97%…
1ヶ月前
記事のアイキャッチ画像
LLM-as-a-Judgeを実際に利用して見えてきた課題と対策について
JMDC TECH BLOG
こんにちは、株式会社JMDC デジタル&データ新規事業本部の渡辺です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 8日目の記事です。 LLM-as-a-Judgeとは? ChatGPTが登場してからちょうど3年が経過しましたが、依然として「生成AI」はホットトピックと言っても過言ではありません。 実際、毎月のように何かしら大きな話題が上がっており、OpenAI, Anthropic, Googleといった主要3社もリリースやアップデートを現在も繰り返しています。 そのたびに、ユーザからは「賢くなっ…
1ヶ月前
記事のアイキャッチ画像
AWS Step FunctionsをAWS CDKとAWS Toolkit for Visual Studio Codeで開発する
JMDC TECH BLOG
こんにちは、医療機関支援事業本部の森田です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 の 7日目の記事です。 目次 はじめに 準備 ASLを軸にAWS ToolkitとCDK、AIが紐付く AWS Toolkit によるビジュアライズ JSONata によるデータ変換で Lambda を削減 AIとのペアプログラミング 不満点 まとめ はじめに ワークフローを構築する Step Functionsですが、開発を行うにあたりさまざまな理由でとっつきにくさを感じることがあります。 マネジメントコンソ…
1ヶ月前
記事のアイキャッチ画像
CloudWatch Logsをパーティショニングしつつ雑にS3に保存する方法
JMDC TECH BLOG
こんにちは。株式会社JMDC データウェアハウス開発部の甲(きのえ)です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 6日目の記事です。 目次 はじめに 構成イメージ 手順 CloudFormationテンプレートの作成 ① CloudWatch Logs保存用S3バケットの作成 ② CloudWatch LogsをS3に保存するためのパーティショニング用Lambda関数を作成 ③ CloudWatch LogsをS3に配置するためのFirehose Delivery Streamを作成します ④…
1ヶ月前
記事のアイキャッチ画像
アイコンのデフォルトサイズを 1em から 1lh にする
JMDC TECH BLOG
今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 5日目の記事です。 はじめに React のプロジェクトでアイコンを表示する場合、 SVG ファイルから React コンポーネントを生成することがしばしば行われます。弊社でも、いくつかのプロジェクトで SVGR を使用しています。 最近、 SVGR で生成するアイコンのデフォルトサイズを 1em から 1lh に変更したので、今日はその話を紹介します。 SVGR の --icon オプション SVGR は SVG ファイルを元に React コンポーネン…
1ヶ月前
記事のアイキャッチ画像
AWSコストをもっと細かく見たいんです。~データエクスポート(CUR 2.0)活用の巻~
JMDC TECH BLOG
こんにちは!最近AWSコストが気になっている保険者レセプトグループの竹内です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 4日目の記事です。 皆さんはAWSのコスト管理、どうしていますか? AWSにはCost Explorerという便利な可視化サービスがありますが、グラフで「S3の料金が上がっている」ことはわかっても、「じゃあ、どのS3バケットが一番コストを食っているの?」と、具体的なリソースIDまで特定できず、もどかしい思いをしたことはないでしょうか。 私自身、この問題に直面し「もっと詳細なコス…
1ヶ月前
記事のアイキャッチ画像
LaravelのUIフレームワーク、Livewireを触った話
JMDC TECH BLOG
こんにちは。JMDCインシュアランス本部ソリューション部の宮田です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事はJMDCアドベントカレンダー 3日目の記事になります。 はじめに Webアプリの新規開発で、LaravelのUIフレームワーク、Livewireを使う機会がありました。 Livewireはサーバー駆動型UIフレームワークです。 今まで私の経験ではクライアント駆動型UIフレームワークしか使ったことがありませんでした。 Livewireを使う上で、いいなと思った点やハマった点の共有と、自分の思考の癖でハマった際に気づきがあったので共有できればい…
1ヶ月前
記事のアイキャッチ画像
RDB依存からの卒業。ELTシステムをETLへ刷新して見えた現実と振り返りの話
JMDC TECH BLOG
こんにちは。株式会社JMDC データウェアハウス開発部の垂水です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 2日目の記事です。 目次 1. はじめに 2. 刷新前後のシステム構成イメージ ■before ■after 3. 現行システムで抱えている課題と解決状況 4. ELTからETLに切り替わってどうだったか ■データ加工ロジックの基盤刷新(SQL -> pandas) 良かった点・工夫した点 ■データ保存先の刷新(RDB -> S3) コストとリソースのトレードオフ 5. おわりに 1. は…
1ヶ月前
記事のアイキャッチ画像
スクラムにキャプテン制度を取り入れ、開発効率とエンジニア育成を両立させた話
JMDC TECH BLOG
こんにちは。プロダクト開発部でエンジニアリングマネージャーをやっている野田です。 今年、JMDCではアドベントカレンダーに参加しています。 qiita.com 本記事は、JMDC Advent Calendar 2025 1日目の記事です。 はじめに スクラムに属人的な要素を少量取り入れることで開発がやりやすくなり育成の面でも良い影響があったという話をします。 Pep Up(ペップアップ) ではスクラムによる開発を行っています。 基本的なプロセスとして、プロダクトバックログの上から順に手が空いた開発者がプロダクトバックログアイテムをセルフアサインし、開発を進めるスタイルをとっています。 このプ…
1ヶ月前
記事のアイキャッチ画像
QAキックオフ資料を生成するPromptを作成し、開発とQAチームを効率化した話
JMDC TECH BLOG
Pep Up モバイルアプリチームのスクラムマスター兼エンジニアの @mrtry です。 近年のアジャイル開発の現場において、QAチームの業務負荷が高まっていることは、多くの組織で共通の課題となっています。 私たちの組織でも同様に、QAチームのリソース不足が顕在化していました。その原因を深く掘り下げていくと、開発チームからQAチームへの「情報共有」に一つの大きなボトルネックがあることが分かりました。 具体的には、QAキックオフ(テスト計画前の開発チームとQAチームのMTG)の際に開発チームから提供される資料の形式や粒度が、プロジェクトや担当者によってバラバラだったのです。 この「情報共有インタ…
1ヶ月前
記事のアイキャッチ画像
アプリケーションの設定情報の管理にAppConfigを利用する
JMDC TECH BLOG
背景・概要 こんにちは、医療機関支援事業本部の森田です。 最近は急に寒くなりましたね。体調を崩さないように気をつけていきましょう。 さて、私が携わるプロジェクトではAWS Amplify Gen2とNext.jsを用いたサーバーレスアプリケーションを開発しています。このアプリケーションではマルチテナントでの運用を想定しており、テナントごとに異なる設定情報をどのように管理するかが課題でした。 Amplifyは環境変数の管理機能を提供しており、ビルド時にアプリケーションにこれらの値を安全に注入してくれます。しかし、この方法では値を変更するたびにAmplifyのビルド&デプロイが必要になります。アー…
2ヶ月前
記事のアイキャッチ画像
React RouterのRouteモジュールとディレクトリ設計
JMDC TECH BLOG
こんにちは。中澤です。 わたしは1年ほど前から本格的にフロントエンド開発について学び始め、先日社内向けにwebアプリケーションをリリースしました。 一区切りついたタイミングで、リリースされたアプリケーションを振り返りたいと思い、この記事では特にディレクトリ構成について焦点をあてています。 前提として、リリースされたアプリケーションの特徴は以下のようなものになります。 社内向けアプリケーション SPA React Router の framework mode を採用 実装したアプリケーションのディレクトリ構成を振り返る さっそく本アプリケーションのディレクトリ構成について振り返ってみます。 a…
2ヶ月前
記事のアイキャッチ画像
AWSのVPCエンドポイント環境でDBeaverを活用!ドライバーの手動追加手順
JMDC TECH BLOG
セキュアな接続が必要な要件下でAWS Athena JDBC ドライバ3.xを使って、vpc Endopoint経由でAthenaに接続する手順を紹介
2ヶ月前
記事のアイキャッチ画像
AWS初心者がオンプレ→AWSへの連携について触れてみた
JMDC TECH BLOG
初めに こんにちは!最近AWSを触り始めたデータレイクグループ・マスタチームの後藤です。 今回は最近行った、オンプレミス環境にあるデータをAWSのS3にアップロードする仕組みを構築した際の体験を共有します。 この記事は、私と同じようなAWS初心者の方に向けて書いています。 JMDCは「敷居が高そう」と言われることがあるそうなので、私のようなAWS初心者が発信することで、少しでもその敷居が下がれば嬉しいです。 システム構成の概要 今回は以下のような構成で、オンプレミスのデータをエージェント経由でAWSへ連携する構成です。 すでに同様の連携の仕組みが作成されており、エージェントは事前にインストール…
3ヶ月前