R-plus+ #05 Bontemps Justin

Rist staff interview #05 Bontemps Justin 〜幅広い技術、お客様への細やかな対応でRistを支えるアプリエンジニアの挑戦に迫るインタビュー 〜

Bontemps Justin 2020年3月Rist中途入社
アプリ開発チーム・エンジニア
フランス出身
フランスのÉcole Centrale de Lyon大学卒業後、日本の大手製造業会社へ就職。幅広い業務を担当しエンジニアとしての経験を積む。
現在は、Ristアプリ開発チームでシステム設計・GUIアプリの開発を行っている。

今回はアプリ開発チームのジュスタンさんにお話をお伺いしていきます!
幅広い技術とお客様への細やかな対応で、Ristを支えるアプリエンジニアの挑戦に迫っていきたいと思います。
まずは、Ristに入社するまではどのようなことをされてきたのか教えてください。

Justin:大学はÉcole Centrale de Lyon(エコール・サントラル・ドゥ・リヨン 、略称:ECL)というフランスのリヨンにあるエンジニアの大学に通っていました。フランスでは有名な大学で、高度なスキルを持つ多くのエンジニアを輩出しています。全体的な学問を学ぶことができるという特徴があり、1年〜3年の間は、プログラミング、数学、電気、車のエンジン、哲学など幅広く勉強していました。そして最後の1年で最も関心のある学問を専門的に学びます。

エンジニアになりたいという夢があって大学を選ばれたのですか?

Justin:という訳ではなく、試験のランキングだけで決めました(笑)受験者のTOP300に入り、ECLに入学することができました。
その後大学の授業を通してプログラミングの面白さを知り、エンジニアとして活躍できる場所を就職先として考えるようになりました。
大学卒業後は、日本のアルミ加工の会社にエンジニアとして就職しました。そこでは開発部に所属し、組み込み小型デバイス・電気基板・モバイルアプリ・Webアプリのエンジニアと幅広く業務を行っていました。

新卒で日本の企業に入られたのですね。日本で就職をしようと思ったのはなぜですか?

Justin:大学で必ず海外へ3ヶ月間の留学をしなければならない制度があったんです。留学先としては様々な選択肢がありましたが、アジア圏に行きたいと思い、特に日本語に興味があったので日本を選びました。2013年3月に京都に来て、同志社大学の工学部に1年間通っていました。留学生活を通して、住みやすさを感じ、京都の街並みや日本を好きになり日本で働きたいと考えるようになりました。その後フランスに戻り、また1年間ECLに通いましたが、大学卒業後は日本で就職をしようと決めていました。

もう約7年間日本に住まれているんですね!どうりで、すごく日本語お上手だなと思っていました。それにずっと京都なんですね。京都の好きな場所などはありますか?

Justin:最初に日本に来たときはほとんど話せなかったんですけどね。講義は英語で行われていたので大きな問題はありませんでしたが、日本語は独学で勉強し、半年ほどで生活するには困らないレベルにはなりました。
好きな場所は京都の伏見にある『伏水酒蔵小路』という所です。一つの建物の中にお店が幾つもあって、どのお店でもメニューを共有して自由に食べることができます。一番の魅力は全てのお店に日本酒が置いてあることです。大学生の頃に初めてコンビニで日本酒を飲んで「なんやこれ」と思ったのですが、『伏水酒蔵小路』で、もう一度挑戦しようと飲んでみたらすごく美味しくて、そこからすっかりハマってしまいました。それに伏見はお酒の歴史もあって面白いです。酒蔵巡りもできますし。

さすが、京都歴7年だとお詳しいですね。調べてみると楽しそうなので行ってみます!公式HP『伏水酒蔵小路』

エンジニアの存在意義を理解してくれる役員、メンバーの存在

最初の就職先は京都のメーカーだったとのことですが、Ristに転職を決めた理由はなんだったのでしょうか。

