TOP キャリア 働く競技プログラマー図鑑数学というバックグラウンドを武器に生産スケジューリングへ挑む


数学というバックグラウンドを武器に生産スケジューリングへ挑む
2020.11.30

小島 健介 Kensuke KOJIMA

情報学研究科知能情報学専攻/レーティング:黄色/業種:ソフトウェア開発/職種:エンジニア/アスプローバ株式会社

大学院で博士号を取得後、ポスドクとしてプログラムの正しさを検証する形式手法の研究に従事。以降、教員としてデータサイエンス教育に携わった後、AtCoderのコンテストを通じて2020年アスプローバに入社。競プロ歴は12年。知的探究心旺盛で、知らない問題を解くことが好き。

競技プログラミングと私

自分の新たなキャリアを拓いてくれた競技プログラミング

競技プログラミングとの出会い

 大学院で本格的に情報処理の研究に携わったことでアルゴリズムやプログラミングに強く興味を抱くようになり、それを通じて“競プロ”の存在を知りました。ある時、ちょっとした暇ができた際「物は試しに」という軽い気持ちで海外の競技プログラミングコンテストに参加。それがきっかけとなり、AtCoderを含めた他のコンテストにも参加するようになりました。AtCoderでは、現在の職場であるアスプローバ主催のマラソン型コンテストに延べ4回 参加し、うち2回で優勝することができ、特別賞を1回いただきました。

仕事観

 もともと数学が好きで、大学でも論理学計算機科学などを扱っていたことから、私の思考様式は情報系よりも数学にあると思っています。それゆえ数学に近いアルゴリズムに強いとの自負があり、そうした武器を活かせる環境で仕事がしたいと思っていました。アスプローバに入社したのは、前述のコンテストを通じて代表が私に興味を持ってくださったことに加え「生産スケジューラ」という難易度の高いソフトウェアに魅力を感じたから。「ここならきっと自分の武器を活かしながら、さらなるスキルアップを図ることができる」と思いました。

仕事のリアル

数学的な思考を武器に、新たな価値創造につながる開発に従事

仕事内容

 現在は自社製品である生産スケジューラ『Asprova』の研究開発に携わっています。実際の工場ではどんな問題があり、それを解決へと導くにはどうすればいいのかを考え開発を進めていくのが私の仕事。会長や社長もプロジェクトに深く関わっており「こんなことができないだろうか」と我々プログラマーと論じ合いながらアイデアを考え、実装を進めていきます。入社当初は何も分からない状態でしたが、分からないことを数学的に定式化し、頭の中で整理していくことでだんだんと開発に慣れていくことができました。

魅力とギャップ

 自分の得意とする数学的な観点でプログラミングに取り組めるのは大きな魅力ですね。生産スケジューラの開発はマラソン型のコンテストに近い感覚で取り組むことができ、それが面白さにもなっています。反面、大学で学んだ知識がピンポイントで生かされる場面はさほど多くはありません。常に学び考え、試行錯誤を繰り返しながら課題を乗り越えていく姿勢が求められます。

1日のスケジュール

09:00

 テレワークで始業。まずはミーティングの資料に目を通すことから一日がスタート。

10:00

 開発チームのミーティング。開発中の機能についてアイデアを出し、開発の方向性などについて議論を行います。

12:00

 休憩&ランチ。気分が乗っているときはそのまま仕事を続けることも。

13:00

 アルゴリズムを考えたり、コードを組んだりといった実装作業。行き詰まりを感じたら、部屋の掃除をするなどしてリフレッシュを図っています。

15:00

 細かな実装工程をテーマに、チームの方針などを再確認しつつ意識合わせのミーティング。

16:30

 ミーティングで割り当てられた実装を進めたり、自分が担当した部位のテストを行ったり。

17:30

 終業。規定時間にとらわれすぎない自由なワークスタイルなので仕事に集中しやすいのも魅力。

仕事と競技プログラミング

たくさんの「分からないこと」を把握し、自分のものとしていく

活かせる・求められるスキル

 現在のプロジェクトではC++を用いており、そのコーディングスキルと基本的なデータ構造への理解は必須。また、数百万単位という大きなデータを想定したコードを書くため、計算量を正しく見積もるスキルも重要です。AtCoderのスコアでいうならば、400~500点程度、PAST(アルゴリズム実技検定)でいえば中級~上級あたりの知識は日常的に用います。何よりも「与えられた問題を解く」だけでなく「実現すべきこと」を考え「それをどのようにして果たせるのか」といった自ら発想して仕事に取り組む姿勢が大切です。

今後の展望

 まだ、この仕事に携わるようになってから日が浅いこともあり、明確な目標といったものは定まっていないのが正直なところです。自分の気質として、分からないことを一つひとつ理解し、腑に落ちていく感覚が好きなので、これからもたくさんの「分からないこと」と向き合い自分のものとしていきたいですね。また、競技プログラミングについても、今後も業務と併行しながら慣れ親しんだAtCoderのコンテストに参加していきたいと思っています。解答側だけでなく、自分が問題を作る側も経験し、広く競技プログラミングと付き合っていけたら幸せですね。

広々としたデスク・入口にある世界地図のオブジェ・明るくコミュニケーションしやすいオフィス

小島 健介 Kensuke KOJIMA

大学院で博士号を取得後、ポスドクとしてプログラムの正しさを検証する形式手法の研究に従事。以降、教員としてデータサイエンス教育に携わった後、AtCoderのコンテストを通じて2020年アスプローバに入社。競プロ歴は12年。知的探究心旺盛で、知らない問題を解くことが好き。