【連載】エンジニアに聞く、AIシステム開発プロジェクトの魅力とは ~データ活用の社会実装と業務に繋げるアナリティクスアプリケーション開発~

データ活用をシステム面から支援するデータエンジニアリング組織の魅力に迫るべく、ブレインパッドに転職した中途入社社員の声をお届けする連載企画。
今回は、前回ご紹介した「アナリティクスアプリケーション開発組織」に所属する平木さんと伊藤さんのインタビューです!
※前回の紹介記事はこちら

こんにちは。人事部の島﨑です。

AI、機械学習プロジェクトの社会実装について、作って終わりではなく、リリース後に運用しながら価値を生み出していく、継続的なビジネス成果を求めていくことが重要である、といったお話が前記事にて大変印象的でした。
本インタビューは、前回に続き、アナリティクスアプリケーション開発組織の平木さんと伊藤さんに登場いただきます。
AIシステム開発案件の業務プロセスはもちろん、実装に向けて難しいこと、やりがいに感じること、組織の魅力や雰囲気など、たくさんお話しいただきました!

データエンジニアリング本部 アナリティクスアプリケーション開発部
テクニカルサービスG グループマネジャー 平木さん(写真左)
ビジネスシステムG 伊藤さん(写真右)

ブレインパッドへの入社ストーリー

── 本日はよろしくお願いします。さっそくですが、お二人についてブレインパッドの入社前から教えてください。

平木
私はブレインパッドが2社目で入社8年目になります。前職ではネットワーク系の企業に入社し、ネットワークはもちろん、インフラやOS周りの経験を積んでいました。クラウドサービスが流行り始めた時期に、当時ネットワークの最新技術であるSDNという製品に関わったのですが、その経験を通じて、物理ネットワーク構築の多くは、今後クラウドに置き換えられていくだろうと感じたことが転職を考えるきっかけになっています。

伊藤
私は高校の時からゲームを作りたいと思っていて、高校の時からプログラミングを始め、大学でも情報科学を学んでいます。エンジニアとしてキャリアをスタートし、ブレインパッドは3社目です。高校の時からプライベートでもたくさんゲームを作っていたのですが、ゲーム会社には就職せず、SIer企業に入社しました。

平木
ゲーム会社には就職しなかったのですね。

伊藤
そうなんです。優れた技術を使ったからといって、必ずしも面白いゲームができるわけではないことを体感していたのと、もっとビジネスに役立てるようになりたいという思いが芽生えたからだと思います。あとゲーム開発はこれまで通りプライベートで作れば良いかなという思いもありました(笑)。SIer企業に入社後、いろんなシステム開発に関わりましたが、そのうちシステム観点で業務を整理していくことにやりがいを感じるようになり、ITコンサルタントに肩書を変え、前職のコンサル会社に入社しました。前職はベンチャー企業で一人で何でもやる感じだったので、もう少し規模が大きく、組織としてもノウハウがある会社にいきたいと思って、転職しました。

──ブレインパッドにはどのようにして出会ったのですか?

平木
私が転職活動をしていたときに、”ビックデータ”がバズワードとして流行っていて、転職エージェントからブレインパッドを紹介されて興味を持ちました。私自身、大学で自然言語処理による文書分類を研究テーマにしていたので、データ活用には興味を持っていましたし、システム開発やクラウド技術を幅広く学びたいと思っていたので、ブレインパッドは希望に合致する会社でした。

伊藤
ネットワーク技術を極めるのではなく、システム開発やクラウド技術を希望していたのですね。

平木
はい。もともと大学ではコンピュータ理工学を専攻していて、ソフトウェア関連を中心に学んでいましたし、Google CloudがまだGCPと言われる前の時代から個人でTwitterのBotを動かしたりしていました。新卒時代は、システムを開発するにあたって、ネットワークの仕組みを知らないままではいけないという思いもあって前職に入社したのですが、ネットワークやインフラ技術の重要性や面白さを感じる一方で、やはり自分はものづくりが好きだという気持ちが強くなり、転職を決意したのが背景になっています。
AIや機械学習プロジェクトをやりたいというより、開発を学べる環境が良いと思ってブレインパッドに入社しました。