Justin:前職は製造業の会社であり、エンジニアの会社ではないのでなかなか思うような働き方ができませんでした。
Ristは転職エージェントの紹介で知ったのですが、AIを扱っているということで面白そうな会社だなという印象を持ちました。AIは今後さらに発展し、未来の生活に大きく変化をもたらすものだと考えています。その未来を作る会社に自分も身を置いて、社会へ貢献したいと思い志望しました。
Ristの魅力は、エンジニアにとっての環境や制度が充実していることです。エンジニアの作業や存在意義を理解してくれる役員、プロジェクトマネージャがいます。そのような信頼してくれるメンバーの存在は非常に大切です。そして、ここであれば自分のしたいことができると考えました。
さらにRistは、外国人の採用も積極的に行っておりグローバルな会社です。そのため、会社として広い考え方ができたりと、実際に働いてからも非常に面白い職場だと感じています。

現在行われている業務を教えてください。

Justin:アプリ開発チームで、システム設計・GUIアプリ開発を行っています。

お客様の期待を超えた提案を

具体的にどういったことをされているんですか?

Justin:システム設計は、AIチームが作ったAIモデルをシステム化するプロジェクトです。
お客様のシステム効率化を図り、それぞれのニーズに合わせてシステム設計をしていくことが私の役目です。
まず、お客様とやり取りしながら要件定義書や仕様書を作成していきます。お客様が技術的な話を全て理解出来る訳ではないので、エンジニアとして、難しいことを簡単に分割して説明しなければいけません。
そのためにしっかり「要件定義」と「設計」のフェーズを行います。
「要件定義」を行う際は、正しくヒアリングし、どのようにAIモデルを実行するのかを、お客様の目的に合わせて考えます。
私自身、お客様の立場に立って「何が欲しいか」を考えます。そうするとお客様の期待を超えた提案が可能となることもあります。
そして、決まった内容の認識に齟齬がないように、文章で資料に残す必要があります。

「要件定義」ではどのようなことを決めていくのですか?

Justin:開発の目的や、細かい精度、最終的な着地点がどこかを明確にしておくことが重要です。
例えば、「性能」と「保守」について明確にしていきます。「性能」については「1分で何枚推論して欲しい」「リアルタイムでして欲しい」などというお客様からの要望をお伺いします。「保守」は、納品後に何か問題があった場合にどのように対応するかなど、細かいところまで決めていきます。

システムには主に「推論機能」「学習機能」「閲覧機能」の三つの機能があり、それをどのように実装するかを考えます。GUIアプリを作るか、PCの後ろでスクリプトを回すのか。
GUIとは、ウィンドウ上で絵やボタンなどを表示して選択や操作ができるインタフェースのことです。GUIであればどんな画面イメージにするのか、データベースを使うのか、どのように保存するのかを要件定義します。

例えば、推論の結果をどこにどう保存するかなどです。
オンプレミスを使用する場合は、お客様のシステムの中のデータベースを使います。クラウドを使用する場合は、AWSやGCPなどの外部のネットワークを使用しデータベースに保存します。
製造業のお客様ではセキュリティの問題で、まだまだクラウドを使うのが社内的に難しいお客様がいたとします。その場合は推論結果の保存はオンプレミスで行われます。お客様の社内状況や、環境に合わせた一つ一つの仕様などを、具体的にヒアリングを重ねて決定していきます。

お客様の環境に合わせて柔軟に開発ができるというのは、オーダーメイドで開発をするRistならではの部分ですね。

Justin:そうですね。さらに案件によっては、システムを簡単に使うためのGUIが必要な場合がありますので、GUIアプリの開発も行います。
お客様側でGUIアプリを立ち上げていただき、様々な設定や選択をして、そこから推論・学習・実行をしていただきます。
なので、ボタンや色の表示方法、グラフィックデザインなどを、いかに現場の方にとって、使いやすいもの、見やすいものになるかということを考えながらGUIをデザインします。
自分から提案したものに対してフィードバックをいただいたり、お客様のニーズをヒアリングして、できる限りお客様の求めるものに近づけられるように開発しています。

アプリ開発エンジニアのスペシャリストを目指して

なるほど。一言でアプリ開発といっても実際に行う業務は幅広いんですね。
Ristでの仕事をしていて面白いと感じることはなんですか?

