ドクターズプライム Official Blog

「救急車たらい回しをゼロにする」ドクターズプライムの公式ブログです

ドクターズプライムのフロントエンド開発の現状

今回はドクターズプライムのフロントエンドを取り巻く現状について、正社員のソフトウェアエンジニアとして働いている生沼 (@oinume) ・石谷 (@Issuy_) と、技術顧問として協力してくださっている泉水さん (@1000ch) の3人で対談しました。

f:id:drsprime:20211102183025j:plain
泉水(左上)、生沼(右上)、石谷(中央下)

この記事に登場する人

生沼一公のアバター

生沼 一公 (@oinume)

mixi、サイバーエージェント、メルカリ・メルペイを経て2020年10月にドクターズプライムに入社。 ドクターズプライムでは、Software Engineerとして特定の技術領域に閉じない働きで、技術面から事業の推進をリードしている。

石谷彰斗のアバター

石谷 彰斗 (@Issuy_)

KLab でのソーシャルゲーム開発や、TORETA で飲食店向け予約・顧客台帳システムの開発などに従事したのち、2021年4月にドクターズプライムに入社。移住に伴い、2021年9月からはオンラインとオフラインを組み合わせたワークスタイルに励んでいる。

泉水翔吾のアバター

泉水 翔吾 (@1000ch)

Web アプリケーション開発を専門とするソフトウェアエンジニア。企業で働く傍ら、技術顧問として複数企業のエンジニアリングに関わり、高品質で維持しやすい Web アプリケーションを作るための活動を続けている。

技術顧問から見たドクターズプライム

石谷: はじめにですが、泉水さんがドクターズプライムに協力してくださったのって、どんな経緯があったんですか?

生沼: もともとドクターズプライムでは業務委託の方にフロントエンドの開発を進めて頂いていて、その人がドクターズプライムを離れることになりました。そのタイミングでは、正社員のソフトウェアエンジニアは私と島谷 (@michio0o) の二人だったんですが、ふたりともバックエンドに強みを持ったエンジニアで、フロントエンド未経験者でした。 フロントエンドは既にある程度の機能を備えたものになっていたので、この先どう進めていくか相談できる人が必要だと思って、泉水さんにお声がけしました。

泉水: 生沼さんとは、前職と現職で一緒に働いていたこともあり、声を掛けて頂いたという感じかと思います。代表の京輔さん (@kyosu_ke)、ソフトウェアエンジニアのみちおくん (@michio0o) とも前の職場で面識があって、お話を聞く中で「フロントエンドのボトムアップが必要」という認識を持ちました。もともと生沼さんがどういった経緯でドクターズプライムに転職したのかを聞いていたこともあり興味を持っていましたので、お手伝いできるところがあればと思い、この話を請けました。2021 年の頭にジョインしてから、もうちょっとで 1 年経ちます。

石谷: 泉水さんから見てドクターズプライムのプロダクトの印象ってどういうものを抱いてますか?

泉水: 京輔さんと話すまでどんな事業をやってるのか知らなかったんですよ。「救急車のたらい回しをなくす」っていうところは理解していたんですけど、「どのようにたらい回しをなくしているのか」は、ちゃんと説明されるまでわかっていませんでした。 そもそも「医師がアルバイトをする」というのを知らなかったので、そこにまず驚きました。そして、たらい回しが発生してしまう救命医療の構造上の原因があり、そのために医師向けのアルバイト求人をマッチングするサービスを提供していて、フロントエンドとしては「求人を掲載・管理するための病院向けのアプリケーション」と「求人に応募するための医師向けのアプリケーション」の 2 つを開発していることを知りました。

f:id:drsprime:20211102183800j:plain

社内エンジニアから見たドクターズプライム

泉水: 当時のバックエンドは Google Spreadsheet をベースにしていて、最近でも Google Spreadsheet からの脱却のためのリファクタリングを進めていましたよね。フロントエンドも、ドクターズプライムの成長を支える、この先の数年を戦えるしっかりしたエンジニアリングが必要そうです。ここについて、いま在籍している皆さんでカバーできていないと感じるところはありますか?

