エムスリーテックブログ

エムスリーテックブログ

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

pmconf 2026 福岡に登壇しました!

皆さんこんにちは、小学2年生の子どものサッカーの応援に明け暮れているプロダクトマネージャーの阪口です。この年代の成長スピードは本当にすごくて、先週できなかったことが今週はできている、ということが毎週のように起きるので、応援に行くのが楽しくて仕方ありません^^。ところが先日、2年生最大の大会で、惜しくも予選敗退してしまいました。試合後、子どもたちはわりとすぐに切り替えていたのですが、一番悔しがっていたのは間違いなく応援席の私ですw。負けから学ぶのは子どもも大人も同じ、ということで、来年のリベンジに向けて親子で一緒に特訓していきたいと思います。

先日の告知記事でお伝えしたとおり、10月23日(金)に開催された pmconf 2026 福岡会場に登壇してきました!本記事はその続編です。12月11日(金)の大阪会場には弊社取締役CPO/CAIOの山崎が登壇するので、福岡の熱気をそのまま大阪につなげられればと思っています。

www.m3tech.blog

登壇中の様子。とても良い緊張感の中でお話しできました^^

  • はじめに
  • 登壇内容:『逆張り思考』のプロダクトマネジメント 〜非連続な価値を生み出す意思決定アプローチ〜
  • 登壇ネタの誕生秘話
    • きっかけはCPO山崎との1on1
    • PdM定例で「逆張り」をぶつけてみた
  • 登壇当日、白熱したDiscuss with the Speaker
  • まとめ
  • We are hiring!!
続きを読む

【M3 Tech Blog 1000記事達成記念】エムスリーテックブログ1000記事を全部分析して分かった読まれる技術記事のヒミツ

こんにちは、エムスリーエンジニアリンググループ 業務執行役員 VPoEの河合(@vaaaaanquish)です。エムスリーテックブログは投稿記事が1000を超えました🎉

2017年9月、最初の記事から約9年。 合計185人のエンジニア・QA・デザイナー・プロダクトマネージャーが書いてきた1000本の記事を、今回すべて集めて分析しました。業界の時代の変遷から、エムスリーらしい記事まで、まるっと振り返る、そんな1記事となります。

  • エムスリーテックブログについて
  • どのような記事が話題になってきたのか
  • 他の会社と比較してみると
  • どうやって良い技術記事を生み出しているのか
  • おわりに
    • We are hiring
      • エンジニア採用ページはこちら
      • カジュアル面談もお気軽にどうぞ
      • インターンも常時募集しています
続きを読む

エムスリーはpmconf 2026の全会場でプラチナスポンサー&登壇します!〜福岡・大阪・東京でお会いしましょう〜

皆さんこんにちは、こんばんは。朝晩がすっかり冷え込んできて、そろそろキャンプの季節到来だとソワソワしている取締役CPO/CAIOの山崎です。 今更ながら新品購入してまだ火入れしていないWolf&Grizzlyの焚き火台「Fire Safe」の火入れが今から楽しみで仕方ありません^^。 尾上製作所のコンパクトピザオーブンIIも良い感じに乗るみたいなので、焚き火ピザにもチャレンジしてみたいと思っています。

まだ火入れしていないWolf&Grizzlyの焚き火台「Fire Safe」。合わせて使うゴトクはBoundless Voyageのチタン。

そしてもう一つ、今年もこの季節がやってまいりました。そう、プロダクトマネージャーカンファレンス、pmconfです!

昨年のpmconf 2025では大阪会場で登壇し、東京会場にも参加して多くの学びを得ることができました。

www.m3tech.blog

そして今年のpmconf 2026では、エムスリーとして福岡・大阪・東京の全会場でプラチナスポンサーを務めることになりました。さらに、全会場でエムスリーのメンバーが登壇します!

本記事ではその告知をします。

  • pmconf 2026について
  • 全会場でプラチナスポンサーに採択いただきました!
  • 全会場で登壇が決まりました!
    • 福岡会場(10/23):阪口登壇
    • 大阪会場(12/11):山崎登壇
    • 東京会場(12/17・18):泉登壇
  • まとめ
  • We are hiring!
続きを読む

Claudeが実装したE2Eテストをレビューするツールを自作してみた

