エムスリーテックブログ

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

SpringBootのdockerイメージを必要最小限に絞りたい(2019年9月版)

こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 先日の中村の記事で宣言してしまったので、 今回は「医師版Stack Overflow」(仮名) のSpringBootのdockerイメージを 必要最小限にまで小さくする際に試したことをまとめました。 …

エムスリーは「iOSDC Japan 2019」にゴールドスポンサーとして協賛&ブース出展します

エンジニアリンググループの松原@ma2geです。 去年参加した iOSDC に今年はゴールドスポンサーとして協賛します。 iOSDC は数日間の大規模なイベントで、iOS と冠しながらもサーバサイドの話まであったりと幅の広いイベントです。 懐も深くて去年は飛び入り…

CycleGANで効果を発揮!画像の構造を抽出する特徴量"MIND"を実装してみる

初めまして!2019年8月中旬からエムスリー エンジニアリングG AIチームで10日間インターンに参加した三澤です。インターンでは「CycleGANを用いてモダリティ(CT, MRI, PETなどの画像撮影装置)の違う画像の変換に関する手法」に関する論文について、Surveyと…

「医師版Stack Overflow」を開発しています

こんにちは。エムスリーエンジニアリングG、プロダクトマネージャーの中村です。 エムスリーは医療の領域、特に医師に向けてサービスを提供しているため、どんなサービスを作っているか外からは見えづらいという声をよく聞きます。そこで今回は、開発中の新…

Kotlin Fest 2019でエムスリー社員(俺)が登壇しました

2019年7月に入社して早いもので、2ヶ月が過ぎました 荒谷(@_a_akira)です。 今回はKotlin Fest 2019で、弊社社員である私が発表しました。 Kotlin Festとは kotlin.connpass.com Kotlin Festは2018年から行われている国内最大のKotlinカンファレンスで、「Ko…

pytest ヘビーユーザーへの第一歩

pytest は Python のユニットテスト・ライブラリのデファクトスタンダードです。 エムスリーでは顧客向けレポートの作成や機械学習の分野でPythonを使っており、(Pythonを使うチームでは)日常的に pytest を扱います。 この pytest ですが、実は意外と入門…

エムスリーは「Kotlin Fest 2019」にことりスポンサーとして協賛&社員が登壇します

こんにちは、エンジニアリンググループの渡辺です。 エムスリーは、8/24 (土)に開催される Kotlin Fest 2019 にことりスポンサーとして協賛いたします! 当日はブースを出展し、弊社のKotlinエンジニアもブーススタッフとして参加していますので、是非お越し…

突撃!隣のキーボード M3 2019

こんにちは、エムスリー エンジニアリンググループ AIチームに今年の2月にジョインしました河合 (@vaaaaanquish) です。 エムスリーテックブログでは今回初めての投稿で緊張しますが、お手柔らかにお願いします。 はじめに 近年、ソフトウェアエンジニアの「…

APIのコードを自動生成させたいだけならgRPCでなくてもよくない?

こんにちは、エンジニアリンググループの福林 (@fukubaya) です。 先月から、今年の秋くらいにリリース予定の新サービスの設計、開発を始めました。 せっかく新しく始めるサービスなので、まだ経験したことがない言語やフレームワーク、技術を使わないと楽し…

【Sansan 藤倉成太×エムスリー 山崎聡】「二者択一の考え方はエンジニアのキャリアを先細りさせるだけ」(エンジニア type 対談後記)

エムスリーエンジニアリングGでVPoEをやっている山崎です。 先日、Sansan株式会社CTOの藤倉さんとエンジニアのキャリアについて対談させて頂きました。対談中に感じたことや、対談を振り返ってみて改めて感じたことについて書いてみたいと思います。 type.jp…

Google Cloud Next '19 in Tokyo & Leaders Circle

こんにちは、CTO の矢崎(id:Saiya)です。 先日、Google Cloud Next '19 in Tokyo とその中で開催される Leaders Circle という会に参加してきました。 かつてないクラウドを体験しよう。 イベント全体の内容などは 公式サイト をご覧いただくとして、ここで…

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

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

Jenkinsをエンジニアでない人も使えるDigdagのWeb UIとして使う

こんにちは、エンジニアリンググループの福林 (@fukubaya) です。 現在、弊社では長年運用され続けているレポート基盤のリニューアルを昨年から続けています。 その一環で、エンジニアでない人も使えるレポート生成UIを実現するため、 DigdagとJenkinsを利用…

ALB 経由で Lambda の Rails を実行してみた

お久しぶりです、エムスリーエンジニアリンググループ 兼 QLife エンジニアの園田です。 今回は、Rails のアプリを AWS の Lambda で動かして、ALB 経由でアクセスしてみようという内容です。 実現するためには ALB から Lambda を呼び出す。 Lambda で Rail…

ドメイン駆動設計座談会 & モデリングハンズオンを開催しました

DDD

エンジニアリンググループの西名(@mikesorae)です。 最近エムスリー社内でドメイン駆動設計(以下DDDと表記)への関心が高まり、社内でも勉強会を開催する流れになりました。 せっかくなので有識者から効率的な学習方法や注意点を学ぼうということで、DDD Comm…

