エムスリーテックブログ

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

AWS

入社4ヶ月目で73時間かかるバッチ処理を7倍以上高速化した話

こんにちは。エンジニアリンググループの武井です。 私は現在、デジカルチームに所属し、クラウド電子カルテ、エムスリーデジカルの開発に携わっています。 昨年夏にエムスリーに入社し、早くも半年が経過しました。 digikar.co.jp この記事では、私が入社し…

3年間Stripe Connectを運用した経験を共有します

こちらはエムスリー Advent Calendar 2023の22日目の記事です。 こんにちは、エムスリーエンジニアリンググループ、デジスマ診療チームの山本 (id:shunyy) です。 医療機関向けSaaSであるデジスマ診療は、開発開始からちょうど3年が経ち、現在では予約・問診…

メール配信システムを SaaS から新規社内システムへ移行した

この記事はエムスリーAdvent Calendar 2023の20日目の記事です。 エムスリーエンジニアリングG コンシューマチームの松原(@ma2ge)です。 今回はコンシューマチームで利用していたSaaSのメール配信システムを、新規に開発した社内システムに移行した経緯や設…

AWS Lambda でも Rails で Web 開発

本日はコンシューマチームのブログリレー2日目です。 エムスリーエンジニアリングG コンシューマチームの松原(@ma2ge)です。 今回は以前筆者が M3 Tech Talk で話した AWS Lambda での Web アプリ開発に Rails を使う内容について、 若干内容を変えつつ Tech…

ChatGPT Retrieval Pluginに任意のベクトル検索エンジンProviderを実装する

