エムスリーテックブログ

https://www.m3tech.blog/

エムスリー(m3)のエンジニア・開発メンバーによる技術ブログです

フィード

記事のアイキャッチ画像
BigQueryのスロット、返し忘れていませんか? fluid scalingによるスロット費用最適化
エムスリーテックブログ
エムスリーでは、BigQuery EditionsでAutoscalingを使っています。BigQueryのスロットは使った分に応じて課金されると思いがちですが、厳密には確保したスロットに応じて課金されます。BQのfluid scaling機能を有効化すると、確保したスロットを素早く解放でき、費用の最適化につながります。この記事では、BigQuery のスケーリングの仕組み、何に対して課金されているか、max_slots 調整の取り組み、fluid scaling の効果について書きます。 データ基盤チームの橋口です。この記事はデータ基盤チーム & Unit9(エビデンス創出プロダクトチーム)…
9日前
記事のアイキャッチ画像
AIの分析が返す"それっぽい数字"をどう防ぐか——dbt × Lightdash × MCPでガードレールを作る
エムスリーテックブログ
こんにちは、データ基盤チームと Unit1(製薬企業向けプラットフォームチーム)を兼務している石塚です。この記事はデータ基盤チーム & Unit9(エビデンス創出プロダクトチーム)ブログリレー 2 日目の記事です。前回は坂元さんの「共通データセットを育て続けたい。でもデータマートの数字は勝手に変えたくない」でした。 データ基盤チームでは今、「分析依頼に対応する業務フロー」を AI 前提に作り替える PoC を進めています。依頼を受けた人が集計ロジックを組み立てて数字を作り、シートに整えて返す。この流れを、AI エージェントが一気通貫で回せる形にしたいと考えました。その中核に据えたのが、dbt …
11日前
記事のアイキャッチ画像
共通データセットを育て続けたい。でもデータマートの数字は勝手に変えたくない
エムスリーテックブログ
複数のデータマートのベースとなる共通データセットに手を入れたい。でもデータマートの数字が変わると困る人がいる。そういうことってありますよね。 この記事は、共通データセットは進化させ続ける一方、影響を取り込むタイミングをデータマート側で制御できるようにするお話です。 データ基盤チーム/Unit9(エビデンス創出プロダクトチーム)エンジニアの坂元です。このブログはデータ基盤チーム/Unit9 ブログリレー 1 日目の記事です。 東京競馬場のキッズガーデンの巨大滑り台。夏の間はキッズガーデンは閉鎖されており、9月の初週は比較的空いている気がします。
12日前
記事のアイキャッチ画像
Go Conference 2026 に参加しました!(登壇&スポンサー)
エムスリーテックブログ
エンジニアリンググループの田口です。 9月11日に中野セントラルパーク カンファレンスで開催された Go Conference 2026 に、エムスリーはランチスポンサーとして協賛させていただきました。 また、私自身はスポンサーセッションで登壇させて頂きました。 私自身は Go Conference 初参加となりましたが、Gopher の皆さんの熱意と Go に対する愛が感じられて楽しむことができました。 本記事では、会場の様子や私のセッション、印象に残ったセッションについてレポートします。
12日前
記事のアイキャッチ画像
Azure Document Intelligenceで非定型の表を読む
エムスリーテックブログ
この記事はグループ会社支援チームブログリレー1日目の記事です。 OCRイメージ エムスリーエンジニアリンググループ グループ会社支援チーム(エムスリーグループ各社のプロダクト開発を支援するチーム)およびM3 Technologiesの愛宕です。 最近、紙の帳票をスキャンした画像から項目と値を抽出し、構造化データに変換する社内システムを開発しました。今回はそのときの話をします。 難しかったのは、読み取る対象が「非定型の表」だったことです。同じ種類の情報を載せた帳票でも、発行元が違えば表の組み方が違います。列の並びも、罫線の引き方も、セルの結合の仕方もさまざまで、「この位置にこの項目がある」という…
14日前
記事のアイキャッチ画像
QuineMakerを作った話と技術的な解説
エムスリーテックブログ
はじめに エムスリー株式会社、業務執行役員VPoEの河合(@vaaaaanquish)です。 本記事は、私もGMとして在籍する「AskDoctors開発チーム」のブログリレー 5日目の記事です。 本記事では、私が個人開発した「QuineMaker」というサービスの技術面の紹介をします。 はじめに QuineMakerについて Quineについて Quineの作り方 画像からのQuine生成 画像に対して適切なコードを見つける 色付きQuineの生成 動画からのQuine生成 動画からのQuineの難しさ おわりに We are hiring !!
19日前
記事のアイキャッチ画像
ETL 基盤を Embulk から dlt + dbt に乗り換えた 2 つの理由
エムスリーテックブログ
この記事はコンシューマーチームブログリレー 4日目の記事です。 Embulk 0.9.25 で動かしていた担当プロジェクトの ETL を、dlt + dbt と Step Functions に全面移行しました。証明書エラーと BigQuery のレガシー API 利用で観念した話です。 こんにちは。エムスリーのコンシューマーチームエンジニアの園田です。 コンシューマーチームで大幅なメンテナンスなく元気に動いていたEmbulkですが、今年の夏に全部やめました。 なぜやめたのか、なぜ dlt + dbt なのか、やってみてどこでハマったのか、という順で書いています。 新しい技術の話はほとんどなく…
20日前
記事のアイキャッチ画像
ランタイムを上げるか、Lambda をなくすか - Firehose ネイティブ機能でデータ変換 Lambda を消すまで
エムスリーテックブログ
この記事はコンシューマーチームブログリレー 3日目の記事です。 エムスリーエンジニアリングG コンシューマーチームの松原(@ma2ge)です。 ある日 AWS から「[要対応] AWS Lambda Node.js 20.x サポート終了」という通知が届きました。ランタイムの EOL 対応、皆さんも定期的にやってきますよね。 今回対象になったのは、メール配信システムのログ連携で使っていた Firehose のログメッセージ抽出用 Lambda です。当初は素直にランタイムを上げようと考えたのですが、そういえば Firehose がこの処理をネイティブサポートしたという話を以前に目にしていたこと…
21日前
記事のアイキャッチ画像
ReceiptAPIからApp Store Server APIへ - iOSの課金基盤を一切止めずに移行した話
エムスリーテックブログ
この記事はコンシューマーブログリレー 2日目の記事です。 こんにちは。エムスリーエンジニアリングG コンシューマーチームエンジニアの甲村と申します。 今回は少し前の話となりますが、iOSアプリのサブスクリプション課金を支えるサーバー側の仕組みを、Appleが推奨する App Store Server API ベースに移行したときの話を書きます。着手する前は、新しいAPIを叩くように書き換えるだけだろうと思っていたのですが、実際に大部分を占めていたのは、新しいAPIの実装ではなく、どういう順番で出すかでした。一気に全体のAPIを変更してしまえばソースコードもきれいですし、楽なのですが、万が一不具…
24日前
記事のアイキャッチ画像
副作用の影響範囲を型で示したい — Scala 3 が模索する「Capture Checking」
エムスリーテックブログ
本記事は、コンシューマーチームブログリレー 1日目です。 はじめに 関数型まつりで触れてから、再び自分の中の Scala 熱が高まっています。エンジニアリンググループ、コンシューマーチーム 兼 WHITEJACK チームの松本です。 Scalaでは従来、Effのようなライブラリを使うことでEffect Systemのようなものを実現できました。しかし学習コストが高く、実行時のインタープリタのコストなどの課題もあります。もっと軽い方法はないのでしょうか。 「OCaml 5 の algebraic effects(effect handlers)に似たことが Scala でできないか」という出発点…
24日前
記事のアイキャッチ画像
チームのエンジニア勉強会で「ソフトウェアテスト徹底指南書」を読んだ話
エムスリーテックブログ
この記事は、Unit7ブログリレー8日目の記事です。 こんにちは!エムスリーエンジニアリンググループQAチームの城本です。普段は担当しているプロダクトチームのUnit7ことリサーチプロダクトチームで品質向上のためにあれこれしています。今年に入ってからチームの勉強会で「ソフトウェアテスト徹底指南書 〜開発の高品質と高スピードを両立させる実践アプローチ〜」を読んでおり、先日ちょうど読み終わりました。今回はこの勉強会の様子を紹介します。 勉強会で読んだ本と書見台。書見台はあると意外と便利 勉強会の経緯 本を選んだ理由 進め方 感想 テストの体系が言語化されていく感覚 探索的テストの議論が盛り上がった…
25日前
記事のアイキャッチ画像
Claude Codeでトークンリミットが頻発したので、作業ごとにリミットを設定した
エムスリーテックブログ
この記事は、Unit7 リサーチプロダクトチームのブログリレー7日目の記事です。 こんにちは、エムスリーエンジニアリンググループ/Unit7 リサーチプロダクトチームでチームリーダーをやっている遠藤です。 皆さん、トークン使い切ってますか?私は24時間トークンを使い切れる人間でありたいと思っています。 エムスリーエンジニアリンググループにおける開発ではAIは使い放題なので、量に切迫しているというわけではありません。それでも個人利用も含めてサブスクプランの上限があれば使い切りたくなってしまうのが人情です。 そして、トークンを使い切ろうとした結果、最近私はトークンリミットと戦っています。 背景: …
1ヶ月前
記事のアイキャッチ画像
Apache EChartsにllms.txt対応をコントリビュートした話
エムスリーテックブログ
この記事は、Unit7(リサーチプロダクトを扱う部署)ブログリレー6日目の記事です こんにちは、Unit7 リサーチプロダクトチームの江波戸です。 Apache EChartsの公式ドキュメントはSPAのため、AIエージェントがHTTPで取得しても本文が読めません。これを上流側で解決するため、llms.txt とMarkdown版ドキュメントの生成を本家に提案してマージされました。この記事では、その設計と実装、振り返りを書きます。
1ヶ月前
記事のアイキャッチ画像
Testcontainersで実DBを使う並列テスト基盤を設計する
エムスリーテックブログ
【Unit7 ブログリレー5日目】 記事とは関係ない自宅の本棚。気づいたら本が増えてます。 エムスリーエンジニアリンググループ Unit7(リサーチプロダクトチーム)の丸田です。 現在開発しているプロジェクトでは、可能な限りMockを使わず、実際のPostgreSQLに接続してJUnitでテストを動かしています。 Repositoryのテストだけでなく、HTTPリクエストを投げるControllerのテストまで実DBに繋いでいます。 実DBを使うと本番に近い状態で検証できますが、テストをそのまま並列実行するわけにはいきません。 複数のテストが同じDBの状態を読み書きするため、互いの操作が干渉し…
1ヶ月前
記事のアイキャッチ画像
YANS2026にゴールドスポンサーとして参加してきました!
エムスリーテックブログ
スポンサーセッションでの1分間ピッチ こんにちは。AI・機械学習チームの池嶋です。 エムスリーは2026年8月17-18日に仙台国際センターで開催された第21回言語処理若手シンポジウム(YANS2026)に、ゴールドスポンサーとして協賛させていただきました! 当日は私を含むAI・機械学習チームのメンバー3名で参加してきましたので、その模様を紹介します!
1ヶ月前
記事のアイキャッチ画像
OKFやDiátaxisを活用してDevinによるお問い合わせ対応をしている話
エムスリーテックブログ
【Unit7ブログリレー4日目】(Unit7のメンバーが持ち回りで記事を書く企画です) エンジニアリンググループ Unit7(リサーチプロダクトチーム)の長谷川です。 AIコーディングが当たり前になって久しいですが、じゃあ実際どう使うのがいいのか、運用のやり方はまだ手探りです。今回はその手探りの1つ、「ビジネスサイドからの問い合わせをAIに答えてもらう」取り組みを紹介します。 さて、社内のあるWebサービスには、エンジニアだけでなく、運用を担うビジネスサイドの担当者も関わっています。 担当者からは、クライアントからエスカレーションしてきた仕様の問い合わせが日常的に届いていて、エンジニアが都度答…
1ヶ月前
記事のアイキャッチ画像
Claude Code から Cloud Run 上の MCP サーバを使うための認可構成
エムスリーテックブログ
MCP サーバを利用するクライアントとして Claude Code を想定し、Cloud Run 上の MCP サーバに認可を追加するための構成を検討します。
1ヶ月前
記事のアイキャッチ画像
僕なりのForward Deployed Engineering
エムスリーテックブログ
この記事は、Unit7(リサーチプロダクトを扱う部署)ブログリレー2日目の記事です Unit7 リサーチプロダクトチームの佐藤(@riku929hr)です。 この1年で社内のAIの利用は一気に広がりました。 特にClaude Codeに関しては、いまではエンジニアだけでなく、ビジネスサイドのメンバーも使える環境が整い日常的に使われています。 僕は現在、プロダクトの開発と運用を本業としながら、リサーチ業務を担うビジネスサイドのチームとともに、AIを業務に実装する取り組みをしています。 この記事では、エンジニアが隣のビジネスサイドの部署に出向き業務最適化の伴走をするという役割を担った学びを書きます…
1ヶ月前
記事のアイキャッチ画像
アンケートの設定が噛み合っているかをSMTソルバに確かめさせた
エムスリーテックブログ
こんにちは! エムスリーエンジニアリンググループ、Unit7(リサーチプロダクトチーム)の丸山です。この記事は、Unit7 ブログリレー1日目の記事になります。 私はアンケートを組み立てるための定義データを主に扱っています。 皆さんは、細かい設定の集まりを眺めていて「どれも単体では設定できてしまうのに、組み合わせると行き止まりができる」という状態に出くわしたことはありませんか。アクセス権限のルールを足していったら、どの役割からも触れないリソースができていた。あるいは割引の適用条件を足していったら、どんな金額でも割引が効かない組み合わせが残っていた。ルールを1つずつ見ているぶんには、どれもおかし…
1ヶ月前
記事のアイキャッチ画像
エムスリー QAチームのこれから2026
エムスリーテックブログ
エンジニアリンググループ GM の窪田です。 生成AIの急速な進化により、ソフトウェア開発のあり方は大きく変わりつつあります。開発の生産性が飛躍的に向上する一方で、コードレビューやテスト工程などレビュー・テストの必要なコードやドキュメントの量はどんどん増えています。量が増えたにも関わらず求められる品質についてはこれまでと同等もしくはそれ以上となってきています。品質保証プロセスをどのように改善すべきか、AI を用いた品質保証プロセスがどのようになるかなどを検討する必要があります。 この記事では、そうした環境変化の中で私たちQAチームがどのような未来像を描いているのか、そしてどのようなロードマップ…
1ヶ月前
記事のアイキャッチ画像
タスクを投げると担当リポジトリを選んでClaude Codeに引き継ぐスキルを作る: オレオレDevinの再発明
エムスリーテックブログ
AIエージェントと一緒に調査・開発するようになって、気づけばたくさんのAIを並列で走らせるようになりましたよね〜。 私もVSCodeでいくつものリポジトリを開いて、それぞれにClaude Codeのセッションを立てて、あっちで障害調査、こっちで機能開発、みたいな働き方をするようになりました。 そうやって使っていると、地味に毎回発生する作業があります。それは、「このタスク、どのリポジトリで開くんだっけ?」を人間が判断して、そのリポジトリを開く、という手間です。 Devinを触ったことがある方はご存知だと思いますが、Devinはスレッドにタスクを投げると、勝手に「どのリポジトリで作業するか」を選ん…
1ヶ月前
記事のアイキャッチ画像
「このアラート、何?」を実現するClaude Codeプラグインを育てる
エムスリーテックブログ
【Unit4 ブログリレー7日目】 こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 6日目は大熊による「DB のデータを超手軽に AI 検索させたい — ミニマリストな RAG の作り方」でした。 www.m3tech.blog AIにより開発が高速に進む一方、対応サービスが増えて「slackでアラートが飛んできて、CloudWatchでメトリクスやログを確認し、Athenaでアクセスログのクエリを組み立て…」なんて経験は稀によくあります。サービスが増えてもアラートには出来る限り早く対応したいところです。今回は、この一連の障害調査をClaude Codeの…
1ヶ月前
記事のアイキャッチ画像
DB のデータを超手軽に AI 検索させたい — ミニマリストな RAG の作り方
エムスリーテックブログ
【Unit4 ブログリレー6日目】 こんにちは! Unit4 (m3.com 開発チーム) でエンジニアをしている大熊です。 5日目はキムによる「イベントトラッキングの信頼性を支えるリトライ戦略」でした。 www.m3tech.blog 「DB にデータはたくさんあるんだけど、AI に活用させるにはどうすれば?」 生成 AI をプロダクトに組み込むときに最初にぶつかるのはこのような疑問ではないでしょうか? しかし、ベクトル DB を立てて…埋め込みパイプラインを組んで…AI にツールを渡して…などと考え始めると、途端に腰が重くなります。 本記事では最近公開された Amazon Bedrock …
1ヶ月前
記事のアイキャッチ画像
MIRU2026にシルバースポンサーとして参加してきました!
エムスリーテックブログ
こんにちは。AI・機械学習チームの髙橋です。 この度エムスリーは2026年8月3日から4日間、出島メッセ長崎で開催された画像の認識・理解シンポジウム MIRU2026 にシルバースポンサーとして協賛させていただきました! 当日は私を含むAI・機械学習チームのメンバー3名で参加してきましたので、その模様を紹介します! 会場の看板
1ヶ月前
記事のアイキャッチ画像
イベントトラッキングの信頼性を支えるリトライ戦略
エムスリーテックブログ
【Unit4 ブログリレー5日目】 こんにちは、Unit4のキムです。この記事はUnit4チーム (m3.com開発チーム) メンバーにより投稿されるブログリレー5日目の記事です。 本記事では、m3.comのイベントトラッキングにおけるビーコン送信の信頼性を高めるための取り組みとして、動画配信サービスの事例をご紹介します。リトライ機構を含む3段構えの対策により、ビーコンの配信保証を強化しています。 はじめに 取り組みの背景 解決策 リトライ機構の導入 判定タイミングの調整 フォールバックビーコンの追加 効果分析 送信成功率の改善 リトライ率の計測 今後の展望 送信失敗の要因分析 クライアントビ…
2ヶ月前
記事のアイキャッチ画像
AI時代でも変わらない『実装しきる』大変さの話
エムスリーテックブログ
【Unit4 ブログリレー4日目】 こんにちは、Unit4でソフトウェアエンジニアをしている堺澤です。 3日目は永山による「オリジナルのキーボードを3Dプリンタで作った」でした。 www.m3tech.blog 先日、私が開発しているダッシュボードアプリに地図を扱う新機能を追加しました。 当初は知見も少なく重ための見積もりをしていました。しかしAIでPoCをしてみると意外とサクッと動くものができ、「元々の見積もりの半分以下でいけそう」と思ったのですが、実際に作りきってみると結局当初の見積もりに近い工数がかかりました。 この記事では、実装までの流れと実際にPoC〜開発まで行って「AIで変わったこ…
2ヶ月前
記事のアイキャッチ画像
オリジナルのキーボードを3Dプリンタで作った
エムスリーテックブログ
【Unit4 ブログリレー3日目】 Unit4 (m3.com 開発グループ) の永山です。 2日目は井本による「LINEとスプレッドシートで作る、ゼロ円運用の家計簿ボット」でした。 www.m3tech.blog 普段、3Dプリンタで作成したオリジナルキーボードで仕事をしています。 キーボードの自作には電子回路の設計やCADに関する知識が要求されますが、私は全くそれらの知識がありません。 しかしながら、昨今ではありがたいことにキーボードの設計を直感的に行える便利なツールが存在しており、それらを用いると意外と簡単にこだわりを詰め込んだ自分だけのキーボードを作れます。 本記事では、筆者がキーボー…
2ヶ月前
記事のアイキャッチ画像
AIテストプロセスの信頼度を測り、改善を回す【後編】── 計測から見えてきた4つの課題
エムスリーテックブログ
こんにちは、QAチームの草場です。 この記事は、AIテストプロセスの品質メトリクスについての前後編の後編です。前編では、AIエージェントに任せているテストプロセスの「どこまで信頼していいのか?」に答えるために設計した5つの品質メトリクス(テストケース採用率・実行方法の見立て精度・実装品質・AI自律実行率・欠陥密度)と、数字が壊れないように計算と検算をスクリプトに任せる記録の仕組みを紹介しました。 www.m3tech.blog 後編では、その計測から実際に見えてきた、今のAIテストプロセスの4つの課題を紹介します。
2ヶ月前
記事のアイキャッチ画像
AIテストプロセスの信頼度を測り、改善を回す【前編】── 品質メトリクスの設計と運用
エムスリーテックブログ
こんにちは、QAチームの草場です。 Claude Codeに代表されるAIエージェントの登場で、ソフトウェアテストの現場も大きく変わりつつあります。私のチームでも、テスト分析からテスト実行まで、テストプロセスの各工程をAIエージェントに任せる取り組みを続けてきました。大量の情報収集が短時間でできる、テストケースの下書きを数分で出せる、DBの検証やAPIの疎通確認も自律的に進めてくれるなど、AIによる効率化の手応えは確かにあります。 ただ、現状はあくまで人間が間に入る必要があり、人間による理解・レビューが必ず発生します。 「このAIテスト、どこまで信頼していいのか?」 将来的にはAIに任せる範囲…
2ヶ月前
記事のアイキャッチ画像
LINEとスプレッドシートで作る、ゼロ円運用の家計簿ボット
エムスリーテックブログ
【Unit4 ブログリレー2日目】 こんにちは、Unit4(エムスリーのサイトプロモーションを行うグループ)でエンジニアをしている井本です。 旅先で訪れた全州・慶基殿。史書を分散保存し戦火を免れた、600年前のマルチAZ。参考:姜在彦『朝鮮半島史』角川ソフィア文庫 5章 今回は、LINEを使った家計簿の自動化のお話をします。 我が家は家計を分けている共働き夫婦で、家賃や食費などの共用費用は割り勘が基本です。家賃は共用口座から引き落とし、食費もなるべく共用口座に紐づけたクレカで払うようにしています。ただ、カード決済できない店で現金払いしたとか、期限間近のポイントを消化するためにQR決済するケース…
2ヶ月前