エムスリーエンジニアリングGの組織構成について - エムスリーテックブログ

エムスリーテックブログ

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

エムスリーエンジニアリングGの組織構成について

エムスリーエンジニアリンググループ(以下エンジニアリングG)の山崎です。この記事は エムスリー Advent Calendar 2018 の24日目の記事です。

私自身はエンジニアバックグラウンドのプロダクトマネージャですが、昨年12/1よりVPoEとして、今年の4/1より業務執行役員としてエムスリー及びグループ会社の経営に関わっています。

本日はカジュアル面談や採用面接などでもよく聞かれるエンジニアリングGの組織構成について、掘り下げてご紹介できればと思います。

概要

エンジニアリングGには現在14の公式チーム(8の事業チーム+6の横断チーム)の他、4つのフィジビリ中のチーム、2つの組織運営のためのチームが存在します。 2018年12月時点65名のエンジニアでこれらのチームを運営しています。 今日はそれぞれのチームについて簡単に説明します。

f:id:yamazaki-m3:20181223165739p:plain
エムスリーエンジニアリングGの組織構成

事業チーム(8チーム)

Unit1:MR君ファミリー

日本最大級の製薬・医療機器プロモーションプラットフォーム「MR君」を開発、運用しているチームです。 MR君に加え、「カスタマイズエリア」と呼ばれる広告枠の管理や、「Web講演会」という動画配信システム、各種レポーティング基盤など重要なシステムを担当しています。 エンジニアリングGで最大売上利益を誇り、チームのサイズも他のチームより大きめです。 このチームのやりがいは、やはり27万人以上の医師に直接プロモーションすることでその向こう側にいる1億人以上の国民の健康に影響を与えることができる点でしょうか。

Unit3:新領域

新領域とは、エムスリーでは製薬・医療機器以外の領域を指す言葉です。 例えば電子カルテから物件紹介までこなしてくれる「開業支援サービス」や白衣や聴診器が買えるEコマースサイト「ストア」、医師のQOLを上げるための各種会員サービス「QOL君」(なんと車も売っている!)を運営しています。 最近では医療系の電子書籍を扱う「M2Plus」などの事業もこの新領域チームで行われています。 このチームのやりがいは、なんといっても"なんでもあり"、日本の医療を前進させるために医師を満足させるサービスをどんどん生み出せる点でしょうか。

Unit4:サイトプロモ+m3.com

日本最大級の医療ニュースサイトを運営し、m3.comの玄関口としてプラットフォーム全体をアピールするチームです。 「医療ニュース」の他、オリジナルの記事満載の「臨床記事」、医師同士がコミュニケーションできる掲示板「コミュニティ」や患者について相談できる「カンファレンス」など、医師が無料で利用できるサービスとメルマガの開発、運用を担当しています。 最近では、医師のオフの時間を充実させる「ライフスタイル」や、医師の経験談を医師に投稿してもらう「メンバーズメディア」なども大変人気です。 このチームのやりがいは、なんといっても魅力的なコンテンツを作って、医師に直接貢献できることでしょう。その結果としてサイトのアクティビティが上がって、日本の医療が活性化され、なおかつ収益が上がればこれ以上の喜びはありません。

Unit5:コンシューマ+ゲノム

日本最大級の遠隔医療サービス「AskDoctors」や日本最大級の医療機関の口コミサイト「QLife」、海外の遺伝子検査サービスをいち早く日本に導入する支援を行っている「G-TAC」などのコンシューマサービスを開発、運用しているチームです。 エムスリーはどちらかと言うとtoBのイメージがあると思うのですが、「AskDoctors」は50以上の診療科の医師が、最短5分で返信してくれる24時間365日稼働の大変便利なサービスです。 このチームのやりがいは、なんといってもエムスリーでは比較的珍しいコンシューマ向けサービスということでしょう。すでに200万件以上の質問が蓄積されているので、データホルダーとしての今後の展開も楽しみです。

Unit6:医師キャリア+薬剤師キャリア

日本最大級の医師薬剤師転職サービス「エムスリーキャリア」の開発、運用を支援するチームです。 医師はもちろん、薬剤師についても自由に意見交換できる「薬剤師コミュニティ」などのサービスを開発しており、特色があるチームとなっています。 昨年、Kotlinを使った大規模リニューアルで話題になったことも記憶に新しいですね。 このチームのやりがいは、なんといっても多くの医師薬剤師にあらたな機会を提供し充実した毎日を提供できる可能性があることでしょう。医師薬剤師は世界が狭く、エムスリーキャリア登場以前は比較的自由に転職活動ができる状況ではなかったようなので、まさに中東におけるFacebook的なイノベーションなのではないかと個人的には思っています。

Unit7:BIR(調査)