Justin:Ristに入ってから初めて使うツールが出てくることがあります。GUIのツールもそうです。そのような経験のないツールを勉強して、プロジェクトに組み合わせ設計した通りにきちんと動くと面白いなと感じます。「面白いことをする」ことが好きなので、初めてのことに挑戦できる環境で開発できることが楽しいです。何より、それが成功すると嬉しいし安心しますし、モチベーションにも繋がりますね。
業務外ですが、趣味として個人のiPhoneアプリを作ったりするのも楽しんでいます。

どんなアプリを作っているんですか?

Justin:iOSのアプリが数個、ゲームが2つと小さいwebサイトを作っています。アプリは、カレンダーと連携して出社の日だけアラームが鳴るものや、家計簿アプリ、体重管理アプリを作っています。アプリを作るためには「JavaScript」と「Python」の言語を使うので、同時にどちらも勉強することができます。「JavaScript」は会社ではあまり使わないので忘れないためにも良いですし、スキルアップにも繋がるのでプライベートで使っています。

自分で専用のiOSアプリが開発できたら面白そうですね。そういえばダイエットの方は調子どうですか??

Justin:続けているけど痩せていないです。それもあって体重管理のアプリを作ったんです(笑)お昼はオフィスでお菓子だけしか食べてないのに。で、夜にお腹すいてその分いっぱい食べてます。でもそれが良くないのかなって。

それは本当に良くないと思っていました(笑)でもお菓子が常備されていると食べてしまいますし、Ristはダイエットに向いてない環境ですよね。。

Justin:自由にお菓子食べ放題なのは良いんですけど、自由に食べすぎていると良くないですね。そういった所も含めてRistの「自由なところ」が好きなんですが。

そうですよね。例えば他にどういったところが「自由」だと思われますか?

Justin:案件が決まったら、どういう風に実装するかなどを全て自分で決めていけるところですね。
時間をどう使うかも自由で、何事も自分で決めて出来るというところが良いと思います。もちろんその分結果を出さなければいけません。なので、自分自身で考えチャレンジしたい人がRistには多く、そういった人がフィットできると思います。

ジュスタンさんが今までにチャレンジしたこと、また今後チャレンジしたいことはなんでしょうか?

Justin:未経験からデータベースの開発をしたことです。Ristに入社してから、ある案件でデータベースの設計・構築をする必要がありました。しかし自分はデータベースエンジニアでもなく、それまでデータベースについての経験もなかったので、一から勉強して開発をし、最終的にはお客様が非常に満足していただける形にすることができました。
今後は、次の案件を楽にするために社内のコードベースを広げたいと思います。
お客様ごとに新しいアプリを開発するのではなく、すでに開発したものを使えるようにするということです。
つまり、ベースの中によく使いそうなアプリを用意しておいて、案件がきたらベースの中から使えそうなものを取って組み合わせて、納品出来る仕組みを作っておくのです。そうすると開発時間も減り、効率的に短納期で納品できるメリットがあります。

同じアプリ開発メンバーも、ジュスタンさんは知識の少ない分野でも学習して壁を乗り越えることができるとおっしゃっていました。さらに、技術が手広く、フロントエンド、バックエンド何でもこなすことができると伺っています。

最後に、今後の目標を教えてください。

Justin:直接AI開発に関わらなくても、アプリ開発エンジニアとして、Ristを通して社会に大きく貢献できるシステムを生み出していきたいです。
製造業界では、今まで人間が行っていた手間な作業を、AIに任せたいという要望が増えていて、AI導入をしていくトレンドがあります。その中には、自社で一度AIシステムを開発しようとしたけど上手くいかなかったという企業様も多くいらっしゃいます。そのように、一度はAI導入を試みたけれど諦めてしまった企業様の課題も、Ristであれば解決できる、サポートができるという存在でありたいと思っています。
そのためには高いスキルや知識が必要です。Ristは継続的にチャレンジできる環境がありますので、多くの案件やリスクがあることにも挑戦していきたいです。そして、アプリ開発エンジニアのスペシャリストになることを目指します。

ありがとうございます。なんでもやりこなしてしまうというジュスタンさんなので、難しい案件などにもどんどん挑戦し、多くの課題を解決してくださることと思います。今後の更なるご活躍に期待です!