エムスリーテックブログ

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

ダイヤ可視化ツール技術編

エムスリーの山本です。趣味で作っていたダイヤ可視化ツールの技術的な側面の話をします。 作ったもの ダイヤ可視化ツールです。時刻表ではありません。鉄道路線を比較するにあたって、本数の多寡や速達列車の比率とか本数の減り方とかが一発で分かるように…

ユーザーインタビューを通じてリーン顧客開発を実践する

『リーン顧客開発』の著者 Cindy Alvarez こんにちは。 エムスリーエンジニアリンググループ、プロダクトマネージャーの岩田です。 今回はユーザーインタビューを通じてリーン顧客開発を実践した話を書きます。 MVPの要件が全くミニマムでなくなってしまう、…

Docpediaでの品質計画とQA活動

QA

こんにちは。エンジニアリンググループ QA チームの窪田です。以前、中村の記事や福林の記事で紹介させていただいた、Docpedia チームで QA エンジニア*1 をやっています。 QA エンジニアという職種は所属する組織によって活動内容にバリエーションが有り、…

アンケート作成システムのサーバサイドをKotlin + Quarkus + Doma, CQRSで構築している話

エムスリー エンジニアの岩本です。 現在私の所属しているチームでは、以前作成したアンケートを作るためのシステムのサーバサイドリプレースを検討しています。 ちなみにクライアントサイドは下記のものです。 qiita.com 採用した技術 なぜQurkus? SQLアク…

Goのreflectパッケージと型の内部表現について

エムスリーエンジニアリンググループの木村です。 普段はBIRという医療従事者の会員向けアンケートをベースに、製薬会社へのマーケティング支援を提供するチームでソフトウェアエンジニア兼チームSREをやっています。 入社とほぼ同時にGoを書き始め、そろそ…

代数的データ型とその双対性

こんにちは,エムスリーエンジニアリンググループの榎田(Twitter: @niflh)です.今年度の4月に新卒で入社しました.入社してからは AI・機械学習チームというところで機械学習プロダクトのインフラのお仕事をしていましたが,11月末からチームを異動し,Un…

Goのinterfaceの使いかた 基礎編

エムスリーエンジニアリンググループ/BIRの滝安(@juntaki)です。 BIRはビジネスインテリジェンス&リサーチの略で、そこでは医療従事者の会員向けアンケートをベースに、製薬会社へのマーケティング支援を提供する事業を行っています。BIRではエムスリーで…

Nishika competitions 2nd solution

