タグ

ブックマーク / www.m3tech.blog (76)

  • レビュー依頼の優先度について考えていたら、レビュー依頼をスコアリングしてソートするツールができた - エムスリーテックブログ

    こちらはAI機械学習チームブログリレー8日目の記事です。前回のブログは高田さんの「AI機械学習チームで学んだ開発技法で趣味の通知系ツールを量産した」でした! www.m3tech.blog エムスリーエンジニアリンググループ AI機械学習チームでソフトウェアエンジニアをしている中村(po3rin) です。 「レビュー依頼の優先度」といえば自分の作業とレビューのどちらを優先するかという意味での「優先度」の印象ですが、今回は複数あるレビュー依頼の中で、どのレビューから見ていくかという意味での「優先度」の話をします。 レビューの優先度を考えていく中で、「これは自動化したら面白いのではないか」と思い立ち、レビューの優先度をスコアリングするツールを作ったので、その経緯を簡単に紹介していきます。 レビューの優先度の再考 先に見るべきレビュー依頼の観点 急ぎ系のマージリクエスト メンションされてか

    レビュー依頼の優先度について考えていたら、レビュー依頼をスコアリングしてソートするツールができた - エムスリーテックブログ
    fumikony
    fumikony 2024/08/16
  • 市区町村マスタを手に入れろ、そして更新し続けろ - エムスリーテックブログ

    全国の市区町村の名前とコードをデータベーステーブル化したもの、すなわち市区町村マスタはITシステムを作っていれば何かしらの場面で必要になるものです。 ではその市区町村マスタを作るための元データはどこから手に入れたらいいものか。 そして「作る」というのもありますが、市区町村は再編されるものですから最新の変更にどう追従するか、しかもそれを自動化できるかというのも大いに気になるところですね。 エムスリーエンジニアリンググループ三浦(@yuba@reax.work) [記事一覧 ]です。 Unit1(製薬プロモーション)およびUnit9(治験臨床研究支援)のエンジニアです。 今回は私も皆様とまったく同じように市区町村マスタのデータ源に悩んでいろいろ調べましたので、それで得た知見を共有させていただこうと思います。今回は代表的な3つのデータソースをご紹介し比較していきます。 ほしいのはこんな感じのデ

    市区町村マスタを手に入れろ、そして更新し続けろ - エムスリーテックブログ
  • フルスクラッチして理解するOpenID Connect (1) 認可エンドポイント編 - エムスリーテックブログ

    こんにちは。デジカルチームの末永(asmsuechan)です。 この記事では、OpenID Connect の ID Provider を標準ライブラリ縛りでフルスクラッチすることで OpenID Connect の仕様を理解することを目指します。実装言語は TypeScript です。 記事のボリュームを減らすため、OpenID Connect の全ての仕様を網羅した実装はせず、よく使われる一部の仕様のみをピックアップして実装します。この記事は全4回中の第1回となります。 なお、ここで実装する ID Provider は弊社内で使われているものではなく、筆者が趣味として作ったものです。ですので番環境で使用されることを想定したものではありません。なんなら私は ID Provider を運用する仕事もしておりません。 1 OAuth 2.0 と OpenID Connect 1.1 用語の

    フルスクラッチして理解するOpenID Connect (1) 認可エンドポイント編 - エムスリーテックブログ
  • 間質性肺炎を検出するAIを開発し、その有効性を検証した研究を論文化しました - エムスリーテックブログ

    こんにちは、AI機械学習チームの浮田です。最近、私が筆頭著者の論文が公開されたので、今回はその紹介をします。 発表した論文はこちらです: www.ncbi.nlm.nih.gov この論文では、 胸部X線 (レントゲン) から間質性肺炎を検出するAIの評価を行いました。 結果、このAIを使うことで医師の読影成績が統計的有意に改善しました。 このAIを使うことで間質性肺炎の見落としを減らすことができることが期待されます。 エンジニアリンググループで論文を書くのは珍しい機会でしたが、査読対応など大変な時も経て無事公開することができました。 図1. 今回開発・検証した医療AIの実際の画面。プレスリリースより転載 今回開発・検証した医療AIの概要 有効性を検証するための臨床試験 目的 データセット、実験設定 結果 評価方法の詳細 感想 We're hiring! 今回開発・検証した医療AIの概要

    間質性肺炎を検出するAIを開発し、その有効性を検証した研究を論文化しました - エムスリーテックブログ
  • DMARCの対応って進んでますか? - エムスリーテックブログ

    こんにちは。エムスリーでSREやセキュリティに従事している山です。 以前に、「Gmailのメール認証規制強化への対応って終わってますか?」という記事を書かせていただいておりますが、そこでちょい出しだけしたDMARCについて書かせていただきたいと思います。 www.m3tech.blog Gmailへの対応を実施するだけならば、「とりあえずよくわかんないけど入れておけばOK」なのですが、そもそもDMARCは何のために存在していてどのように活用にするのかというところに触れていきたいと思います。 DMARCとは SPF/DKIM DMARC登場 DMARCで実施できるポリシー三種 ポリシーの強化 強化できるか DMARCレポート RUA/RUFの二種のレポート DMARCレポートの確認ツール どう判断するか メール転送 今後 まとめ We are hiring! DMARCとは DMARCの日

    DMARCの対応って進んでますか? - エムスリーテックブログ
  • 3年間Stripe Connectを運用した経験を共有します - エムスリーテックブログ

    こちらはエムスリー Advent Calendar 2023の22日目の記事です。 こんにちは、エムスリーエンジニアリンググループ、デジスマ診療チームの山 (id:shunyy) です。 医療機関向けSaaSであるデジスマ診療は、開発開始からちょうど3年が経ち、現在では予約・問診等、多様な機能を提供していますがリリース当初は決済機能のみを提供していました。そんなデジスマのコア機能である決済機能はStripe Connectを利用しており、今回は3年間運用した学びを共有したいと思います。 デジスマ診療のプロダクトの内容は以下のスライドを御覧ください。 speakerdeck.com そもそもStripe Connectとは何なのか Stripe Connectのアカウントタイプ・支払いタイプについて デジスマ診療の全体構成 追加開発事例 Amazon AppFlowを利用したBigQuer

    3年間Stripe Connectを運用した経験を共有します - エムスリーテックブログ
  • メール配信システムを SaaS から新規社内システムへ移行した - エムスリーテックブログ

    この記事はエムスリーAdvent Calendar 2023の20日目の記事です。 エムスリーエンジニアリングG コンシューマチームの松原(@ma2ge)です。 今回はコンシューマチームで利用していたSaaSのメール配信システムを、新規に開発した社内システムに移行した経緯や設計時に意識したことなどについて紹介します。 最近使っているキーボードの様子 背景 今回移行する契機となったのはメールの配信数増加に伴うSaaSの利用料金増です。 特に定期的に送るメルマガ配信については、配信量も多く利用コストを押し上げる要因となっていました。 そのためメルマガ配信で大量に使用する部分についてのシステム移行検討が始まりました。 移行検討 SaaSから移行後のシステムについて試算すると、システムの開発や利用料といったコスト面では社内で構築したシステムの方が大幅にコストが下がることがわかりました。 しかしなが

    メール配信システムを SaaS から新規社内システムへ移行した - エムスリーテックブログ
  • Idempotency-Keyヘッダによるマイクロサービスの冪等性の担保 - エムスリーテックブログ

    こちらはエムスリー Advent Calendar 2023の15日目の記事です。 デジスマチームの田口です。 去年のアドベントカレンダーでイベント駆動アーキテクチャの記事を書きましたが、ありがたいことにデジスマ診療のサービスとしての成長も著しく、開発も一層活発になっています。 去年と比較してどれくらいスケールしたかはCTOでありデジスマPdMでもある山崎さんがpmconf 2023で発表した資料にもあるので、興味がある方は是非ご覧ください。 speakerdeck.com 記事では去年の記事でも少し触れた「冪等性」について、デジスマチームでの考え方・実装についてまとめます。 なぜ冪等性が重要か Idempotency-Key ヘッダ デジスマでの実装 おわりに We are hiring!! なぜ冪等性が重要か デジスマ診療(以降デジスマ)はQRコードによるチェックインや自動後払い、オ

    Idempotency-Keyヘッダによるマイクロサービスの冪等性の担保 - エムスリーテックブログ
  • GKEでMLバッチ運用のコツ - エムスリーテックブログ

    この記事はエムスリーAdvent Calendar 2023とMLOps Advent Calendar 2023の12日目の記事です。 AI機械学習チームの北川です。 最近はのかまってアピールがすごすぎて、よく仕事の邪魔されます。 かまって欲しがる 現在AI機械学習チームではMLのバッチをGoogle Kubernetes Engine(GKE)上で運用しています。 現在数えてみたところ240個以上のバッチがGKE上で動いているようです。 AI機械学習チームでは2019年頃から約4年ほどGKE上でMLバッチを運用しています。 その間にコストの最適化や安定したバッチの運用などに力を入れてきました。 この記事では、主にスケールインとコスト最適化について説明しようと思います。 チームのMLについて全体を把握したい場合は以下の記事が詳しいです。 www.m3tech.blog GKEの

    GKEでMLバッチ運用のコツ - エムスリーテックブログ
  • 年末だしRedashのクエリ棚卸しでもしましょう (調査用サンプルクエリ付き) - エムスリーテックブログ

    これはエムスリー Advent Calendar 2023の9日目の記事です。 前日の記事はSREチーム後藤の「共有会をより効果的にするために考えたあれやこれ」でした。 エムスリーエンジニアリンググループ データ基盤チームの木田です。 師走です。12月といえば年末に向けて大掃除の季節です。 古来日では12月に宮中で「煤払い」という行事を行う風習があったことが、今日年末の時期に大掃除をする由来とされているそうです。 私の自宅はまだ何も手をつけられていませんが、せめてBIツールの中だけでもということでRedashのクエリ棚卸しをした話*1をご紹介します。 エムスリーにおけるRedashの活用状況 長年の運用の結果起きた性能問題 問題の特定と発生原因 Workerの増設 クエリの棚卸しと改善 使われていない定期実行クエリの停止 サンプル1 直近参照なしかつ定期実行クエリ クエリの実行時間改善

    年末だしRedashのクエリ棚卸しでもしましょう (調査用サンプルクエリ付き) - エムスリーテックブログ
  • 共有会をより効果的にするために考えたあれやこれ - エムスリーテックブログ

    この記事は エムスリー Advent Calendar 2023 の 8 日目の記事です。 前日は小栗さんによる kannonを実プロダクトに組み込んで3倍高速化を達成した話 でした こんにちは、SREチームの後藤です。 エムスリーでは各チームのSREが集まって情報共有をする SRE Meetup という共有会を7月から新たに始めました。 このように情報共有のために集まるということは一般的に良くあることかと思いますが、効果的に運営していくには実は考えることが多いです。 今回はSRE Meetupの企画から実施までに意識して取り組んだ工夫を紹介していきたいと思います。 背景:エムスリーのSREを取り巻く組織事情 SRE Meetupの開催へ向けて 1. 目的意識をしっかりと持って集まる。 2. 双方向のコミュニケーションを重視する 3. 主催者が情熱をもって取り組む 実際にやってみてどうだっ

    共有会をより効果的にするために考えたあれやこれ - エムスリーテックブログ
    fumikony
    fumikony 2023/12/08
  • 9時間足すんだっけ引くんだっけ問題~あるいは、諸プログラミング言語はいかにタイムゾーンと向き合っているか - エムスリーテックブログ

    私は日付時刻の処理が大好きです。 タイムゾーンの問題でデータ抽出が9時間分漏れていたとか、朝9時の始業前のログが昨日付けになってしまっていたなんていう問題が起こると喜んじゃうタイプ。 そんな私にとって、各プログラミング言語が標準で持っている日付時刻型クラスにはそれぞれ思うところがあり、今日はちょっとその品評会をしてみたいと思います。 エムスリーエンジニアリンググループ、Unit1(製薬企業向けプラットフォームチーム)三浦(@yuba@reax.work) [記事一覧 ]がお送りいたします、エムスリー Advent Calendar 2023の2日目です。 至高の日付時刻型を持つ言語、BigQuery SQL 不足はないが蛇足、Java 8 日付時刻で画竜点睛を欠いたC# C#よりややまし、Python 型は良い構成、なのに命名と処理関数で損しているPostgreSQL まとめ We ar

    9時間足すんだっけ引くんだっけ問題~あるいは、諸プログラミング言語はいかにタイムゾーンと向き合っているか - エムスリーテックブログ
    fumikony
    fumikony 2023/12/02
  • 技術書典15の会場で感じた技術の共有空間 - エムスリーテックブログ

    共有空間とは エムスリーVPoEの河合(@vaaaaanquish)です。エムスリーエンジニアリンググループより有志のエンジニアが集まり、11/12に開催された『技術書典15 オフライン』に新刊を携えて参加しました。 会社や個人、技術分野、クラスタの垣根を超えて、技術で繋がり気付きを与えられ、より技術が好きになる空間だったなと感じた当に良い1日でした。 技術書典会場での出会い エムスリーテックブック5とエムスリーブース おわりに We're hiring !!! 技術書典会場での出会い 私自身は、過去にもエムスリーテックブックに寄稿しているのですが、オフラインでの技術書典は初めての参加でした。 会場では、実際に眼の前で詳しく話を聞きながら見誌を読むと、つい買ってしまうコミケ現象を感じました。 私は、機械学習関連のや企業vimから移行チャレンジしたいと常々思っていたVSCode関連

    技術書典15の会場で感じた技術の共有空間 - エムスリーテックブログ
  • Gmailのメール認証規制強化への対応って終わってますか? - エムスリーテックブログ

    こんにちは。エムスリー・QLife(エムスリーのグループ会社)・エムスリーヘルスデザイン(エムスリーのグループ会社)でエンジニアとして各種作業に関わっている山です! 以前もメール送信の話を書かせていただいたことがありますが、今回もまたメールネタとなります。今回のお題はメールセキュリティです。 大量メール送信のための予備知識 - エムスリーテックブログ すでにご覧になった方もいるかと思いますが、次のようなニュースが流れています。 www.proofpoint.com この「GoogleYahooの新Eメール認証要件」ってつまりどういうことよ? というところを具体的にどのように進めているかについて書かせていただきたいと思います。 2023/12/18追記 : Googleからメール送信にTLSを使うことが追加要件として示されました。 TL;DR とりあえず何から始める? 何はともあれ実際に

    Gmailのメール認証規制強化への対応って終わってますか? - エムスリーテックブログ
  • テーブルを一個追加するたびにGRANT文書かないといけないの、やめられます - エムスリーテックブログ

    WebシステムがPostgreSQLにアクセスするときのDBロールはどうしていますか? postgres みたいな全能ロールをそのまま使う⋯⋯ でも動くシステムにはできるんですが、仮にアプリサーバ側の脆弱性を突かれたときに即DBの全権限まで危険にさらされる構成はインターネットにさらす番システムではやりにくく、SELECT/INSERT/UPDATE/DELET権限だけ付けたデータアクセス専用のロールを作ってこれを使うのが一般的かと思います。 すると手間になってくるのがテーブルを追加したときにGRANTが必要なことですし、それをうっかり忘れて番リリース後に権限エラー発生みたいな事故も起こりえます。 日も超小物のお題をお送りします、エムスリーエンジニアリンググループ、Unit1(製薬企業向けプラットフォームチーム)三浦(@yuba@reax.work) [記事一覧 ]です。 新規テーブ

    テーブルを一個追加するたびにGRANT文書かないといけないの、やめられます - エムスリーテックブログ
  • いいねとその通知機能をDynamoDBで設計したら思ったよりムズい - エムスリーテックブログ

    【Unit4 ブログリレー4日目】 こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 今回は、SNSではごく一般的ないいねとその通知機能をDynamoDBを利用して実装したら思ったより大変だったので、その詳細をご紹介します。 キャナルシティ劇場は、福岡県福岡市博多区の複合商業施設「キャナルシティ博多」のシアタービル最上階に位置する劇場。文には特に関係ありません。 m3ラウンジ m3ラウンジのいいねとその通知の要件 RDBで実装したらどうなるか いいね機能 通知機能 DynamoDBで実装する いいね機能 通知機能 いいねする いいねを取り消す 通知を表示する 未読の通知の取得 未読の通知数 未読の通知を既読にする テーブル設計むずい PKとSKに何を選ぶか LSIは途中から作れない DynamoDBをローカルで動かして設計する まとめ We are h

    いいねとその通知機能をDynamoDBで設計したら思ったよりムズい - エムスリーテックブログ
    fumikony
    fumikony 2023/08/26
  • 「QAって何をする人?」~上流工程におけるQAの役割とその重要性~ - エムスリーテックブログ

    【QAチーム ブログリレー6日目】こんにちは。エンジニアリンググループ クオリティアシュアランス(QA)チームの今井(@tak-imai-m3)です。 新年度が始まってから3か月が終わり、各社新人研修も終わった頃かと思いますが、QAについての研修はありましたでしょうか? QAはプロダクトマネージャーやエンジニアなど様々な方々と仕事をしていますが、具体的な業務内容のイメージが湧かないという声を聴くことがあります。 自分も同様の質問を先日いただきました。 先日3時間並んでべたおにぎり屋さん 今回はその時に回答した内容も交えて、普段QAがどのような業務をしているのか、 また各フェーズにおいてどのような思考で業務をしているのかをご紹介できればと思います。 特に下流工程でのQA業務がイメージされ易いことは承知しておりますが、上流工程におけるQA業務とその重要性についてもご紹介できればと思います。

    「QAって何をする人?」~上流工程におけるQAの役割とその重要性~ - エムスリーテックブログ
  • エンジニアリングの時間を生み出すドキュメンテーション術 - エムスリーテックブログ

    【データ基盤チーム ブログリレー 3日目】 こんにちは、エンジニアリンググループの石塚です。 趣味は筋トレです。好きなトレーニングはレッグカールです。今年2023年の1月に第一子が爆誕し、毎日子供の笑顔に癒されております。一方であまり言い訳にはしたくはないですが、事実自分自身の自由に使える時間は少なくなったなと感じております。そんな中でもトレーニングの時間は作りたいので、24時間ジムに契約してと娘が寝ている早朝の時間にウホウホトレーニングをしている今日この頃であります。時間のありがたみをとても感じるようになりました。 これは仕事でも同様かと思います。有限な時間の中でタスクを取捨選択して価値ある成果を上げていく事が仕事では求められます。ドキュメンテーションはその価値ある成果につながる時間を増やす一助になるかもしれません。 この記事では、ドキュメンテーションの必要性について言語化します。改め

    エンジニアリングの時間を生み出すドキュメンテーション術 - エムスリーテックブログ
  • エムスリー、データ基盤チームはじめました - エムスリーテックブログ

    エンジニアリンググループ、データ基盤チームの鳥山(@to_lz1)です。 私は過去何度かデータ基盤に関連する記事を出していますが、データ基盤チームという肩書を付けるのは今回が初めてとなります。それもそのはず、エムスリーでは2023年4月に新たにデータ基盤チームを新設したからです*1。 エンジニアリンググループ紹介資料にシュッと追加された「データ基盤チーム」 そこでこの記事では、チーム創設の背景や立ち上げ期に行ったこと、そして今取り組んでいることについて紹介させて頂きます。 データ基盤のみならず、エムスリーエンジニアリンググループの雰囲気を知る一助になれば幸いです。ということで、この記事は 【データ基盤チーム ブログリレー1日目】です。 チーム創設の背景 データの品質担保 リアルタイムのデータ連携 より大規模・複雑なデータ活用 立ち上げ期にやったこと ミッションの策定 他チームとの連携強化

    エムスリー、データ基盤チームはじめました - エムスリーテックブログ
  • 「小さいアプリケーションの作り直しだし,すぐ終わるだろ〜」 - エムスリーテックブログ

    ……と思っていたら5ヶ月かかりました. 【基盤開発チーム ブログリレー3日目】 「ほんとうにすぐ終わると思ったのかね」 こんにちは,エムスリーエンジニアリングGの榎田です.趣味数学テレビゲームです.最近はタクティクスオウガ リボーンを遊んでいます.システィーナをバーサーカーで運用しているのが弊ユニオンの個人的なイチオシポイントです. 閑話休題,ソフトウェア開発において「技術的負債」はつきものです.我々は無限の開発時間が取れるわけでも,神授の智慧を持っているわけでもないので,作ったものは何かしらの要因で負債を抱え,抱えた負債は(多くの場合,知らず知らずのうちに)増えます.負債だらけになってしまったソフトウェアの保守管理は大変ですし,負債になりにくいソフトウェアを作るのも難しいです.ではどうして負債を抱えてしまうのか.負債を返すことの何が大変なのか.負債リスクを予見するのはなぜ難しいのか.

    「小さいアプリケーションの作り直しだし,すぐ終わるだろ〜」 - エムスリーテックブログ