Blog

R-plus+ #18

   

R-plus+は、社員同士のコミュニケーションを目的とした社内報を、一般に公開した記事です。

※本記事はインタビュー当時の内容です。

福島 康太郎(ふくしま こうたろう)
千葉大学 認知情報科学科 卒業
2023年8月 中途入社

今回は、サービス開発部でエンジニアとしてご活躍されている福島さんにお話を伺いました!

まず初めに、Ristへ入社された経緯を教えてください。

福島:転職を考えていた頃、X(当時のTwitter)のリツイートで流れてきたRistの求人情報を見て応募し、入社する運びとなりました。

転職活動では、AI関連の職種を探されていたんですか?

福島:はい。Software 2.0という有名なネット上の文書を読み、その内容に興味を持ったのでAI界隈の職種に就きたいと考えていました。

Software2.0のどんな内容に興味を持たれたのでしょうか。

福島:Software2.0には、従来のプログラム開発をSoftware1.0とし、それに対する新たな開発手法としてSoftware2.0の内容が書かれています。
Software2.0は簡単に言うと、ニューラルネットワークの学習を活用する開発手法のことです。それまでのプログラム開発はプログラマーが明示的にコードを書いていましたが、Software2.0では、データをニューラルネットワークに与えて学習させることで、コンピューターが自動的にプログラム(重み)を獲得する、というような内容です。
初めて読んだ時、「これって本当なのかな?」という疑問と、事実かどうか確かめてみたいという興味が湧きました。

ちなみに私がこの文書を読んだのは2022年頃ですが、公開されたのはもっと前の2017年でした。当時の考え方からすると、記事の内容は衝撃的で話題になっていたようです。今でもこの記事を引用するブログをよく見かけます。

Software2.0を最初に読まれた時、AI関連とは別のお仕事をされていたんですか?

福島:大手企業の検索事業部で、ソフトウェアエンジニアとしてWeb APIの開発をしていました。日本でも有数のリクエスト数を捌くインターネットサービスの仕事に携わっており、チームメンバーにも恵まれていたので、仕事はやりがいもあり充実していました。
なので、「数年後にAIの業界で働けたらな」くらいに思っていたのですが、Ristの求人情報に興味を持ち結果的に選考に通ったので、悩んだ末に入社を決めました。

そうなんですね。当時の仕事が充実していた中、新しい業界への転職を後押しした決め手は何だったのでしょうか。

福島:先程お話したように、Software2.0を初めて読んだ時にその内容が本当かどうか気になって、最後まで自分の手で確かめてみたくなったからです。
ソフトウェアエンジニアとして一定の経験を積み、今後のキャリアも見えてきた頃ではありましたが、一度気になると走り出さずにはいられない性格なので思い切って転職しました。(笑)

また、Software2.0の記事以外にも、当時はGPT-3やGPT-3.5あたりがAPIとして公開されていた時期だったので、ニューラルネットワークの仕組みについて興味の赴くままにいろんな記事を読み漁っていました。そうした複合的な理由や興味もあり、AI業界への転職を決めました。

なるほど。では、AI業界の中でもRistへの入社を選択された理由について教えてください。

福島:Ristへの入社を決めた理由は、技術力の強い会社に入りたいと思ったからです。
Kaggle※で世界トップクラスの成績を収めるAIエンジニアやデータサイエンティストがRistにはたくさん在籍していることを知り、ここなら技術の基礎や正しい手法を学べて、自身の成長につながると考えました。

Kaggle:世界最大級のデータ分析プラットフォーム。Kaggleでは企業や団体からコンペティション形式で出題された課題に対し、Kagglerと呼ばれる参加者たちが分析モデルの精度を競います。

本気で取り組むからこそ、仕事は面白い

福島さんの仕事内容を教えてください。

福島:クライアントから提供されたデータの分析や、活用方法の提案に関する業務に従事しています。
現在メインで関わっているLLMの技術を使った案件では、プロジェクトマネージャーの役割も担っており、案件のスケジュールやタスクの管理・要所要所で意思決定などの役割も担っています。