はじめに はじめまして、エムスリー AI・機械学習チームの河合(@vaaaaanquish)です。 最近、以下機械学習コンペティションにて 182人中 2位 になりました。 Nishikaサービスローンチコンペ AIは芥川龍之介を見分けられるのか? competitions summary(https:/…

SpringBoot + Kotlin + GraphQL のアプリ向けスキーマ設計・実装のプラクティス

こんにちは、エムスリー エンジニアリンググループ マルチデバイスチームの藤原です。 昨年末に医師向けのスマホアプリを新たにリリースしました。 スマホアプリ向けの BFF(Backends For Frontends) も新規に開発したのですが、そこには SpringBoot + Kotlin…

技術書典 応援祭参加のお知らせ

エンジニアリンググループの西名(@mikesorae)です。 新型コロナウイルスの影響により技術書典8自体は残念ながら中止となってしまいましたが、運営の方々の努力により3/7(土)〜4/6(月)の間、オンラインイベント「技術書典 応援祭」が開催されることとなりまし…

推薦アイテムセットの多様性を考慮したBPR論文を実装・実験した

エンジニアリンググループ AIチームの金山 (@tepppei)です。2019年新卒でエムスリーに入社してから早くも1年経ってしまいました。 今回は、 "Bayesian Personalized Ranking for Novelty Enhancement" [Wasilewski and Hurley, UMAP'19] という論文を紹介し…

git submodule はトモダチ!怖くないよ! (チートシート付き)

この画像は本文とは関係ありません。 こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小本です。 みなさん、git submodule コマンドは好きですか?git submodule は特定の状況下では便利なコマンドです。 社内アンケートでも25%が怖いという結果…

Clean Architectureなにもわからないけど実例を晒して人類に貢献したい

こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 これまでは、中村の記事で宣言した 「医師版Stack Overflow」(12/16に正式名称Docpediaとしてリリースされました) の技術的チャレンジの 記事を続けて書いていたのですが、今回は…

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

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

エムスリー Advent Calendar 2019 まとめ!

エムスリーエンジニアリンググループ、新卒2年目の青木です。みなさん年末はいかがお過ごしでしょうか?自分は風邪をひいています。健康にはお気をつけください。 それはさておき、2019年も2018年に続いて完走したのでまとめます! qiita.com

VPoEとしてこの2年間を振り返って

こんにちは。エムスリーエンジニアリンググループ執行役員*1兼VPoE兼プロダクトマネージャーの山崎です。 本ブログはエムスリー Advent Calendar 2019の25日目の記事です。 エムスリー Advent Calendar 2019の締めとして何を書こうか色々と迷ったのですが、…

k8sハニーポットとログ出力の話

本記事はエムスリー Advent Calendar 2019 - Qiitaの24日目の記事です。 こんにちは。エムスリーエンジニアリンググループの木村です。 業務ではBIRというチームでアンケートシステムの開発をやっています。 今回は個人的に構築しているk8sハニーポットシス…

サーバサイドアプリケーションにおけるリリース時の不確実性を減らす

エムスリーエンジニアリンググループの松原@ma2geです。この記事はエムスリーAdvent Calendarの23日目の記事です。 実は10月よりチームリーダーからエンジニアに戻り、開発メインの仕事を再びしています。 エンジニアリングマネージャーの振り子という話が一…

業務を効率化するためにツールを自作する ~ Emacs と時々 Electron ~

この記事はエムスリー Advent Calendar 2019 の22日目の記事です。 こんにちは。エムスリーエンジニアリンググループ、新卒2年目の青木です。 現在はクラウド電子カルテ「エムスリーデジカル 」でソフトウェアエンジニア兼チームSREをやったり、別チームで W…

機械学習パイプラインライブラリluigiのshell補完ツールを作った

こんにちは。Python謹製のshellを使って早3年、エムスリーエンジニアリングGの河合 (@vaaaaanquish) です。 この記事はエムスリー Advent Calendar 2019 の21日目の記事です。 エムスリー AIチームでは、機械学習パイプラインとして「luigi」及び、そのwrapp…

Scalaで参照透過に作用を扱う

エムスリーエンジニアリンググループの冨岡です。この記事はエムスリーAdvent Calendar及びScala Advent Calendarの20日目の記事です。 はじめに Future の特徴 Future の長所 標準ライブラリで提供されている 抽象化の戦略がわかりやすい Future の短所 処…

3Dアバター化しながらプレゼンするWebアプリを作った話

(デモ用の3Dモデルは「ニコニ立体ちゃん」をお借りしています) 概説 技術スタック three-js/three-vrm clmtrackr-js 実装 工夫をつける まばたき リップシンク パラメータのバリデート まとめ 余談 We are hiring! 概説 この記事は エムスリー Advent Calend…

登壇経験無しの私がなぜ2週間連続で登壇できたのか

この記事は エムスリー Advent Calendar 2019 の18日目の記事です。 こんにちは、エンジニアリンググループ マルチデバイスチームの大和です。 先月の半ばから末にかけて、JJUG CCC 2019 FallとDevelopers Boost 2019の2つのカンファレンスで登壇しました。 …

新規アプリでGraphQLを全面採用した話

この記事は エムスリー Advent Calendar 2019 の17日目の記事です。 こんにちは、エムスリーエンジニアリンググループ マルチデバイスチームの金丸 (@maru333) です。 アナと雪の女王2 は最高でしたね。ただ、劇中の波のシーンが実写か3DCGかを考えだすと気…

MediaStream APIで画面キャプチャとマイクからの音声を同時に収録する

熱海のMOA美術館で撮影した景色 この記事は エムスリー Advent Calendar 2019 の 16 日目の記事です。 こんにちは、 エムスリーエンジニアリンググループ、プロダクトマネージャーの岩田です。 今回はMediaStream APIで画面キャプチャとマイクからの音声を同…

Googleフォームへの投稿を Google Apps Script で Amazon SQS にメッセージ送信する話

この記事は エムスリー Advent Calendar 2019 の15日目の記事です。 こんにちは。エンジニアリンググループ、SREチームの平岡(@uhtter)です。 思い返せば早1年前、エムスリーに入社してから最初に書いたのが AdventCalender の記事でした。 今回は、エムスリ…

Vueでレイアウトの切り替えを高階コンポーネントで実装する

この記事はエムスリー Advent Calendar 2019の14日目の記事です。 ご無沙汰しております、エムスリーエンジニアリンググループ 兼 QLife チーフアーキテクトの園田 (@ryoryoryohei) です。 今回はフロントエンドライブラリである Vue.js (というか vue-rout…

じゃんけんゲームをDIYした

これは エムスリー Advent Calendar 2019 の13日目の記事です。 エムスリーエンジニアの岩本です。普段はアンケートを作るためのシステムを作っています。 今回は全く仕事とは関係のない話をしようと思います。私の趣味で作ったものの話です。 うちには4歳に…

BIRの技術スタックとアーキテクチャ

この記事はエムスリー Advent Calendar 2019の12日目の記事です。 エムスリーエンジニアリンググループの滝安(@juntaki)です。BIRというチームでエンジニアやらプロダクトマネージャー的なことをしています。 BIRはビジネスインテリジェンス&リサーチの略…

プロダクトチームを作る採用担当募集!

人事の友永です。現在、人事グループでエンジニアリンググループの採用を一緒に担当してくれる方を募集しています!今日は採用における人事の役割や個人的に大事にしているポリシーの一部をお伝えしたいと思います。 エンジニアリンググループでどのような人…