日本最大級の医師パネルを持つエムスリーならではの調査サービスを開発、運用しているチームです(BIRはBusiness Intelligence & Researchの略)。 恐らく医療業界では世界最高性能のオンラインアンケート調査システム「SurveyTiger」を中心に、効率的な方法で医療従事者への調査を行っています。 今年はエムスリー初となるGo言語によるプロダクト、アンケート集計システム「SurveyRacoon」も完成し、世界最高性能に更に磨きがかかりました。 事業規模も大きく、売上収益はUnit1:MR君ファミリーについて2番目で、エムスリーの収益を支えています。 このチームのやりがいは、なんといっても医療業界で世界最高を突っ走る先進性にあるでしょう。「SurveyTiger」はOSSとして一部の機能を提供しているので、Reactに興味のある方は是非コントリビュートしてみてください。

Unit9:eES(治験・臨床研究)

治験・臨床研究の分野でエムスリーらしいイノベーションを目指しているのがUnit9:eESチームです。 例えばエムスリーの27万人の医師会員に治験・臨床研究に手上げをしてもらう「治験君」や、治験・臨床研究の際の治験・臨床研究の審査をスムースにするためのクラウドシステム「IRB支援システム」、治験・臨床研究のニュースや情報を集めた「m3.com/治験・臨床研究」、治験・臨床研究の検討段階で製薬企業にアンケートにより実施の可能性を評価する「フィジビリティスタディ」など、イノベーションなプロダクトが多数展開されています。 このチームのやりがいは、なんといっても治験・臨床研究の現場で医療に直接インパクトを与えられる可能性でしょう。未だ治療方法が確立していない病気に対してチャレンジしたい、より良い治療法を見つけることに貢献したというエンジニアには特におすすめのチームです。

電子カルテ

主にエムスリーデジカルというAI搭載クラウド電子カルテを開発、保守しているチームです。 デジカルは2015年10月にサービスインしましたが、先日、エムスリーデジカルに社名変更を行いました。 すでにクラウド電子カルテの中では年間販売本数はNo1となっており、医師から非常に高評価を得ています。 技術スタックについてはサーバーサイドはRubyとRailsを中心に、レセコンと呼ばれる保険点数の計算エンジンはScala、ブラウザや院内エージェントとの通信部分のPub/SubにはNode.jsを利用しています。 クライアントサイドはES2015+ReactとAnglurによるSPAを中心に、院内エージェントはJava、SwiftによるiOSアプリなど、電子カルテの世界としてはかなり攻めた構成になっています。 クラウドプラットフォーム上にコンテナベースで動的に配置し、日中夜間でオートスケーリングを活用するなどインフラもモダンな環境になっています。 このチームのやりがいは、なんといっても臨床現場で使われるサービスを直接提供し、医師からのフィードバックが毎日得られる点でしょう。極稀に不具合を起こすと、すぐに医療現場から電話がかかってくるのも特徴です。

横断チーム(6チーム)

SRE

オンプレ、クラウド両方のインフラ構築、運用とその上で走っているサービスのSREを行っているチームです。 全員プログラミングできるというのもチームの特徴の一つで、運用の多くが比較的早い段階から仮想化、コード化されてきました。 最近は事業チームや横断チームの中でもDockerの活用やAnsibleやTerraformを活用したIaCが浸透してきており、SREチームとの連携が更に深まっています。 このチームのやりがいは、なんといってもSRE的な観点で全チームを支えるという縁の下の力持ち感でしょう。本当にお世話になっております。 来年はグローバル支援としてUSやUKのインフラストラクチャーの改善もミッションとなりそうです。

基盤

認証基盤や共通サービスの他、共通サービスのAPIにアクセスするための共通ライブラリ、ソースコード管理やCIなどのDX改善など多岐にわたって活躍しているチームです。 特に1日10万件以上のメールを配信するメール配信基盤「メールコンシェルジュ」は特に重要なサービスとして開発、運用されています。 その他、エムスリー内製APIアグリゲータ「Octoparts」など一部の成果物はOSSとして公開されています。 このチームのやりがいは、なんといってもエムスリーのエンジニア支援チームとして重要な点でしょう。共通サービスの構築、メンテナンスから、CIなどの日常的なDXまで幅広く対応したいエンジニアにオススメです。

マルデバ

全事業チームに横断して、エムスリーの主力サービスのネイティブ(モバイル)アプリを一括で開発、運用しているチームです。 ネイティブアプリだけでなく、それらが動作するために必要なAPIの整備や、プッシュ基盤の開発など、幅広く対応しているのが特徴です。 エムスリーでは各事業チームにネイティブアプリのエンジニアを置かずにこのチームに集約することでノウハウの集中化と効率化を行っています。 このチームのやりがいは、なんといってもネイティブアプリ開発のスペシャリストとして、全社横断的に活躍できる点でしょう。現在、もっとも採用に力を入れているチームなので、興味のあるエンジニアは下記リンク先のフォームよりご連絡ください。

