1. ホーム
  2. ヤマシタを知る
  3. ITエンジニアの介護事業会社での挑戦
タイトル画像

ITエンジニアの介護事業会社での挑戦

インタビュワー:株式会社ヤマシタ DX推進 小川邦治
公開日:2023/6/21

小川:樋口さんは新たにヤマシタのテクノロジー責任者に就任しました。まず、これまでのご経歴について聞かせてください。
樋口:大学を卒業後、新卒で入社したオービックにおいて、ITエンジニアとしてキャリアをスタートしました。現在はTinyBetter株式会社を創業し、DB設計、WEBアプリ、クラウドの活用、フロントまでフルスタックエンジニアとしてコードを書きながら、企業のDXを支援するコンサルの仕事も並行して行っています。

小川:新卒で入社したオービックではグループウェアシステムを一人で開発したそうですね。詳しく教えてください。
樋口:入社1年目の終わりからグループウェア「Hignel」の開発を始めました。当時勉強を始めたC#を使って何かを作りたいと考えたときに、社内で使われていたグループウェアを見て、「これくらいなら作れそう」と思い、自発的に開発を始めたのがきっかけです。最終的な完成までは約4年かかったのですが、一定の機能が出来上がった2年目の夏ごろから、開発部でテスト利用が始まりました。その後機能が増えていく中で、開発部以外の部署での使用も始まり、ユーザー数を拡大していき、最終的には全社で使われるシステムになりました。

小川:それまで使っていた既存のグループウェアサービスにはどんな課題があって、どう解決されたのですか?
樋口:当時使っていたグループウェアではUI/UXが悪く、他の人のスケジュールを探すのが大変でした。開発した「Hignel」では座席表で人を探すことができるようUI/UXを設計し、それが好評だったこともあり、受け入れられていきました。
座席表のアイデア自体は2年目から行っていた新人研修の講師をしているときに浮かんだものです。研修では、新人の座席をカリキュラムごとに変えていて、その席替え変更用のプログラムを作って遊んでいたのですが、この座席表の仕組みをグループウェアに入れたら見やすくなるのではと思いついたのでした。

小川:課題を発見する力と技術力の融合で実現できたのだと思いますが、それを20代で実践されていた点に驚きです。
樋口:とにかくプログラミングをすることが面白く、作るお題を探しているような感じでした。現場が困っていることをいろいろ聞いては作り、出来上がれば感謝してもらえるということが嬉しかったです。当時はアジャイル開発という言葉もなかったですが、ユーザーから要望を聞いて、システムに反映して、また改善の要望を聞いていくというPDCAサイクルを自然と回すことができていました。グループウェア開発に専念できる環境を与えてくれた会社のおかげでもあるので感謝しています。

小川:Hignelの開発において苦労したことは何ですか
樋口:当時はC#も1.0が出たばかりで、QiitaやZenn、Stack Overflowなどのエンジニア向け情報共有サイトもない中での開発だったので大変でした。まだまだガラケーを使う人が多い時代で、HTMLがブラウザによって違ったため、互換性を吸収するコードを自分で書く必要もありました。
また、開発を始めて3年目の時にGoogle Mapがサービスを開始したのですが、ブラウザをリロードせずに書き換えることができるAjax(Asynchronous JavaScript + XML)という技術が使われおり、世界中のエンジニアに衝撃を与えました。それを見てHignelもインラインフレームで作っていたものをAjaxに書き換えました。Ajaxを使うにはJavaScriptをゴリゴリ書かなければならないのですが、当時はReactやAngularどころかjQueryもなくJavaScriptのライブラリも自分で一から作りました。
そういった何もそろっていない状況の中でシステムを作っていくのは、今振り返るとかなり苦労したなとおもいます。

小川:テクノロジーはどんどん進化していきます。樋口さんと同じように、何もそろっていないところからシステムを作ることを、今後も繰り返していくのでしょうね。
樋口: そういった意味でいうと、まさに今のAIの環境も似ていて、技術がどんどん進化もしているし、AIの活用方法も不明瞭で、システムの構築に必要なライブラリや機能がまだ揃っていません。そんな状況でもシステムを作れるスキルがないと勝っていけない環境です。ライブラリがなくても自分でシステムを実装できる高い技術を持った人たちが求められていると思います。ヤマシタもそういうエンジニアを採用できると良いですね。

小川:樋口さんの作ったライブラリを見て感動しました。樋口さんと一緒に働くことで、若手のエンジニアはあれを学べる、吸収できるということだけでもモチベーションになるなと思います。
樋口:ある程度の大きなシステムを生産性高く作るとなると、高品質なライブラリが絶対に必要です。基本機能が整備されてない環境だと、各メンバーが個別で機能を実装してしまい、その結果統一感がなくなり、保守性が低下します。また、自分でライブラリを作ったり、オープンソースのライブラリを利用する場合、実際に使い始めてみると他のライブラリと相性が悪いとか、やっぱり機能が足りないということは起こりがちで、そうなるともう一回探し直したり、足りない部分を自分で作ったりということが必要になります。基盤のライブラリの整備状況が足りてないと開発スピードの低下につながります。
ライブラリに最初から必要な機能が全部網羅されていて、パフォーマンスも使いやすさも整っていると、開発スピードが格段に速くなります。エンジニアとしても、いいコードベースで働けるかどうかというのは重要視すべきポイントだと思います。
いわゆる「車輪の再発明」にならないように、基本的には既にあるライブラリを使うのが一番の選択ですが、無い場合は自分で作ることになりますちなみに私は15年くらいそういったライブラリを作っており、昔はメール受信のライブラリがなかったので自分で作りました。他にもオブジェクトマッパーのライブラリとか、ストアドの呼び出しコードの自動生成とか様々なライブラリを作ってきました。メール送受信とオブジェクトマッパーは当時世界一のパフォーマンスが出るライブラリに仕上げました。

