ブックマーク / www.m3tech.blog (9)

  • M3 DigiKar Rails5への道 - エムスリーテックブログ

    エンジニアリンググループの@suusan2goです。現在は所属としてはAIチームで、機械学習以外のことを色々やっています。が、諸事情により少し暇になったので、弊社のクラウド電子カルテ「M3 DigiKar」チームに入ってRailsアップグレードをやっています。 今回の記事ではM3 DigiKar(以下デジカル)のRailsアップグレード(4.2 => 5.2)で、得られた知見をお話したいと思います。 デジカルの技術スタックについて デジカルは様々な技術スタックから出来ています。WEBアプリケーションとしてはRailsがメインですが、診療報酬の点数を計算したり保険請求をしたりといった複雑な業務知識が求められる箇所ではScalaを使っていたりします。エムスリーデジカルCTOの冨岡の発表資料を見ていただくと雰囲気がつかめるかと思いますので、以下の記事をご確認ください。 logmi.jp デジカル

    M3 DigiKar Rails5への道 - エムスリーテックブログ
  • React.js, Vue.jsが使えない状況でメンテナンス性の高いJavaScriptを書く3つのポイント - エムスリーテックブログ

    エムスリー エンジニアの岩です。 この記事は エムスリー Advent Calendar 2018 の23日目の記事です。 React.jsやVue.jsを使えれば、開発のベストプラクティスなどがあるので、メンテナンス性の高いプログラムはずいぶんと書きやすくなったと思います。当に仮想DOMの功績は大きいですね。 しかし、世の中にはそういったライブラリを使うことができないプロジェクトもあるわけです。古すぎて、一部分だけ最新のソースコードにすることが憚られたり、サイズの問題でライブラリを入れることができなかったり。。。 その場合どのように書けばメンテナンス性の高いプログラムを書くことができるのでしょうか。そこでIE6時代からJavaScriptをもりもりと書いている私なりのベストプラクティスを紹介します。 そもそもなぜメンテナンス性の悪いコードとなってしまうのか jQueryではセレクタで

    React.js, Vue.jsが使えない状況でメンテナンス性の高いJavaScriptを書く3つのポイント - エムスリーテックブログ
  • EmacsでWebサービスを開発して8ヶ月が経ちました - エムスリーテックブログ

    この記事はエムスリー Advent Calendar 2018 の16日目の記事です。 こんにちは、エンジニアリンググループ新卒1年目の青木です。クラウド電子カルテ「M3 DigiKar」の開発に携わっています。We are hiring!! 今回は私のチームが開発しているWebサービス「M3 DigiKar」の Emacs での開発方法を紹介します。 皆さんお馴染みのエディタ Emacs はじめに 共通設定 検索・補完・定義参照 company.el ivy.el & counsel.el & swiper.el dumb-jump.el Syntax Check & Lint flycheck.el Spell Check flyspell.el Visualize git-gutter-plus.el color-identifiers-mode.el rainbow-delimit

    EmacsでWebサービスを開発して8ヶ月が経ちました - エムスリーテックブログ
  • コードレビューを支える『褒め文化』 - エムスリーテックブログ

    コードレビュー、好きですか? エンジニアリンググループの山口です。 クラウド電子カルテ「エムスリーデジカル」を開発しています。 今回は、チームに根ざしている『褒め文化』についてお話しします。 ※この記事は、エムスリー Advent Calendar 2018 13日目の記事です。 『褒め文化』とは 簡単に言えば、コードレビューで褒める文化です。 コメントに対してコメントしている様子 とても簡単です。 とても簡単なのですが、前職(SIer)ではこういった経験が全く無かったため*1、join直後は(良い意味で)驚いたのが印象に残っています。 とにかく褒める けっこう安易に安直に褒められますし、褒めます。 アカウント名は一部加工 思ったことを素直にコメントにしてしまいます。 褒め文化の効用 ここからは「※個人の感想です」になってしまいますが、こうした褒め文化は、レビュア・レビュイどちらの立場でも

    コードレビューを支える『褒め文化』 - エムスリーテックブログ
  • この処理Pythonでどう書く? - エムスリーテックブログ

    EF15形は高性能な電気機関車であったが、引き出し性能が蒸気機関車に劣ると誤解されていた。 誤った運転方法により来の性能を引き出せていなかったのである。 (spaceaero2 [CC BY 3.0], ウィキメディア・コモンズより) こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小です。 WEBサイトは RailsやSpringなどの「体部分」だけでは完結しません。レポート作成・データ更新などの細かい処理も必要です。 過去にはこうした用途にはBashがよく使われました。しかし、Bashは落とし穴が多かったり、クラスなどの抽象化機能がなかったりして、規模が大きくなると辛くなります。 そこで、Bashの代替候補に挙がるのがPythonです。エムスリーでもかつてはBashを使っていましたが、現在は新規案件にはPythonを推奨しています。 しかし、実際にPythonで書き直そ

    この処理Pythonでどう書く? - エムスリーテックブログ
  • bashスクリプティング研修の資料を公開します - エムスリーテックブログ

    こんにちは、エンジニアリングGの中村です。 以前にこのブログにてエムスリーでの社内研修について紹介しました。今回は、この中でのbashスクリプティング講座の資料を公開します。 www.m3tech.blog 弊社の中でもいろいろな用途でbashが使われていますが、bashは簡単に利用できるもののプログラミング言語としてはバグを生みやすい、辛い言語だと思います。 ここで紹介しているのはいわゆるコーディング規則というよりも、バグ防止と可読性向上のためのルールをTips集的にまとめたものです。 bashにおいてまだまだ注意するところはありそうですが、多少なりともわかりにくいスクリプトの削減になればと期待しています。 [追記: 2018-08-22] はてブにて以下のコメントをいただきました。 bashスクリプティング研修の資料を公開します - エムスリーテックブログ bashで50行以上になった

    bashスクリプティング研修の資料を公開します - エムスリーテックブログ
  • エンジニア新人研修、始めました。 - エムスリーテックブログ

    こんにちは、エンジニアリングGの池田(@progrhyme)です。 エムスリーではこれまでエンジニアの集団研修を実施しておりませんでしたが、昨年度に続き新卒採用のエンジニアが若干名入社したことをきっかけに、新人研修を企画して実施しました。 手探りではありましたが、最終的に5〜7月にかけて12の講義を実施し、のべ250以上の受講数*1を達成することができました。 記事では、その内容の一部を紹介し、簡単に振り返ってみます。 コンセプト 最初の企画段階で、新卒エンジニアメンター陣とミーティングを行った際に、以下のような大まかな方針が決まりました。 新卒入社者だけでなく、中途入社者でも希望者は誰でも参加できるようにする。 以下のようなコンテンツを用意する: Webエンジニアとして幅広い人に必要な基礎知識 → 「Webエンジニア基礎編」 エムスリーエンジニアとして必要な社内知識 → 「エムスリー

    エンジニア新人研修、始めました。 - エムスリーテックブログ
  • AWS FargateでElixirのコンテンツ配信システムを本番運用してみた - エムスリーテックブログ

    こんにちは、エムスリーエンジニアの園田です。 エムスリーでは医療・ヘルスケアサイト向けのコンテンツ配信システムであるChuoiというサービスを運用しています。 以前このブログでも紹介しましたが、このサービスは Elixir/Phoenix で実装されていて、ElasticBeanstalk のCustom Platformを使って運用していました。 www.m3tech.blog 2018/07/04 に AWS Fargate が東京リージョンでローンチされたので、ElasticBeanstalk から Fargate での運用に切り替えました (2018/07/13 切り替え完了)。その際の手順やTipsを書きたいと思います。 今回は構成の説明のみで、実際のコードなどは別のポストで解説していきます。 2018/07/30 追記 実装編の記事を書きました。 www.m3tech.blog

    AWS FargateでElixirのコンテンツ配信システムを本番運用してみた - エムスリーテックブログ
  • エムスリーでの Elixir 開発環境 ver.2017 #m3dev - エムスリーテックブログ

    エンジニアの松原@ma2geです。 実はエムスリーでは数ヶ月前から Elixir を利用しております。現在私が関わっている商用プロダクトはグループ会社横断でエンジニアの有志が立ち上げたプロジェクトで、そのシステムの一部にて Elixir が稼働しております。Elixir が動いているのは広告配信に近い部分で多数の接続を捌く必要があり、アーキテクチャ検討時に普段チームで利用している Rails 含め検討した結果、適性のある Elixir を採用することに決定しました。 今回の記事ではエムスリーにおける現在の Elixir 開発環境周りについて書きます。書こうと思ったきっかけは melpon さんが Qiita に良い記事を公開されていたので、弊社からも1事例ということで公開できたらと思ったためです。 開発環境構築 少し前までは構築の手順があるだけで、以下のような課題がありました。 環境構築時

    エムスリーでの Elixir 開発環境 ver.2017 #m3dev - エムスリーテックブログ
  • 1