他には、LLMについての理解を深めるために、社内向けの「LLM勉強会」を定期的に主催しています。LLMに関連する最新情報や論文記事を共有しあうことがメインで気軽に参加できる場なので、自分と違う部署の方も参加してくださっていて嬉しいです。

今の仕事において、前職や過去の経験が活かされている部分はありますか?

福島:コードの読み書きや技術調査・調査レポーティング、Docker※やKubernetes※の経験などは、エンジニア時代に培ってきたことが活かされていますね。また、学生時代に認知情報科学を専攻しており、統計や機械学習の古典的な部分は授業で学んでいたので、それらの基礎知識も多少役立っているかと思います。
一方で、AI業界に関しては未経験なので、日々新しい知識を吸収する必要があります。

Docker:コンテナ(アプリケーションとその実行に必要な環境をまとめてパッケージ化したもの)を用いてアプリケーションの開発、配信、実行を簡素化できるプラットフォーム。
Kubernetes:Dockerをはじめとするコンテナを運用・管理および自動化するプラットフォーム。

未経験の業界に転職されて、苦労を感じることや大変なことはありますか?

福島:うーん、入社してから今までで、苦労と言えるほどのことはあまりなかったように思います。
もちろん、データサイエンスについてはたくさん勉強して統計検定も受けましたが、日々新しい情報をキャッチアップしたり、知らない知識を積み重ねていくことは前職の頃から当たり前のようにやっていたので、もはや習慣化できている部分もあります。

また、業務でわからないことがあっても、同じサービス開発部のメンバーには相談しやすく、いろんなことを教えてくれる人も多いので、環境面においても恵まれています。

知識を身につけていく習慣は、前職で自然と身に付いたのですか?

福島:そうですね。新卒の頃に大きな案件を任されたこともあり、知識が追いつかない中で必死に周囲のスピードについていく日々を送りました。
1週間を通して意味が理解できなかったことは、土日の間に必死に勉強して、月曜の定例会ではあたかもその意味を最初から知っていたかのように話す、ということを繰り返していました。(笑)

かなり努力されていたんですね。そうした頑張りには一定のモチベーションも必要だと思いますが、福島さんにとって、何が仕事のモチベーションにつながっていますか?

福島:仕事は私にとって趣味でもあるので、それ自体がモチベーションです。仕事そのものが面白くて好きです。

特に、仕事のどういったところに面白さを感じていますか?

福島:仕事ってみんな本気で取り組むので、そこが面白いと思います。
例えば、趣味でボードゲームなどをしていると、ふざけだす人がいたりして、ボードゲームそのものの本質から外れてゲームが歪んだりすることがあります。
仕事の場合はそういう「おふざけ」なしに、常に本気で向き合えるところが好きです。

仕事は会社の中でやっていて、会社は資本主義というルールの上で経営されています。なので、市場で生き残るためには経営資源を投資して製品やサービスを差別化・向上させる必要があります。そういうふうにお金や戦略が絡んで、かつ痛みや喜びが伴うからこそ、みんなある程度「本気」になりますし、ボードゲームよりも遥かに状況が複雑なので、そういうところも面白いですね。
もちろん、ボードゲーム自体はおふざけがあっても楽しめるのですが。(笑)

   

Ristの好きなところを教えてください。

福島:私が入社した頃はちょうどメンバーの増員時期だったので、それに伴う組織変更があったり、新しい事業の立ち上げもあったりと、いい意味で激動なところが好きです。
変わり続ける組織は強いし、面白いと思います。

あとは、Ristには物事の発信を上手にできる人が多いですね。社内のチャットや社員のSNSを見ていると、興味深いニュースや記事を積極的に発信している人がたくさんいるなと感じます。

福島さんも、社内チャットなどを通じて積極的に情報発信されている印象があります。

福島:発信自体は、実はあまり得意ではないんですけどね。(笑)
エンジニア界隈だと、ブログなどを通じて情報発信する人は多いですが、自分はちゃんと意識してやらないと億劫になってしまうタイプです。ただ、未来の自分に向けて、ブログなどに情報を残しておくことは大事だと思います。過去に書いた記事を何度も見直しますし、社内チャットも時にはメモ代わりに使っています。

