MedNight Tokyo #2 〜Web技術でレガシーな医療業界に革命を!エンジニア開発裏話 に参加しました
以下自分用のメモです(発表内容からだけではなく懇親会中に聞いた話も追加されたメモになっています)
概要
医療ヘルスケア分野の成長企業である、エムスリーとメドレーのエンジニアが、医療業界というレガシーな業界にインターネットがもたらす可能性、開発の醍醐味などについて語る。
- 開催日: 2017年4月19日 20:00~
- 会場: BASE株式会社
クラウド電子カルテを支える魂の技術
冨岡 純 氏(エムスリー株式会社)
- 電子カルテ
- 巨大なメモアプリ
- 一般的には市場ではほぼオンプレミス
- クラウド化が簡単ではない
- レセコンと組み合わせることは必須。レセコン機能も備えた一体型か、連携するか
- クラウド電子カルテ(デジカル)
- エムスリーのクラウド電子カルテは現在100施設に導入(全てクリニック)
- ORCAとも連携している
- iPad Pro版も存在する。手書き機能やシェーマの機能もある
- リリース戦略としてA/Bテストとかカナリアリリースはしてない模様。リリース後に画面の雰囲気とかはいきなり変わる。
そういうものであることを医師には伝えてある(教育してある)
- 技術スタック
- Rails
- React.js
- RxJS
- iPadアプリ・・・手書きもできる。シェーマの機能もある
- Scala on Skinny Framework
- socket.io
- m3.com
- m3.com内で、医師に対して製薬のプロモーションをできるようにしている。そのためのアカウントを製薬会社に年間数億円でレンタルしている
CLINICSを支える技術と開発体制
田中 清 氏(株式会社メドレー)
- CLINICSの技術構成
- Rails
- Mithril
- Android
- Swift3
- Node.js
- MongoDB
- Redis
- Elasticsearch
- Herok
- AWS
- Kinesis
- Lambda
- CF
- SNS
- S3
- Cognito
- GCP
- BigQuery
- 体制
- Product Manager: 1
- Director: 1
- Designer: 1
- Engineer: 5
- インフラ, 実装, プロダクトQA, リリース
- リリースサイクル
- 3カ月を1単位(シーズン)として企画、開発、振り返りを実施
- 各職種合同で実施案件を議論、合意の後に開発
- MTGなどは月曜に寄せ、開発に集中可能な状況へ
- 他職種からの機能要望などは随時対応しているか?
- シーズン中の追加対応は基本行わず、次シーズン計画用にストック
- 他職種のコミュニケーションは?
- Slackベース。割り込みのMTGはほぼなく週一で職種リーダMTG
非定型なレポート依頼とPythonで戦う
三浦 琢磨 氏(エムスリー株式会社。医師免許を持っている)
- エムスリー
- 2015年時点で約60名のエンジニアが在籍
- 薬剤情報のプロモーション支援を効果的に支援するためのレポーティング
- レポーティングにはBIツールの出番・・・が厳しい
- レポート依頼を定型部品の組み立てに落とし込む
- 表形式のデータを生成したい
- 列ごとにプラグインを用視して。組み合わせることで表になる
- なぜPython?
- プラグインを書いて即時実行できるのはスクリプト言語
- pandas がとにかくすごい
CLINICSの変化に耐えるMithril
平木 聡 氏(株式会社メドレー)
- CLINICSのフロンエンド構成
- Mithril.js
- Babel
- ビルドシステム
- Node.js
- yarn
- Mithril(ミスリル)を選んだ理由
- Light-weight, Robust, Fast
- API自体は15個だけ
- ローンチまでに時間が圧倒的に足りないので選定した
- Angularは重すぎ
- VueやReactはView以外で色々と考えなければならない
- VDOMがやはり良いので、Backboneなどもつらい
- 柔軟に対応できそうなものがいい
- 現在のCLINICS
- Reduxぽい・・?
- Mithirlの感想
- 良いところ
- APIがシンプル
- ES2017と親和性が高い
- 変更に強い
- 悪いところ
- APIがシンプルなので設計考えないとダメ
- エコシステムがない
- 良いところ