こんにちは。エムスリーのQAチームの須賀です。

私が担当するチームでは、開発経験のないQAエンジニアの方もClaudeを用いてPlaywrightのE2Eテストを実装しています。 Claudeを用いることでE2Eテストの実装自体は簡単になりましたが、Claudeが実装したコードは「テスト実行は成功するがテスト手順や操作対象が誤っている」こともあります。そのため、Claudeが実装したE2Eテストの振る舞いが正しいかどうかは人がチェックする必要があります。

自分でE2Eテストを実装する場合は、実際の画面を見ながら実装するため「このコードが画面のどの要素を操作しているか」は感覚的に分かります。

一方、Claudeにテストコードを書かせる場合、例えば次のようなコードを見ても、削除対象が正しいかどうかを確認するには一手間必要です。

await page.getByRole('row', { name: orderId }).getByRole('button', { name: '削除' }).click();

そこで、私はE2Eテストのテスト手順が正しいかをレビューするためのツールを作りました。今回はそのツールを紹介いたします。

続きを読む

geohash について知ったので、パン屋巡りに使えないか考えてみた

夏の旅行で撮った馬の写真
※ 記事とは何の関係もない、夏の旅行で撮った馬の写真

メディカルマーケティングオートメーションチームの山本(@hiro_o918)です。 本記事はメディカルマーケティングオートメーションチーム(Unit2)のブログリレー2日目の記事です。 前回は中村さんの「Rustで自己言及プログラムであるQuineを作っていく」でした。

最近、場所をハッシュ値で持つ geohash という概念を学びました。休日にたまにパン屋巡りをするのですが、これを応用すれば効率的にパン屋を巡れるんじゃないかと思いついたので、考えたことを書いていこうと思います。 ただ、人間の胃には限界があるため、実際にこのとおり巡るのは難しく、あくまで乱数で作ったダミーのパン屋を使ったシミュレーションです。前半は「次に行く 1 軒を探す」話、後半は「それを繰り返して、全部のお店を回る順番を作る」話になります。

続きを読む

Rustで自己言及プログラムであるQuineを作っていく

はじめに

エムスリー株式会社 メディカルマーケティングオートメーションチームの中村(@inakam00)です。 本記事はメディカルマーケティングオートメーションチーム(unit2)のブログリレー1日目の記事です。

エムスリーテックブログではお馴染みとなりつつあるQuineを、今回はRustで作ってみました。

  • はじめに
  • Quineについて
  • RustでM3 Quineを作る
    • 完成品
    • コードを3つのパートに分ける
    • 空白の代わりにコメントを使う
    • マスク情報も英字にしてコードに溶け込ませる
    • raw文字列と文字エスケープ
      • raw文字列の終端記号
      • 置換処理の重複防止
      • 空白文字の保持
  • おわりに
  • 編集後記
  • We are hiring!!
    • エンジニア採用ページはこちら
    • カジュアル面談もお気軽にどうぞ
    • インターンも常時募集しています
続きを読む

git worktree大増殖で困っていた

Gitのworktreeサブコマンドは、AIエージェント開発が普及してから急によく知られるようになった感があります。実際にこれが登場したのはもう10年前、2016年のことだそうですね。私自身は業務の性質上、複数の依頼案件を並列で進めることが多くてAIエージェントが出てくる前からworktreeみたいなことをしていました。同じリポジトリを何個もローカルに別々にcloneしてあっちへ行ったりこっちへ来たりと作業していたんです。それで昨今の流行でworktreeサブコマンドの存在を知ったときには悔しいのなんの。

とはいえ、worktreeを使って(AIエージェントも使って)超多並列で開発業務をやっているとやはり問題になってくるのがworktreeディレクトリが溢れかえってしまう問題です。ディスク残量を圧迫される、とまでなる方は少ないと思いますが、脳のコンテキストが圧迫されます。どのディレクトリがなんだっけ? 我々の脳のコンテキストサイズはそう大きくはありません。こんにちは、エムスリーエンジニアリンググループUnit9(エビデンス創出プロダクトチーム)の三浦[記事一覧 ]です。データ基盤チーム & Unit9ブログリレー5日目の記事になります。前回は木田さんのKestraとAmazon EKSのキャパシティプランニング - JVMに思いを馳せながらでした。

続きを読む