転職・求人DODAエンジニア IT/トップ > 転職情報・成功ガイド > ギークアカデミー > 「半年先に求められる技術を先取りし、貢献できる場を求めてアンテナを伸ばす」KLab株式会社 稲田 直哉 氏 | ギークアカデミー
「半年先に求められる技術を先取りし、貢献できる場を求めてアンテナを伸ばす」
大阪府立高専卒業後、電気機器メーカーでデジカメのファームウェア開発に携わった後、2007年KLab Kラボラトリーで技術調査やアーキテクトと担当。主にサーバーサイドアプリケーションのアーキテクチャ開発を行う。
KLabの稲田直哉氏に仕事への取り組みを聞いた。高専プロコンの優勝経験を持つ稲田氏は、画像処理アルゴリズムやミドルウェアのように基礎に近い分野の仕事を手がけてきた。ソーシャルゲームの台頭で活躍できる場が広がったという。
- ──全国高等専門学校プログラミングコンテスト(高専プロコン)で優勝された経験があるのですね。
- 大阪府立高専にいたのですが、2年生から5年生まで、高専プロコンには毎年参加しました。2003年には競技部門で優勝しました。このコンテストは毎年4月に競技内容を発表して、本戦が10月です。一つのテーマについてたっぷり勉強する時間がある、そういうコンテストです。
- 優勝したときの課題は、形の異なる複数のブロックが与えられて、その展開図を矩形の中になるべくすき間なく敷き詰めるというものでした。プログラムはよりよい解が見つかるたびに出力するのですが、回答の入力が人力で制限時間内に入力を終えないといけないので、もっと良い解が出るのを待つかどうかは人間が判断しないといけませんでした。決勝戦では優勝できたものの、回答の入力を始めたあとでプログラムが完全解を見つけていました。それを回答できていればもっとかっこいい勝ち方ができたのに、という点で若干の悔いが残っています。
- ──最初の就職先ではどのような仕事をしていたのですか。
- デジカメのファームウェアの開発を3年やっていました。最初はたくさん勉強することがあったのですが、ある時期からは、そのメーカーのデジカメでしか通用しない知識しか吸収できなくなり、「これではいけない」と思うようになりました。東京では、Web系エンジニアが会社の壁を越えて勉強会などでコミュニケーションを取っているようなので「東京に行った方が世界が広がる」と思いました。
- ──そこで上京してKLabに入ることになったのですね。入社してからはどのような仕事をしてきたのですか?
- いろいろな分野の研究開発をしました。検索エンジンのインデックスを作るアルゴリズムを勉強して実装してみたりしました。ただ、残念ながら事業に結びつくサービスにまでなかなか結びつきませんでした。その後、ソーシャルゲームのブームが来て、ようやく自分が活躍できる場が広がりました。
- 例えば、以前にやった仕事の中に、モバイル環境向けのFlashの分析と合成がありました。当時はサービスには結びつかなかったのですが、ソーシャルゲームで出番が来ました。ゲームの演出でFlashを使い、ユーザーのメッセージやステータスなどの動的な情報を入れる必要があったのですが、既存のライブラリで作ったものだと処理が遅く、問題になっていました。そこで自分が作ったライブラリを適用すると、50倍から100倍の高速化ができました。
- ──基礎技術の研究が、最終ユーザー向けのサービス改善に直接結びついたわけですね。
- それ以外にも、ソーシャルゲームでは画像の合成の処理が頻繁にあるのですが──背景の上にキャラクター画像を載せるとかですね──組み合わせのパターンが多いので事前に全部の画像を用意しておくことができません。またサーバーサイドのアプリケーション構築に使っていたPHPの画像処理ライブラリは画像処理が遅く、時間がかかりすぎることが問題になっていました。そこで私がライブラリを改良して処理を数十倍高速にしたことがあります。
- この頃から、会社の利益に貢献できるようになってきた、という実感を持つことができました。私が所属している「Kラボラトリー」は3~5年先に役に立つものを作る部署なのですが、私の場合は半年先に役に立つもので貢献する方が向いている感じがします。

- ──今はどんなことをされているんでしょうか?
- 今、リアルタイム通信のインフラとして、Go言語を使ってミドルウェアを作っています。モバイルのゲームでも、近い将来はリアルタイム通信を使うようになるだろうと予測して、そのための仕事をしています。ソーシャルゲームの世界は動きが速いので、要求が出てから作り始めたのでは間に合わないからです。
- ──なぜGo言語を選んだのですか?
- C言語で作るのは面倒で難しい。またネットワークアプリケーションではNode.jsが流行していますが、JavaScriptは「魔術」的な部分が多くて、これも正しく安心して使えるものを作るのは難しいと感じていました。
- そんな中、Go言語はコアがコンパクトで、Cやアセンブラで書かれた部分もちゃんと読める。Node.jsのように「魔術」的なところがなく信頼できる。マルチコア対応も楽。他の選択肢に比べてちょうどいいバランスだと考えています。
- ──書籍『エキスパートPythonプログラミング』の翻訳者になっていますね。
- Pythonは、前職の時代から使っていました。開発環境がWindowsだったのですが、デバッグなどでいろいろなデータを取って調べるプログラムが必要でした。Windowsのバッチファイルではできることに限界があるし、Cでいちいち書くのは大変です。手早くプログラムが作れるスクリプト言語を何種類か調べて、その中で一番読みやすく保守性が高いのがPythonだと思いました。学生時代に授業でPerlを勉強したのですが、Perlだと半年触らないと自分で書いたプログラムを読めないことがありました。時々しか使わない場合でも生産性が高い言語ということでPythonがしっくりきました。
- 会社の中では、サーバーサイドのプログラミングはPHPがほとんどで、Pythonはごく一部で使われているだけです。ただ、Pythonをもっと知ってもらいたくて本を書きました。また社内でもっと使ってもらおうと『布教』活動をしています。
- ──WebアプリケーションにPythonを適用しようとしているのですね。
- そうです。PythonはWebアプリケーションのフレームワークが複数あるのですが、その中でしっくりきたのはFlaskです。他のフレームワークに比べるとコアがシンプルで、拡張の自由度が大きい。Ruby on RailsやDjangoのようなフレームワークは、改造しようとすると一から作った方が早い、ということになりがちです。
- 今のサーバーサイドの主流はPHPですが、Pythonを使う場合には、ソースコードの分量が半分に減ります。それにPHPと比較すると例外処理のサポートが充実しているので、より安全なコードをストレス少なく作れる。ただ自分がPythonが好きだからということではなく、効率よく、読みやすくて、安全なコードが書けるということで、Pythonを推進しようとしています。


- ──どんなふうにチームに関わるのがお好きですか?
- 本当は引きこもってコードを書いていたいんですけど(笑)。自分が直接関わっていないプロジェクトでもチャットを見て、困っていることがあれば「もっといい方法がある」と声を掛けたりします。チームに関わるという意味では、アンテナを伸ばし何かあった時に助けられる存在になりたいと思っています。
- ──自分が貢献できる問題を常に探しているのですね。
- そうです。といっても最近は会社が大きくなってきて、なかなか目が届きませんが。それでも、複数のプロジェクトを横断して活躍している人も増えています。会社としても今後もそういった人材を強化していく方向です。

![]() |
エンジニア特有の転職成功ノウハウや市場動向をご紹介 |
|
![]() |
インフラ領域特有の転職成功ノウハウや市場動向をご紹介 |
|
![]() |
クリエイター転職特有のノウハウ・事例などご紹介! |
|
![]() |
最前線で活躍するエンジニアのこだわりに迫る |
|
![]() |
先端を走る技術を、ギークに学ぶ |