エムスリーテックブログ

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

GCPのテレメトリーのMCPサーバーを作ってボトルネックを発見する

AI・機械学習チームの北川(@kitagry)です。 このブログはAI・機械学習チームブログリレー1日目の記事です。

最近Claude Codeがとても流行っている気がしますね。 Vimmerである僕としてはCLIで使えるClaude Codeはとてもありがたいです。 NeovimでもDiffを出したり出来るclaudecode.nvimをとても愛用しています。

カメラを見つめる猫 ※本編には関係ありません

続きを読む

「AIだけで正規表現ライブラリを作ってみた」というブログ記事もAIだけで書いてみた

エムスリーでエンジニアをしている山本です。

先日、FlowRegexという名前の正規表現ライブラリをAIで作成したという記事を投稿させていただきました。

www.m3tech.blog

  • 生成AIへの最後の指示
    • AIとの議論
    • AIによる実装
  • まとめ
  • We are hiring!
続きを読む

AIだけで新アルゴリズムによる正規表現ライブラリを作ってみた

こんにちは。今回は、GeminiとClaude 4という2つのAIアシスタントだけを使って、正規表現ライブラリを一から作成した体験をお話しします。

  • きっかけ:古い理論への興味
  • 驚異的な開発速度:正味数時間で完成
  • AIアシスタントによる開発プロセス
    • 役割分担の自然な発生
    • AIによるコード生成の質
  • 学術論文レベルの理論整備
    • Abstract(概要)の自動生成
    • 先行研究との詳細比較
    • 理論的基盤の文献調査
  • 完成したライブラリの機能
    • 基本機能
    • 高度な機能
  • AIアシストの革新的側面
    • 1. 理論の現代的解釈
    • 2. 包括的なテスト設計
    • 3. ドキュメント作成の自動化
    • 4. 段階的な機能拡張
  • 開発体験から見えたAIの可能性
    • 驚いたこと
    • 課題として見えたこと
  • 将来への示唆
    • 研究開発の加速
    • 教育への応用
    • 産業応用の可能性
  • まとめ
  • We are hiring!
続きを読む

サクッとできる、型安全なスタブデータでの BigQuery テスト

はじめに

はじめまして。基盤開発チーム/Unit3を兼務している林です。

エムスリーではデータ基盤として BigQuery を全社的に使っていますが、 BigQuery を使ったアプリケーションやバッチを実装するときに、テストをどうするべきかは難しい問題です。*1

本記事では、BigQuery で記述されたロジックのテストの難しさを解決できるひとつの手法として、簡単に導入できるスタブデータを使うクエリの書き方を紹介します。*2

詳細は後述しますが、以下のようなメリットがある手法です。

  • BigQuery 以外のツールを使わず、実際の BigQuery での文法や挙動を確かめられる
  • 何もリソースを作らず、テストのためのスタブデータを簡単に用意できる
  • 実際のテーブル名・列名・列の型と合っているかチェックできる

*1:DBを使ったテストが難しいのは BigQuery に限らない部分もありますが、PostgreSQL や MySQL、DynamoDB などと違って、ローカルで公式実装のテスト用コンテナを建てられないという困難がある点については同意していただけると思います。

*2:BigQuery の使い方及びテストについて、色々なやり方が考えられます。弊社でも、BigQuery 基盤を整備している側のデータ基盤チームでは dbt が使われていたり、BigQuery データを最も使い倒している AIチームでは Go製のOSSである bigquery-emulatror GitHub - goccy/bigquery-emulator: BigQuery emulator server implemented in Go などが使われています。本記事では、BigQuery に対して SQL を投げて結果を取得する、それだけの機能を前提としたアドホックな新しいテスト手法の提案を主眼においています。

続きを読む

WITH句てんこもりのSQLをデバッグする

巨大なSQLの出力が意図と違っていたり違っているかもしれないとき、どこから確認しようか頭を抱えてしまうことってありますよね。せめて多段階で作られているたくさんのCTE (WITH句)、これらが一つずつどんな表を出力しているのか簡単にのぞけたら手がかりもあるのだけれど⋯

今回はそれをわりと現実的な手間でできるようにする小技です。エムスリーエンジニアリングループUnit1(製薬プロモーション)/Unit9(治験臨床研究支援)エンジニアの三浦[記事一覧 ]です。

続きを読む

Geminiに伴走してもらう仕様理解

【QAチームブログリレー5日目】 こんにちは! エムスリーエンジニアリンググループ QAチームの城本(@yuki_shiro_823)です。 先日から新しく電子カルテを開発しているデジカルチームとの兼任を始めました。初めて触るプロダクトで効率的に知識を吸収するための「伴走者」として、Geminiを使ってみたのでやったことをご紹介します。

伴走してもらってるイメージ

こちらもAIに仕様理解を助けてもらっている記事です。よろしければ合わせてどうぞ。

www.m3tech.blog

  • 仕様理解へのAI導入背景
  • Geminiとの伴走で進めるオンボーディング
    • Geminiに助けられている部分
    • チームメンバーにきいた方がよい部分
  • まとめと今後取り組みたいこと
  • We're hiring
続きを読む

技術書典18に参加してきました!

エムスリー データ基盤チームの橋口 (@matsudo840) です。

エムスリーエンジニアリンググループの有志で6/1に開催された技術書典18オフライン開催にサークル参加しました。興味を持っていただいた方、ブースにお越しいただいた方、お買い上げいただいた方、本当にありがとうございました。

techbookfest.org

この記事では参加記として、技術書典18オフライン開催を写真とともに振り返ります。

続きを読む