今回はChatGPT Retrieval Pluginがサポートしているベクトル検索エンジンではなく、AWSで利用できる[OpenSearch](https://opensearch.org/) のProviderを実装して、ChatGPTにOpenSearchのベクトル検索を提供する方法を試してみました。

AWS Advanced JDBC WrapperによるAurora Postgresの高速フェイルオーバー

【 デジスマチーム ブログリレー1日目】 こんにちは。 デジスマチームの山本です。 クリニック向けDXサービスであるデジスマ診療のWeb フロントエンド・バックエンド・インフラを担当しています。 今回は先日AWSから発表されたaws-advanced-jdbc-wrapperにつ…

StepFunctionsでDynamoDBからS3にexportする

AWS

【マルチデバイスチーム ブログリレー6日目】 こんにちは、エンジニアリンググループ マルチデバイスチームの大和です。 弊チームではAPIサーバを動かす基盤としてAWSを活用しており、ネイティブアプリから実行されるAPIサーバやDB等についてもAWS上で動作し…

イベント駆動アーキテクチャの勘所

こちらはエムスリーAdvent Calendar 2022の24日目の記事です。 こんにちは、デジスマチームの田口(id:ken-tunc)です。 私達のチームではQRコードによる受付や自動後払いなど、新しい診療体験を提供するデジスマ診療というサービスを開発しています。 開発メ…

Google BigQuery Connector for AWS Glue で AWS から BigQuery にデータを書き込んでみた

こんにちは、エムスリーエンジニアリンググループ コンシューマチームの園田です。 Google BigQuery Connector for AWS Glue を使って AWS 上にあるデータを BigQuery に書き込むというのを Terraform でやっていきます。 BigQuery から AWS へのデータ取り…

API on GKE に高速で認証をつけるIdentity-Aware Proxy × Identity Platform

Identity-Aware Platform × Identity Platformによるメールアドレス/パスワード認証をを採用した所感をお伝えします。

秘密情報をGitLabに格納することなくGoogle Cloud / AWSに対して認証する

エムスリーエンジニアリンググループ AI・機械学習チームの笹川です。 趣味はバスケと筋トレで、このところはNBAはオフシーズンですが、代わりにユーロバスケが盛り上がっていて、NBAに来ていない良いプレーヤーがたくさんいるんだなーと思いながら見ていま…

チームをまたぐ機械学習プログラム実行のプロセスを爆速にする

エムスリーエンジニアリンググループの遠藤(@en_ken) / 佐々木です。私達はBIRというチームでアンケートシステム周りの開発を担当しています。 BIRでは、独自で実施したアンケート調査結果を使った製薬会社等のマーケティング支援する事業を行っています。 …

Datadog導入によるSLOの設定

エムスリーエンジニアリンググループの秦野です。主にアンケートシステムを開発しているBIRというチームに所属しています。 今回、我々のチームにDatadogを導入したのでその経緯と過程についてご紹介したいと思います。 www.datadoghq.com

オンプレで実行されているバッチ (cron + shell script) をAWS Lambdaに移植する方法

こんにちは、エンジニアリンググループの大和です。 弊社ではエンジニアリンググループ全体で継続して脱オンプレを進めており、これまでに多くのDBやサーバを停止してきました。 www.m3tech.blog また、直近ではコンシューマチームでの取り組みが紹介されて…

15年間続いているサービスをクラウドに移行しています (part 2)

こんにちは、エムスリーエンジニアリンググループのコンシューマチームに所属している園田(@ryoryoryohei)です。今回は 15 年以上続いている弊社の C 向けサービスである AskDoctors の AWS 移行で苦労した点や工夫した点などをお伝えしたいと思います。 は…

15年間続いているサービスをクラウドに移行しています

この記事はエムスリー Advent Calendar 2021 の24日目の記事です。 エムスリーエンジニアリングG コンシューマチームの松原(@ma2ge)です。 2021年4月にチーム異動をして、入社当時に所属していたチームにまた戻ってきました。 コンシューマチームでは AskDoc…

GitLab上でよしなに自動実行してくれるTerraformのCIを目指して

こんにちは、エムスリー エンジニアリンググループ の鳥山 (@to_lz1)です。製薬企業向けプラットフォームチームでチームSREとして活動しています。 この記事はエムスリー Advent Calendar 2021 22日目の記事です。 Googleの実践から生まれたSREという職種は…

新卒エンジニア全員がAWS研修に参加してきました

2021年4月に新卒として入社いたしました、永山です。 クラウドサービスであるAmazon Web Services (AWS) は、現在ではWebサービスを運営する企業や、あるいは個人にとっても重要な位置を占める技術としての地位を確立しています。 エムスリーでもサービスの…

AWS Firewall Manager を導入してみた話

AWS

この記事はエムスリーSREがお届けするブログリレーの18日目です。 こんにちは、エムスリーエンジニアリンググループの高澤です。 Unit4(医療系ポータルサイトm3.comの開発・運営が担当のチーム)でチームSREを担当しています。 こちらのサイトのセキュリテ…

誰も知らないインフラコンポーネントをそっとコード化した話

「え、なにこれ。うち、 memcached なんて使ってたっけ……」 エムスリー SRE がお届けするブログリレーの 10 日目。エンジニアリンググループ / 電子カルテチームの山口 (@no_clock) です。 入社直後はサーバサイドメインのソフトウェアエンジニアでした。 SR…

Chaos-Monkey ならぬ Cosmos-Monkey で AWS 費用に秩序をもたらした話

この記事はエムスリー SRE がお届けするブログリレーの7日目です。QLife では稼働時間外の EC2 や RDS を停止する仕組みを Lambda 関数で実装し、導入していました。今回はその仕組みを Golang から TypeScript に移植して、さらに Public に公開したのでそ…

Terraformの謎のdiffと戦っている話

AWS

この記事はエムスリー SRE がお届けするブログリレーの4日目です。 こんにちは。マルチデバイスチームでチーム内SREを担当している大和です。 普段はアプリ向けのAPIサーバについてJava/KotlinおよびTerraformでアプリとインフラを構築しています。 Terrafor…

エムスリーでのクラウド費用監視

こんにちは!エンジニアリンググループ、コア SRE の平岡です。 この記事はエムスリー SRE がお届けするブログリレーの3日目です。 エムスリーでは現在、クラウドプラットフォームとして AWS と GCP を採用しています。プロダクトを開発している各チームには…

Digdag + Embulkをクラウド転生させてデータ基盤運用を圧倒的に楽にした話

こんにちは、エムスリー エンジニアリンググループ / 製薬企業向けプラットフォームチームの鳥山 (@to_lz1)です。 これは エムスリー Advent Calendar 2020 の19日目の記事です。 エムスリーでは現在、各システムのオンプレ環境からクラウドへの移行を急ピッ…

運用中サービスのクラウド移行で得た知見(見積もり・テスト・本番移行)

AWS

<エムスリー Advent Calendar 2020 まで残り4日となりました。Advent Calendar本編に先んじて新卒1〜2年目メンバーが執筆します。> 「生きてるだけで丸儲け」そんな言葉が身に沁みる今日この頃です。 こんにちは。エンジニアリンググループ、新卒2年目の井…

BIT VALLEY 2020 にて『 Infrastructure as "型付き" Code - 急成長する事業のインフラ再構築 』を発表しました

エムスリー エンジニアリンググループの山口 (@no_clock) です。 2020/9/9 (水) 〜 2020/9/12 (土) に開催されたカンファレンス「 BIT VALLEY 2020 」にて、「 Infrastructure as "型付き" Code - 急成長する事業のインフラ再構築」を発表しました。

AWS・オンプレと GCP を VPN で相互接続する際の勘所

こんにちは。エムスリー CTO の矢崎 @Saiya です。 弊社ではクラウド環境の利用や移行を推奨しており、AWS, GCP のマルチクラウドやオンプレミス環境との相互通信を安全に行うために今回 AWS と GCP を VPN で相互接続しました。 しかし、AWS と GCP を VPN …

Amazon SQSに置き換えてパフォーマンスとスケーラビリティを得た話

エムスリー Advent Calendar 2019 5日目の記事です。 やがて君になる、完結しましたね… エンジニアリンググループの山口 (@no_clock) です。 今日は、クラウド電子カルテ「エムスリーデジカル」で、SQSを使ってパフォーマンスとスケーラビリティを得た話です…

1つの terraform で複数 AWS Account をまとめて構築・管理する

AWS

この記事は terraform Advent Calendar 2019, エムスリー Advent Calendar 2019 の 3 日目の記事です。 All your AWS Accounts are belong to us. *1 こんにちは、ここ数年で terraform で書いた aws_vpc + google_compute_network の数がようやっと 30 個ぐ…

AWS AppSync を IAM 認証で使うための graphql-client のアダプター gem を公開しました

こんにちは、エムスリーエンジニアリンググループ 兼 QLife エンジニアの園田 (@ryoryoryohei) です。 AWS AppSync 使ってますか? サーバーレスで GraphQL のエンドポイントを提供できる強力なサービスです。 AppSync には認証方式が現状 4 つあり、そのう…