インタビュー「プログラミング×サーバーサイドエンジニア」

 プログラミングの知識を用いた仕事とはどういうものか、今回は教育用アプリケーション「Goocus」を開発し、教育×ITの領域で事業展開するCastalia株式会社でサーバーサイドエンジニアとして活躍する飛田俊介さんにお話を伺いました。

(左腕にはApple Watch、やはり新しいガジェットは試さずにはいられない)

ーー経歴についてーー

  キャスタリアでサーバーサイドエンジニアをやっている飛田(ひだ)です。三十路なのでうちの会社のエンジニアの中ではまあまあ年上です。もともと子どもの頃に趣味でプログラムを書いていて、それが好きだったこともあり、都内の会社でSEとして働き始めました。受託開発とソーシャルゲーム運営を経てこれで3社目ですが、ずっとプログラマーとして仕事をしています。


ーー住まいについてーー

  「ギークハウス」という系列のシェアハウスに住んでいます。他の人と相部屋ではありますが、都心でも安く住めますし、住民は IT に関わりのある人が多いので、プログラミングの話をしたり他の会社の事情を聞いたりすることができます。前に住んでいた他のギークハウスでは、外国からの旅行者に泊まる所を用意することもやっていたので、英語を聞いたり話したりする機会もありました。

(エンジニアやクリエイターなど、インターネット文化やコンピューターの好きな人達のためのシェアハウス)

ーー仕事についてーー

「Goocus」 という学習サービスのサーバーサイドを Python で書いています。このサービスは iPhone や Android のアプリなどのクライアントと、サーバ上の Web アプリ間で通信をして動作する形になっていますが、その Web アプリの方の開発をしています。具体的にいうと、スマホなどから要求された学習コンテンツを返したり、逆にスマホから学習の状況やユーザーの回答を送ってもらってそれをデータベースに保存したり、またそれを後から管理システムで教育担当の人が確認できるような機能を作っています。

 1日の仕事としては、機能の追加やバグ修正などの作業1つ1つをチケットという単位にしてチームメンバーで割り振っていて、この作業を1つ1つすすめていっています。自分の担当のチケットのコードを書いたら誰かにチェックしてもらって、また別のチケットにとりかかる、という感じです。またある程度のチケットが完了したら、確認用のサーバにアップロードしてマネージャなどに確認してもらいます。それで全てOKが出たら本番のサーバにアップロードします。

ーー仕事の楽しい瞬間・大変なことーー

 仕事をしていて楽しい瞬間は結構色々あってまとまらないんですけど、ゲームのように何か問題をクリアできると楽しいと思います。例えば厄介なバグをつぶしたとか、遅い処理を高速化したとか、分かりづらいコードをシンプルに書き直したとか、そんなことで楽しいと思います。コードは追加すれば追加するほど複雑さが増すので、その意味でも敵のレベルがどんどん上がっていくゲームのようだなと思います。最初は簡単に追加できる機能も、あとから追加しようとすると色々な部分への影響を考える必要があるため、難しくなっていきます。

 仕事で大変なのは正解がないことです。「ユーザーの要望をどのように実現すべきか」は正直なところ、やってみるまで分かりません。関数1つの書き方でさえ、絶対にこれが正解、というものはないと思います(可読性やパフォーマンスなど、様々な要素がからむため)。つねに頭を使って現時点での判断をする必要があるので、そこは大変だと思います。

(Pythonの国際会議にて発表する飛田さん)

ーーこれからプログラミングを学び始めるみなさんへーー

 正解はないと言いましたが、コードはそもそも何度でも書き直しができます。だから何度でも試すことができます。どこかでつまったら、ほうっておいて別の作業に移ってもかまわないです。後からもっとよく書けそうだったら書き直せばいいです。他の人と意見が食い違ったら、試しにその人の意見通りにしてみてください。やっぱり自分の意見が正しかったと思えば、後からでも書き直せます。どんどん技術が変わっていく時代に必要なのは、柔軟性だと思います。昨日の正解が明日は間違いになっていることだってあり得ます。間違えたって死ぬ訳ではないので、何度でも試してみてください。

 ただ仕事としてのプログラマはコードを書くのが仕事ではなく、プロダクトを作るのが仕事なので、逆にコードといつまでもにらめっこするのはやめた方がいいと思います。コードをよくすることも大事ですが、その前に自分の作っているプロダクトがよくなるようにすることを考えた方がいいと思います。

 最後に他に必要なスキルですが、それは間違いなく検索スキルだと思います。問題に直面したら何度でもしつこく色んなキーワードで検索してください。という訳で本当に必要な裏スキルは粘着スキルだとも言えます。何度でも試す粘り強さです。皆さんも頑張ってください。

 ※今注目されるコード人材。コードアカデミー高等学校に関心のある方は、お気軽にお問い合わせください。→ お問い合わせはこちら