生沼: 例えば品質面について、現状ではフロントエンドのテスト自動化が薄くてリリースした時に安心感がないところ。あとは React を使ってるんですけど、クラスベースで書かれたコンポーネントを今の主流である React Hooks に書き換えるところとかですかね。純粋にやりたいけど、スキルも人手も足りないっていう状況です。

石谷: React Hooks の書き換えは自分たちができる範囲で進めてはいるんですけど、長期的な目線で「こういう構成にしておいたら戦っていける」みたいな知見がなくて探り探りになっています。結果的に足が遅くなることもあるので、知見を持っていて一緒に議論しながら設計を進めていける人がフルタイムで入ってくれると嬉しいと感じることがありますね。 特に今まで進めていた Google Spreadsheet 運用からの脱却に終わりが見えてきて、ここから先は SEO 対策をやっていくなどのフロントエンドにフォーカスが当たるような話も出てきてます。こういった話を進める上でも自分たちは知見をそんなに持ってないので、今までやってきた人に協力してもらえると凄く助かります。

泉水: 「ドクターズプライムが提供するアプリーケーションの理想的なアーキテクチャがどうあるべきか」についてビジョンを持って進める必要があって、フロントエンドとしてのそれを強化していきたいっていうことですよね。

泉水: 一方でソフトウェアエンジニア構想というのをドクターズプライムでは意識していて、バックエンドに強みを持つお二人もフロントエンドを触っていると思うんですけど、今後入ってくるフロントエンドに強みを持つエンジニアに期待することってありますか?

生沼: そうですね。現状ではまだ開発チームが小さいというのもあって、少ない人数でバックエンド・フロントエンド・インフラ・セキュリティなどを運用していく必要があります。なので自分が強みとする領域に軸足を置きつつ、違う領域もやっていきたいマインドを持った方だと嬉しいと思っています。

泉水: お二人の軸足がバックエンドなので、フロントエンドに強みを持った人が入ってくれれば、お互いに強くなっていけそうで良いですね。

石谷: そうですね。僕らもソフトウェアエンジニアとしてやっていくにはもっとフロントエンドの知見を貯めていきたいと思ってますし、お互いを高め合っていくのが理想的な形なのかなって思っています。

泉水: フロントエンドでもうひとつの課題として挙がるのが、利用者の体験や UI を設計できるデザイナーの存在だと思うのですが、その辺はどうなんでしょう?

生沼: まさにそこもミッシングピースの一つですね。

石谷: デザインに強みを持つ人がまだ社内にいない状況なので、プロダクトの情報設計や UI デザインが甘いというのが現状です。これが解決すると今まで以上に速度感を持ってプロジェクトを進めていけるので、そういった部分に強みを持つ方が居ていただけると凄く助かります。

f:id:drsprime:20211102184644j:plain

ソフトウェアエンジニアとして働く環境

石谷: 最後に、フロントエンドエンジニアの泉水さんから見てバックエンドも合わせてやっていく上での懸念や不安とかってありますか?

泉水: フロントエンドに限らないとは思いますが、担当する領域の経験や知識がないとパフォーマンスを出せるかどうか不安を覚えそうですね。ただ、それは誰でも同じだと思うので、例えば最初はフロントエンドで成果を出しつつ、バックエンドの issue を週に1個ずつ消化していくだけでも、3 ヶ月なり半年なり経った時点である程度書けるようになってると思うんですよね。自分の得意分野に軸足を置きつつ、広い範囲のエンジニアリングを理解していることはエンジニアとして大きなアドバンテージになると思っているので、腕を磨くにはとても良い環境だと思います。

石谷: 僕らもまさにフロントエンドとバックエンドが逆になってるだけの感覚なので、新しく入ってくださる方にも同じ感覚で飛び込んできてもらえればと思っています。

一緒に働く仲間を募集しています

ドクターズプライムでは「救急車のたらい回しをゼロにする」というビジョンの実現に向けて、病院向けのSaaSプロダクトおよび、医師/病院間の最適なマッチングを提供するマッチングプラットフォームを展開しており、一緒に働く仲間を募集しています。

まずはカジュアルにお話ししてみませんか?

speakerdeck.com