「人が人らしく生きられる社会の実現」をミッションに、AI技術で社会に貢献する活動を行う東大発ベンチャーのAI総合研究所NABLAS。そんな弊社で活躍するメンバーの日常やバックグラウンドの話を通して、NABLASの魅力を幅広く紹介していきます。
今回は、先端AI技術の社会実装を支えるためソフトウェア技術にも力を入れているNABLASで、ソフトウェアエンジニアとして活躍中の渡辺さんに「NABLASにおけるソフトウェアエンジニアのやりがい」を中心にお話を伺いました!
■困難な課題に挑戦する中で得られるソフトウェアエンジニアの楽しさ
Q. まず、NABLAS社に参画したきっかけを教えて下さい。
私はオーストラリアの大学でコンピューターサイエンスを専攻していたのですが、学生の間にも、より実践的な経験を積みたいと思い、インターンを通して日本のスタートアップにいくつか参加しました。その中で、難しい課題に挑戦できる環境に魅力を感じてNABLASを選びました。
Q.どのような業務に従事しているか教えて下さい。
現在担当する業務は主に2つあります。
1つ目は社内HPC(計算)環境の整備を担当しています。社内にはDGX Stationなどスパコン並の計算能力を持つワークステーションやGPUクラスタ、それらを繋ぐネットワーク機器など、研究開発を支えるハードウェアがたくさんあります。また、その上にはJupyterHubやDocker Swarm、利用状況をモニタリングするシステムなど、リサーチャーやエンジニアが効率よく計算機リソースを利用できるように仮想環境やシステムを構築し、運用しています。こうした環境を継続的に改善しつつも安定して稼働させるのも重要な業務です。
2つ目は「iLect System」という弊社が提供するAI学習プラットフォームの開発です。受講者にJupyterやGPUを使って学習できる環境作りや、提出した課題の自動採点などを行っています。実は、社内HPCインフラの整備とプラットフォームとしてのiLect Systemの開発には技術的に重なる部分が多いのです。iLect SystemのインフラとしてはKubernetesを使用していますが、処理はすべて自動化されています。GPUのプロビジョニングはバックエンドでKubernetesのAPIを利用していますが、GPUを効率的かつ自動的に稼働させる点に苦労しました。事例や論文を調べてもわからないので、自分で試行錯誤しながら取り組み、一つずつ解決してきました。困難ではありますが、同時にやりがいもあります。
こうした自由度が高い環境で、挑戦しがいのある課題に取り組めるのはNABLASの魅力ですね。
■みんなで意見を出して進めるスクラム開発ではエンジニア全員がプロダクトオーナー
Q.どのように業務を進められているのでしょうか? また、どのような方が向いていますか?
iLect事業としては、開発を担当する我々システムチームに加えて、教材を作るコンテンツチームと運営を行うオペレーションチームで構成されています。これらのチームが毎週全体で議論しながらプロジェクトを進めています。機能改善や業務改善など、皆でディスカッションしながら方針を決めていますが、iLectにとって有意義な意見であればすぐ反映されるスクラム開発の体制になっています。
私自身、NABLAS社に参加する以前からスクラム開発の文化に触れてきましたが、大事なことは、これからチームに加わる人も含めて全員、プロダクトオーナーになったつもりで積極的に意見を出しながらプロジェクトを進めることだと思っています。新たにプロダクトを作りたいと考えられている方や、企画からプロジェクトの方針に関わっていきたいと思われている方は特に向いているのではないかと思います。
ソフトウェアエンジニアとしての技術に加え、機械学習に興味がある方も歓迎です。iLectでは、最新の機械学習やディープラーニング技術を網羅した教材を使った教育プログラムを提供しています。そのような教材は、普段研究開発に関わっているリサーチャーなどで構成される「コンテンツチーム」が、その知見を活かして開発していますが、我々システムチームと連携する場面が多いです。また、意見交換が気軽にできる文化と環境があることも相まって、実際、異なるチームの間でも交流が活発で、私自身幅広い分野を知ることができて勉強になっています。
■エンジニアとして魅力を感じる仕事環境
Q.仕事環境についても教えて下さい
弊社では社員同士のディスカッションや協力を重視していますので、オフィスでの勤務やコミュニケーションを大事にしています。そのため、会社としては、エンジニアが働きやすさを感じるように様々な工夫がされていますし、環境整備にはとても力を入れていると感じています。
まず、デスク周りの環境ですが、ハーマンミラーの椅子や大型の曲面ディスプレイ、電動昇降デスクなどが標準で用意されています。書籍は必要に応じて購入できますし、マウスやキーボードも自由に選べます。
NABLAS社はオフィスビルの3フロアを専有していますが、それぞれのフロアで特色があり、その日の気分に応じて好きな作業場所を選べるのも嬉しいです。集中したい時は周りに人がいない場所で仕事をして、困った時は他のエンジニアと相談しながら進めることなども出来ます。変わった設備としては、セミナールームがある1Fに設置されたボルダリングウォールでしょうか。気分転換に体を動かす人もいますよ。
また、社内勉強会も定期的に行っています。競技プログラミングや機械学習などをテーマにして、誰でも自由に参加できます。エンジニアもそれぞれに得意分野があり、MLOpsに詳しい人などもいますね。
Q.今後取り組まれたいことについて教えて下さい
今後の目標としては、iLectで受講者の学習状況を解析しながら、得意と苦手なスキルを可視化するレーダーチャートのようなスキル表を自動生成する仕組みを実装したいです。今はチームメンバーが2名体制なので難しいですが、仮想化インフラやクラウドインフラの知識を持った人が参加してくれるとありがたいです。Vue3やTypeScriptなどのフロントエンドやバックエンドについては、業務を経験しながら覚えていけます。ぜひプロダクトオーナーとして、iLectを素晴らしいプラットフォームにしていきましょう。