AI・機械学習チーム

AI・機械学習を活用して日本、世界の医療に貢献するチームです。 大きく分けると情報提供へのAI・機械学習の活用と、臨床現場へのAI・機械学習の活用の2つの取組みを行っています。 前者では、メールマガジンやトップページにおける医療ニュースのリコメンデーション(選択)や、関連記事のリコメンデーション、ニュースや記事への自動的なタグ付けやグルーピングなど、医師の貴重な時間を有効活用する取り組みを行っています。 後者では、ディープラーニングを利用した医療画像自動診断システムなど、臨床現場で直接活用される可能性のある技術について開発しており、臨床研究などへの投入が秒読み段階となっております。 このチームのやりがいは、なんといっても実用化やマネタイズが難しいと言われているAI・機械学習で、確実な成果をあげつつあるということでしょう。特に、前者の情報提供への活用では、従来弊社で行っていた方法に比べて、明らかに成果が出ており、日本の医療に貢献している実感があります。 来年はグローバル支援としてUSの事業へこのリコメンデーションエンジンを輸出することが決まっていますので、グローバルで活躍したいエンジニアがいれば是非ご連絡ください。

セキュリティ

主にセキュリティマネジメントとセキュリティエンジニアリングを担当するチームです。 前者はオフィス環境やISMSの維持、認証取得をリードして全社のセキュリティを改善します。 一方で後者は各サービスの脆弱性検査やコードレビュー、試験環境へのアタックを通じて脆弱性を見つけ、各チームにフィードバックを行います。 また、言語やフレームワークに含まれる脆弱性情報を共有して、各チームのプロダクトの安全性を保ちます。 このチームのやりがいは、なんといっても各チームに先立ってセキュリティをリードできることでしょう。 エムスリーのエンジニアは皆、セキュリティ意識は高いほうだと思いますが、それでもカバーしきれないことがあり得るので、セキュリティチームの存在は大きいと思います。

QA

QAチームは全チームに横断して、品質保証を担当するチームです。 昨年までは独立したグループだったのですが、今年の4月より、より開発プロセス全体に関与して品質を改善するためにエンジニアリングGに統合されました。 主に品質計画、テストケース作成、プロセス改善を行うQA職と、一部テストケース作成とテストケースの実行を行うテスター職、テストの自動化やコード化を支援するテストエンジニア(SET)職の3つの職種で構成されています。 このチームのやりがいは、なんといっても単に後工程でテストを行うだけでなく、開発プロセス全体に関与して品質を改善することを目標としている点にあります。 テストは本質的に不具合を発見できるに過ぎないので、品質の作り込みをするには不具合が盛り込まれないことが最も重要であるという観点が重要と思います。

フィジビリ中のチーム(4チーム)

新規事業支援

上記14チームで対応できない、新規案件について、製品サービスを見つける段階までを支援するチームです。 私を含めたプロダクトマネージャ2名で構成されており、絶賛プロトタイパーを募集中です。

アーキテクト支援

上記14チームで構築されたアーキテクチャを横断的に共有し、効率的にアーキテクチャを構築できるように支援するチームです。 現在SREや基盤チームを中心にアーキテクチャに興味のある有志のエンジニアで結成され、主にアーキテクチャのレビューなどを行っています。

グローバル支援

エムスリーのグローバル子会社について、技術的な支援を行うチームです。 今年は合計5名がUSに出張しました。 直近では3名が3ヶ月程度ニューヨークに出張していました。 今後は日本からグローバルプロダクトを生み出していきたいという戦略もあるので、その点で中心的なチームとなることを期待しています。

リニューアル支援

主にレガシー化したシステムについて、置き換えも含めた負債の返却を実行するチームです。 特に収益が上がっているサービスについては内部のチームで対応することが難しい場面があり、その点で専門チームでリニューアルの支援を行います。

運営チーム(2チーム)

マネジメントチーム

その他、グループ全体を管理するためにVPoE1名、グループリーダー2名、採用チームリーダー1名、エンジニア人事担当1名の合計5名で構成されたマネジメントチームがあります。 グループの方針決定や、人事的な方針決定、エムスリー経営会議とのブリッジなどを裁量を持って進めています。

採用チーム

採用戦略を考え、実行に移すのが採用チームです。 エンジニア担当人事以外は、全てエンジニアで構成され、組織作りを自らのミッションとして協力してくれています。

まとめ

いかがでしたでしょうか? エンジニアリングGでは目的に沿ったチームを多数構成することによって、個人の裁量やチームとしての機動性を確保することによって、社会にインパクトのあるアウトプットを実現しています。

エンジニア募集

エムスリーでは大きな裁量をもって自らチャレンジし、医療の課題を解決するエンジニアを募集しています。 この記事(or 他の記事も)を読んで興味を持った方はぜひ下記リンクよりご応募ください!