伊藤
私は、前職で一緒だった人がブレインパッドに入社していて、リファラルで誘っていただいたのですが、平木さんと同じく入社理由は、機械学習をやりたいからではありませんでした。実は、大学時代にニューラルネットワークを実装したり、前職でもAIや機械学習のプロジェクトに参画していたのですが、”どんなシステムを作るのか”ではなく、”ビジネスの課題解決にコミットできる環境が良い”と思い、ブレインパッドに入社しました。ブレインパッドは、データ活用を促進する事でクライアント企業のビジネスに貢献するというスタンスが自分の意向とマッチしていましたし、面接を受けた時に、机上ではなく、しっかりした業務システムを作っているという印象を受けたことが大きいです。
他のコンサル会社や大手SIer企業とも迷ったのですが、誘ってくれた先輩がブレインパッドで楽しそうに働く姿を見たのが、率直な入社の決め手です。

──ブレインパッドに入社後、関わったプロジェクトについても教えてください。

平木
私は前記事に登場した鈴木さんの翌月入社で(2016年頃)、AIシステム開発に関わるエンジニア組織をこれから立ち上げるタイミングでジョインしたため、組織の成長と一緒に、さまざまなプロジェクトを経験してきました。右も左も分からない時代からスタートし、最初はエンジニアの数も少なかったので、今いるメンバーで対応可能な開発を考えて方針を立てていましたし、組織が成長してからは、ノウハウを活かして中規模以上のプロジェクトにも挑戦してきました。
さまざまな業界のクライアントや分析テーマを経験できたのはもちろんですが、自分の組織においてもいろんなフェーズを経験できたことも、とても良い学びになったと思っています。

伊藤
プロジェクトはどんなものに参画されてきたのですか?

平木
入社初期は、配車計画の最適化や需要予測等をテーマに、プロトタイプレベルの小規模な開発をしていましたが、キユーピー様の不良品検知システムを発端に、社内で画像系の案件が増え、護岸の劣化検知サービス伝統工芸品の不良品検知プロダクトのプロジェクトに参画してきました。この時期からプロトタイプレベルではなく、将来的にシステム化を視野に入れた開発に変化していったと思います。その後、強化学習を使ったゲーム開発の検証作業を自動化するプロジェクトに入りました。普段ゲームコードを読む機会もなかったので、ゲーム開発の仕組みを知れ、とても面白かったです。直近はLPガスの配送最適化のプロジェクトに入っています。伊藤さんも同じプロジェクトですよね。

伊藤
はい。私は入社してから、コンビニの配送最適化のPoC案件を経て、平木さんと同じLPガスのプロジェクトに参画しています。既にプロトタイプとして検証されていたものを業務システムとして開発していく案件で、昨年無事にリリースしました。現在はフィードバックをもらいながら改修を重ねて、より良いシステムにしています。このプロジェクトは、私が参画したタイミングで既に開発がスタートしていたのですが、業務要件の詳細化やガス会社の基幹システムとのデータ連携の方法、インフラ基盤など、業務システムとして使い続けるために様々なことを検討し、進める必要がありました。

平木
伊藤さんはプロジェクトマネジメント、私はテクニカルマネジメントとしての役割を担っていたのですが、最適化案件は扱うデータが増える分、システムとしても複雑になる傾向がある上に、このプロジェクトでは、分析モデルが比較的遅いタイミングで決定したので、試行錯誤のプロジェクトでした。

──分析モデルがなかなか決まらないということが、発生するのですね。

平木
そもそも分析モデルがすぐに決定することはなく、まずはデータサイエンティスト主導でモデルの概念検証がスタートします。検証の中で、適切なデータ選定やアルゴリズムを決定していくのですが、アルゴリズムを渡すだけではイメージが湧かないことも多いため、エンジニア主導でモデルが最低限動作するコア機能を実装したプロトタイプ版を提供します。プロトタイプを先方の担当者に使ってもらいながら、実際の業務に使えそうか?モデルに問題ないか?のフィードバックを得て、改善を繰り返していく流れになるのですが、このプロセスを急かしてしまうと、使えないシステムを作る可能性があるため、慎重に検討する必要があります。