<参考>
https://www.codeproject.com/Articles/399207/Understanding-the-Insides-of-the-SMTP-Mail-Protoco
https://www.codeproject.com/Articles/5275388/HigLabo-Mapper-Creating-Fastest-Object-Mapper-in-t
https://www.codeproject.com/Articles/776811/DbSharp-DAL-Generator-Tool-on-NET6

車輪の再発明と自分で作る場合の線引きは難しいですが、私は世界標準の開発環境で働けるようにライブラリを整備しています。
小川:コンサルなどが提案する設計や基盤は抽象的で、実際のコードがなかったりします。樋口さんのライブラリは実際に動くコードとしてそこに存在するため、ヤマシタのエンジニアは最速でシステムを作れるし、学べることも多いと思います。

小川:その後、樋口さんはTinyBetterを創業しましたが、なぜ起業したのですか?
樋口:社内の環境から外に出て、社会のために貢献することにチャレンジしたいという思いから起業しました。起業後もWEBアプリからクラウドの設計、フロントデザインまでフルスタックエンジニアとしてコードを書きながら、ITコンサルとして企業のDXを支援しています。

小川:なぜ今回、ヤマシタのテクノロジー責任者に就任したのですか?
樋口:超高齢社会である日本において、介護の領域で事業を行うヤマシタはこれからますます社会において重要度が増していくと思っています。そういった社会貢献を行っている会社のDXに携わりたいという思いから、今回のテクノロジー責任者就任に至りました。また、社長の山下和洋さんも若く、改革精神が旺盛なので、本気でDXに取り組んでいることが伝わりましたし、一緒に面白いことができると思いました。
小川:私自身もヤマシタのDXの本気度に惹かれて、昨年末にアクセンチュアからヤマシタに転職してきたので、すごくわかります。

ChatGPTなどの最新技術でサービスを開発できる環境

小川:ChatGPT+アバターの契約説明システムの開発に向けた検証を開始 (詳細はプレスリリース) しましたが、開発基盤はどのようなサービスを使用しているか、説明いただけますか?
樋口:開発基盤は、主にAzure Cognitive SearchとAzure Open AIを使用してます。また、Microsoft SQL Server(データ管理システム)、C#、BlazorによるSPAなどMicrosoftの様々な技術を活用してます。

小川:開発検証を進める中で苦労していることは何ですか?
樋口:オービックでグループウェアシステムを開発していたときと同様、ChatGPTも出てきたばかりの技術なので、APIも次々に新しいものが出てきています。そのため、まだ使い方に関する情報がないものも多数あります。そういった場合、自分でコードを書いて試行錯誤して進めていくしか方法がありません。大変ですが、エンジニアとして、ものすごく面白いです。調べる時にも最新の情報を手に入れられるよう、海外で開催されたイベントをMicrosoftの公式YouTubeチャンネルの英語の動画を見て学んだり、海外エンジニアのブログを読んだ りしています。AjaxやAzureが出てきたころのような、今までやれなかったことができるようになるワクワク感がありますね。

小川:GPTは他にも様々なことに活用できると思いますが、今後の展望について教えてください。
樋口:技術的には、OpenAIの「text-embedding-ada-002」モデルを活用したベクトル検索に注目しています。ベクトル検索を使えば関連性の高い情報を取り出すことができます。社内に存在しているものの、活用されていないマニュアルや議事録を検索可能にしてChatGPTとうまく連携させる形のUXで機能提供するなど、良い活用方法がないか検討しています。また、ChatGPTを活用した認知症予防の新たなサービスを作れないかと考えています。ChatGPTが高齢者の話し相手になることで認知症の予防・改善につなげるイメージです。
開発環境においては、Hugging FaceのAzure連携が開始し、Hugging Face Hub のオープンソースモデルを Azure Machine Learningで使用できるようになりました。これにより、開発スピードが今後格段に上がっていくだろうと思っています。
ChatGPTに限らず、他にもいろいろなAIを活用したシステムを開発していくので、ヤマシタで一緒に新しいものを作りたい方が来てくれると、とても楽しい環境で仕事ができると思います。

小川:高齢者に使っていただくサービスを作るには、高齢者向けのUIについても考えていかなければいけないですし、新しいチャレンジは数多くありますよね。ヤマシタは最新の技術でサービスを作ろうとしているので、そういった環境で働けることは魅力ですね。
樋口:ヤマシタは開発内製化に向けてエンジニアの採用を強化しています。現在は、基幹システムのマイクロサービス化や、介護の実務を担う各地のケアマネジャーとのエンゲージメント強化のための業務支援アプリケーションの開発にも注力しています。また、介護テックに関連したロボティクスやIoTを生かしたデータ活用も今後検討していきます。「最新のテクノロジーを使ってサービス開発がしたい」「裁量をもって活躍できる職場で腕を試したい」という方にとっては良い環境ですので、是非ご応募ください。

小川:本日はありがとうございました。ChatGPTに限らず、今後も新しいテーマにどんどんチャレンジしていくつもりなので、引き続きお願いします。