新卒入社2ヶ月目に Datadog Dashboard を Terraform で生成した話

こんにちは、エンジニアリンググループ AI・機械学習チームの榎田(@niflh)です。就活のときに「バイトでプログラムは書いてますが、それより数学してるほうが好きです!」と言ったらエムスリーさんからお声がかかって、インターンを経て新卒入社しました。…

エンジニアリンググループが大学に行ってきたよ

こんにちは、エンジニアリンググループ新卒2年目の青木です。 現在はクラウド電子カルテ「エムスリーデジカル」の開発に携わっています。 先日、慶應義塾大学で行われた講義にエンジニアリンググループとして参加させていただきました! 今回はその時の内容…

SRE Lounge #9 で弊社の取り組みについて話しました

SRE

こんにちは、エンジニアリンググループ SREチームの高橋(@tshohe1)です。 5/29に開催されたSRE Loungeというイベントで「エムスリーはどのようにしてSREをはじめたか」というタイトルで登壇させていただきました! 登壇の場を提供していただいたSRE Lounge運…

Marp CLI (Marp Next) をとりあえず知る・使い始めるためのまとめ記事

Marp Marp は markdown 形式でプレゼンテーションを作成できるソフトウエアです。Markdown で記述したスライドをブラウザ上で描画したり PDF に出力したりできます。 その性質上、万人向けのツールではないところがあります *1。しかし、以下のようなニーズ…

Java Quiz 解答・解説

こんにちは、CTO の矢崎 (@saiya_moebius) です。 JJUG というイベントにて Java Quiz の配布をいたしました。設問はシンプルですが、特に 2 問目からは悩ましい問題だったのではないでしょうか。意識せずに使っている JVM の挙動を知るよいきっかけをご提供…

JJUG 参加レポート

こんにちは、CTO の矢崎 (@saiya_moebius) です。 JJUG というイベントにて、Java Quiz などの配布や登壇発表をいたしました。

JJUG CCC 2019 Spring - Java クイズ

[ Scroll down to read in English ] こんにちは、CTO の矢崎 (@saiya_moebius) です。 只今開催中の JJUG CCC 2019 Spring というイベントで Java のクイズを配布しております。 問題文自体はシンプルですが、JVM の意外な挙動や Java の言語仕様が関わって…

エムスリーは JJUG CCC 2019 Spring にゴールド&ブーススポンサーとして協賛します & CTOが登壇します

こんにちは、マルチデバイスチーム エンジニアの金丸 (@maru333) です。 来たる 5/18(土)、ベルサール新宿グランドにてJJUG CCC 2019 Springが開催されます。 昨年( *1 )に引き続き、エムスリーはゴールド&ブーススポンサーとして、本イベントの開催を後押…

数値で振り返る技術書典6とエムスリーテックブック

エンジニアリンググループの滝安(@juntaki)です。 技術書典6で「エムスリーテックブック#1」を頒布してきました!ご購入いただいた方、お立ち寄りいただいた方、ありがとうございました! 執筆自体にもたくさん学びはあったのですが、単純に参加して売ると…

世界のシステムに令和が反映されるまで

こんにちは、Androidエンジニアの星川 (id:oboenikui) です。 いよいよあと5日で令和となりますね。幸いにもAndroidではアプリ側で扱おうとしない限り和暦は使用されないので安心して改元を迎えられそうです。 (iOSにはシステム設定で和暦表示に切り替える…

難読Rubyコードクイズ問題と解説 in RubyKaigi 2019

RubyKaigi 2019に参加された方もそうでない方もお疲れ様でした。あと数日で到達するゴールデンウィークを指折り数えるowlです。 RubyKaigiでは多彩なセッションにより豊富な知見が得られた他に、Rubyist同士の交流も商店街を貸し切ってのパーティや無料屋台…

「RubyKaigi 2019」にPlatinum Sponsorとして参加しました!(ブース・セッションレポート)

エンジニアリンググループの山口です。4/18(木)〜4/20(土)に開催された「RubyKaigi 2019」に、Platinum Sponsorとして参加しました。 エムスリーのスポンサー協賛は4年目。私は初参加でしたが、参加者の方々のRuby愛を強く感じた3日間でした。 sponsor_booth…

Vue.jsほぼ初心者だけのチームで既存サービスのリニューアルをやってみて得られた知見

こんにちは、エンジニアリンググループの福林 (@fukubaya) です。 2019年3月に僕たちのチームが担当するスマートフォンサイトをリニューアルしました。 リニューアルに際して、せっかくなので新しい技術やフレームワークを採用したいということで、詳しいメ…

TypeScriptの型でなんかすごくがんばる

エンジニアリンググループの冨岡です。 先日、以下のTypeScript用DIライブラリを公開しました。大きな特徴として、解決するために不十分な依存がある場合にコンパイルエラーになるようになっています。 github.com www.m3tech.blog このコンパイル時の型チェ…

TypeScript用のDIライブラリを公開しました

エンジニアリンググループの冨岡です。 TypeScript向けのDIライブラリを公開したので紹介します。 github.com モチベーション Clean Architecture等の設計手法を使ってコードを書いていると、抽象に依存することが多くなってきます。 class CreateUserAccoun…