伊藤
プロトタイプ版になることで、ユーザが具体的にイメージを持てるようになり、その流れで挙がってくる要望もありますよね。例えば、文字を自動で認識するAI OCRのプロジェクトがあって、検証段階のモデル精度が99%だったとします。ぱっと見は精度が高いように感じても、1ページの中に1文字でもエラーがあったならそのページ単位で作業をやり直す必要があるような業務だと、業務効率化としては結構なリスクに感じますよね。その場合は精度よりも結果の提示の仕方やタイミングでより効率化が狙えないかを検討したりします。机上で見る数値と、実際にプロトタイプ版で見る数値では、ユーザの感じ方に違いが出てくることもあります。

平木
そうですよね。システムのリプレースであれば業務は変わらないですが、クライアント企業は、AIや機械学習を使って業務を大きく変えたいと思っていることが前提です。そのため、ユーザの業務フローにも踏み込んで改善を繰り返すという意味で、時間を要することが多いように思います。プロトタイプ版では、モデルが想定通り動いているかどうかの確認をしながら、データサイエンティストとエンジニアが協業して、具体的な業務適用の方針を決めていきます。その後は、プロトタイプの実装を何度か改善し、システム全体の仕様や開発スケジュール、今後の拡張に向けた計画を立てていく流れになります。

AIシステム開発プロジェクトの魅力とやりがい

──プロトタイプ版の方向性が決まった後の開発プロセスはどうなるのでしょうか?

伊藤
基本的なシステム開発とプロセスは変わりませんが、全体的に厳格なウォーターフォールで進めることはなく、要所要所で決定事項を決め、その後はクライアント企業と一緒に考えながら作り直しを進めていく感じになります。新しいものを作ろうとしているのに、契約やドキュメントをガチガチに固めてしまうと軌道変更ができず最初に想定した範囲以上のものは出来上がらなくなってしまいます。とはいえ、期間と費用は有限なため、マイルストーンを決めて達成するべきゴールは定めて、その中でアジャイル的に進めていくのがイメージになります。

平木
伊藤さんがおっしゃるとおり、プロトタイプ以降は一般的なシステム開発のプロセスと似ていますが、短い期間でフェーズを切って進めることが多いです。分析モデル側で問題が発覚したり、より良い方法がある場合には変更を取り入れる計画を立てますが、ウォーターフォールのように開発期間を長く設定するものだと、そのような変更を受け入れることが難しくなるためです。

──開発プロセスで難しいと感じるところは、どこでしょうか?

平木
前述の通り、改善を繰り返すことを前提とした開発プロセスになるものの、システム観点でも決めるべきことは多いため、クライアント企業がやりたいことを先読みして、技術選定していくのは大変かもしれません。開発プロセスと言っても、与えられた設計書通りに開発すれば良いものではなく、仕様やシステムの全体構成を理解できていないと、先読み自体ができません。具体的には、クラウドサービスの選定や非機能要求等を設計していくのですが、厳しい非機能要求を満たすためには、それなりにインフラの運用費用も増えるため、バランスのとれた設計にしていくのは難しいと思います。

伊藤
プロトタイプの段階で課題がある程度クリアになっていると、クライアント企業としては期待度がかなり上がっているのですが、要求通りに開発スケジュールや体制を立てると、膨大なコストになってしまうんですよね。

平木
例えば、プロトタイプの段階では2-3人のユーザで利用できれば問題がなかったとしても、実際の業務では「ユーザ100人で3年使います」といった話になると、その規模に合わせた可用性(サービスを停止することなく安定して提供する能力)を検討する必要があります。特にセキュリティは、厳しければ良いというわけではなく、ユーザの利便性や費用にも関わるため、決めていくのが難しい部分だと思います。