また、そういうことを続けていると、たまにXで「この記事を読んで助かりました」などの声をいただけることもあるんです。自分のためにやっていることが誰かのためになると、より嬉しいです。

福島さんが思う、Ristの強みは何ですか?

福島:技術を根本から理解している人が多いところだと思います。

「技術を根本から理解している」とは、具体的にどういったことでしょうか。

福島:以前の部署でKaggle Grandmasterの蛸井さんと一緒に仕事をすることが多かったのですが、技術の基礎を理解しているからこそ出てくる意見を聞くことができ、いつもすごいなと思います。

例えば、あるアルゴリズムについて「論文にこう書いてあるから自分はこう思っている」「こういうアルゴリズムはこういう性質があって、だったらこういうデータには向かないよね」みたいに、技術についての根本的な理解があるからこそ、それに基づいた思考を組み立てて発言されている印象があります。蛸井さんに限らず、Ristには論文をたくさん読む人や膨大な基礎知識を蓄えている人が多いですね。

AI業界で仕事をしていくためには、ただ技術について詳しいだけではなく、それをビジネスの要求に対して転用できることが大事です。
私たちは、ビジネスの要求に対して技術的観点でのフィルターを通し、適切な判断をする必要がありますが、その判断ができるのは技術的な根本を理解していることが大前提だと考えています。
根本的な知識に基づく答えをクライアントに出してあげることが重要で、それをできる人が多いことはRistの強みであり、価値だと思います。

自ら実装することで物事の基礎に対する理解が深まり、見える景色が変わった

これまでで、人生のターニングポイントとなった出来事はありますか?

福島:新卒の頃に、趣味でWebサーバーを自作した時ですかね。
当時、私はバックエンドエンジニアとしてWebサーバーの一つ上の階層にあたるWebアプリケーションの開発を担当していましたが、「サーバーがネットワーク経由でどうやって情報をやり取りしているのか」「どうやってWebフレームワークはリクエスト・レスポンスをしているのか」など、気になることが多かったので、実際にWebサーバーを自作してみたんです。

そうすると、WebアプリケーションがOS上で動くプロセスや仕組みだったり、クライアントからHTTP越しに受け取ったデータをどのように捌いているかなど、Webアプリケーションの基礎に対する理解が深まり、自分の中で見える景色が変わりました。

基礎を理解しておけば、例えばビジネスで「システムを使ってこういう監視がしたい」という要求があった際に、「Webアプリの層だとその要求に対するログは取れないから、この階層でログを取ろう」とか、「じゃあ、この方法を使って運用回避をしよう」みたいに具体的な策を提案でき、的確な意思決定に繋げることができます。
Webサーバーを実際に作ることでそうした気づきを得ることができ、物事を土台から知ろうとする癖がつきました。この出来事を経て、バックエンドエンジニアとして一皮剥けたと同時に、自分のキャリアにおけるターニングポイントにもなりました。

福島さんは、AI業界への転職理由についても「Software2.0の内容が本当かどうか自分の手で確かめたかったから」とお話されていましたが、実際に自分自身の目で見たり体験することを通じて、疑問と向き合う姿勢が素晴らしいですね。

福島:たしかに、理解するために深く調べるというよりは、自分の手を動かして理解することが好きかもしれません。
一方で、実践に限らず理論を学ぶことももちろん大事なので、情報をキャッチアップしたり、その内容を落とし込むことで理解を深めるケースもたくさんあります。
例えば、Ristでプロジェクトマネージャーの役割を担う上では、物事の根本やメカニズムを考えることを常に意識していますが、その際は手を動かすというよりも情報収集に手を抜かないようにしています。

「物事の根本やメカニズムを考える」とは、具体的にどういったことですか?

福島:プロジェクトマネージャーの仕事は、スケジュールを決めたり、タスクを振ったり、レビューをしたりといろいろありますが、それらはまず「根本的なマネージャーの役割」から派生しているタスクだと考えています。
なので、そもそもマネジメントとは何を達成すべきなのか?を考えるようにしたり、本やWebの記事で具体事例や関連情報を読むなどして、自分の中である程度抽象化することを意識しています。

今、自分の中でのマネージャーの役割は「プロジェクトにおけるゴールを掲げメンバーに共有し、そのゴールに向かう道中で必要な意思決定を行うこと」だと考えており、それを実行するためには、自分の中で物事に対して「腹落ち」をしておくことも大事だと思っています。これができていないと、周囲の意見を受け入れすぎることになるからです。
プロジェクトマネージャーは事業マネージャーとエンジニアの間に立ち、両方の温度感を知る重要なポジションです。その役割を理解した上で、何かを決める場面ではいろんな人の意見を鵜呑みにせず、自分の中で冷静に噛み砕いてから判断することを心がけています。

なるほど。ご自身の役職であるエンジニアとしても、根本から理解することを常に大事にされているのでしょうか。

福島:そうですね。エンジニアとしては、例えば、自分が開発に携わっている部分の一つ下のレイヤーも理解しておくことを大切にしています。ソフトウェアやシステムの仕組み・根幹を支える技術として、コンパイラやOS、CPUやGPUといった低レイヤーの技術には興味がありますね。
エンジニアリングに限らず何かを学ぶ時には一次情報を確認することを意識しているので、開発のために新しいフレームワークを触る際には、まず公式ドキュメントを読むようにしています。

あとは、「AIを使うこと」も大事にしています。業務では使っていないのですが、それ以外の時間で「Cline」というAIコーディングツールを使ってみるなど、最新の開発トレンドから置いていかれないようにしています。

   

ここまで経歴や仕事内容についてお伺いしてきましたが、福島さんのプライベートについても教えてください。
休日にされていることや、趣味はありますか?

福島:休日にすることとして、思いつくのは外食ですかね。しゃぶしゃぶの食べ放題みたいに、料理に加えて仕組みやアレンジが楽しめる店が割と好きです。多少遠くても、1〜2時間くらいなら移動して食べに行くこともあります。

趣味に関しては、最近はフットサルですかね。関東でKagglerが集まるフットサルに参加したらすごく楽しくて、そこから好きになりました。初めてフットサルをした時に1ゴール決めた時は嬉しかったです!

初めての挑戦でゴールを決めるとは、才能の片鱗が見えますね。(笑)

福島:フットサルの楽しさを知ってからは、シューズとボールを買って公園で練習しています。今の目標は、ボールをもっと上手く蹴れるようになって、左右の足でトラップ・蹴る・ドリブルしながら前を向く、あたりができるようになりたいです。

愛用されているボールとシューズの写真をお送りいただきました。
Ristにもフットサル部がありますが、本社がある京都中心の活動なので、ご出張の際はぜひ福島さんにも参加してほしいです!

   

   

福島さんの今後の目標を教えてください。

福島:最近Kaggleのコンペティションに参加しているのですが、現在はKaggle Expertなので、Kaggle Masterへの昇格を目指したいです。

あとは、LLMの案件を担当しているので、実際にLLMを自作して基礎からその仕組みを理解できるようにしたいですね。
また、今のLLMは、直前までの文脈をもとに次のトークン※を確率分布から選択するという仕組みですが、世間の期待感とLLMができることにはまだギャップがあると思っています。
なので、そこに上手く適応できるビジネスの課題が何なのかについても考えていきたいです。

トークン:LLMが入力されたテキストを処理するために細かく区切った基本的な単位のこと。この単位に分化する処理をトークナイゼーションと呼ぶ。

今回は、福島さんにお話を伺いました。
福島さんなりの物事に対する理解の深め方や、Ristの強みについて思うことなど、ご自身で明確な考え方をお持ちである点が印象的でした。

知識を得るために必要なことを日々着実に実践し、ご自身の成長につなげている福島さん。
これからのご活躍にも期待しています!