伊藤
画面の使いやすさはどこまで追求するのか?セキュリティ面はどうするのか?といった判断は、クライアント企業によっても判断が異なるので、それこそプロジェクトによって進め方の差が大きい部分ですよね。開発が本格化すると、エンジニア主導でプロジェクトを進めますが、私は開発フェーズが本格化する前に、必ず何が顧客にとってベストなのかを見極めながら、何をなぜ開発する必要があるのかをクライアントと一緒に突き合わせるようにしています。
あとは、使い続けていくための仕組みとして、システム稼働後に必要となる分析モデルの学習や精度モニタリングの仕組み、さらにはモデル自体の入れ替えのための仕組みも用意しておく必要があります。これは、一般的な業務システムの開発とは異なり、AIシステム開発ならではのノウハウが必要かもしれません。

──AIシステム開発ならではのプロジェクトの面白さについても教えてください。

平木
大変そうなことばかり話してしまいましたが(笑)改善を繰り返して、より良いものを作っていくということ自体はやりがいを感じますし、楽しいと思っています。あとはデータサイエンティストと一緒に仕事ができる点も面白いです。やはりエンジニアとは考えが違う点もあるので、自分にはない新しい考えや観点を学びながら、ひとつのものを一緒に作り上げる喜びがあります。

伊藤
私も平木さんと近しい意見ですが、新しい技術に触れつつ、実際に業務で利用され続けるシステムを作り上げるという点をやりがいに感じています。検証やプロトタイプといった短期間の利用ではなく、実際に現場の人が利用し、顧客ビジネスの価値となっていくモノを作り上げる楽しさがあると思います。

平木
技術的な部分だと、常に新しい技術をウォッチして、機会があればプロジェクトに導入できるところも魅力だと思います。この6-7年の間に、フロントエンドはSPA化しましたし、コンテナはもちろん、最近ではKubernetesも積極的に利用しています。少人数で開発しているので、あまりアグレッシブに技術を変更して学習コストが高くなることは避けたいですが、顧客のUXを加味しつつ、開発運用コストも減らせそうであれば総合的に判断して導入ができます。大変なことももちろんありますが、”良いものを皆で作っていこう”という文化があるので、1人で戦っている感じはありません。みんなで助け合いながら、チームでプロジェクトを推進できるのは、とても良い環境だと思っています。

今後の展望

──今後取り組んでいきたいこと、キャリアの展望等について、教えてください。

伊藤
プロジェクトの難易度が進化し、人や組織も大きくなる中で、データサイエンティストやエンジニア、コンサルタント等、組織横断での連携を強化したいと思っています。今はプロジェクトに合わせて都度チーム体制やコミュニケーションを組み立てていますが、組織横断のプロジェクトもどんどん増えてきているので、より仕組み化に向けて取り組めたら良いと思っています。

平木
私は今年からテクニカルグループのマネジャーになったので、組織としての成果を出していきたいと思っています。新卒も含めて新しい人が増えてきているので、メンバーの育成や教育について、より力を入れて取り組みたいです。グループのミッションにも技術調査や技術教育というテーマがあるので、技術的な事を相談したら、何でも応えられるようなチームにしていきたいですし、機械学習の基盤等、ゆくゆくはツールも整っている環境にできたらと思います。個人の目標としては、技術が一通り分かるような人材でい続けたいと思っています。

伊藤
私も個人としては、もっとビジネス寄りに踏み込んでいきたいと思っています。今は、データ分析を支援する流れでシステム開発のプロジェクトに入る形ですが、解決策がデータ分析として落ちる前に、クライアント企業のビジネス的な相談に乗れたら、今とは異なるソリューションを提供できるチャンスもあるのではと思っています。

──本日はありがとうございました!
お二人のお話から、ユーザーに使われ続けるシステムを作り上げることができること、チームで協力し、より良いものづくりに挑戦できることといった点が魅力なのだと思いました。
AIシステム開発のプロジェクトに少しでも興味を持った方は、ぜひ気軽にご連絡ください!

ブレインパッドでは、さまざまな職種を積極的に採用しています。
ぜひ採用サイトからご連絡をお願いいたします!

■データエンジニアリング本部の紹介資料
speakerdeck.com

■ ブレインパッドの求人一覧
www.brainpad.co.jp