高専卒のAndroidエンジニアがチームラボの『受託開発』でやりがいを感じているポイントとは?|メンバーインタビュー#4
みなさんこんにちは、チームラボ採用担当です。前回に引き続き、チームラボのメンバーを紹介していきます。第4回はチームラボのデジタルソリューション(受託開発)分野でKotlinやFlutterを用いてスマートデバイス向けアプリの開発を担当しているエンジニアに話を伺いました。自社サービスではなく、受託開発における、エンジニアとしてのやりがいなどについて話してもらいました。
メンバープロフィール
チームラボとの出会いは?
高専時代に3度、インターンへ参加させていただきました。初めて参加した時は3年生で、プログラミングをかじっていました。Web開発に興味があったので、応募させていただきました。実務に携わる訳ではなく、Web開発のインターン用プログラムがあって、それに取り組む合宿をしました。
2度目は、正確に言うとインターンではなくて、アルバイトとして春休みに働かせていただきました。リクルートとコラボしたジクレポの案件にアサインされた記憶があります。これはリクナビの企業データを独自のロジックで解析、それを元に直感的なインターフェイスからオススメの企業を提案するという先進的なシステムでした。レコメンデーションの先駆けですね。僕はFlashで動かしていたメインコンテンツをJavaScript化する業務に携わりました。他にもバックエンドの業務をお手伝いさせていただきました。
3度目に参加したのは3ヶ月のインターンで、時期的に言うと大学三年生にあたる時でした。その際は、経済産業省と東京大学の松尾研究室が連携したアジアトレンドマップという、アジア各国のコンテンツ消費情報を計測/予測するサイトの開発プロジェクトに関わりました。例えば「ドラゴンボール」を検索すると地図上にエフェクトが出て、いつどの国で流行るのかの予測を見ることができるサイトです。僕はデータの可視化を中心に、フロントとバックエンドの業務を手がけました。
3度のインターンを経てチームラボに入ることに至った決め手は?
実際に働かせていただいて、チームラボは開発がしやすい環境だと感じました。そのことは大きかったですね。また、当時はソーシャルゲームの興隆期で、IT企業は一様にソーシャルゲームばかり作っていました。そのような状況にうんざりしていたことも、チームラボで働こうと思った一因です。チームラボはどのようなプロダクトを作るにしてもオリジナリティがあって、そこに強く惹かれました。結局就活はせず、チームラボ一本で入社しました。高専だと研究室の知り合い経由で出会った会社にインターンに行ったり、延長で就職することは、珍しくないと思います。
そもそもチームラボを知ったきっかけは?
高専に入学してから、プログラミングに取り組む部活へ入りました。当時の顧問が、チームラボで働いていた同学OBと知り合いでした。おそらくその関係で、役員の田村さんが学校で会社説明会を開催していて、そこでチームラボをはじめて知りました。
Androidアプリエンジニアになったきっかけは?
内定後の社員旅行でいきなり「アプリやるからよろしく」と言われました。Androidの開発元はあのGoogleですし、当時はAndroidの機能が改善されはじめた時期だったので、突然の話だったとはいえ、アサインに対する印象は悪くなかったです。同期でAndroidの開発経験がなかったのは僕ぐらいで、0からのスタートとなりましたが、仕事をしながら学ぶスタイルで乗り切りました。
外部の勉強会やイベントによく登壇していますが、どのような意義が有りますか?
アプリを開発しているとOSS(オープンソース)ライブラリに頼るケースも比較的多いのですが、ただ恩恵に預かるだけではなく、自分が学んだことを共有することで、エンジニア界隈のエコシステムに良い影響を与えたいと考えています。また発表する内容について深く理解しなければならないので、準備の過程を通して多くのことが学べると考えています。
チームラボ内での共有会にはどのような意義がありますか?
Androidエンジニアは複数の案件に携わるケースが多いのですが、一方で、案件内で新しく発見した知識があってもなかなか共有できないという問題を抱えていました。そのため定期的に、知見を共有する場を設けています。そういった共有会で、自分の関わっていない案件について、他のメンバーが発見した知識や、問題の解決方法等を知ることで、自分が携わる案件でも参考にしています。
昨年はアメリカで開催されたGoogle I/Oにも参加していましたが、その様子を教えてください
今回が初参加でしたが、とても楽しかったです。Googleの方達によるトークセッションや最新技術を30分ほどで試せるスペースが用意されていました。他にもGoogleの方や参加しているエンジニアと交流する機会もあって、楽しむことができました。
高専生は英語が苦手というレッテルを貼られることも多いですが、僕はまさにその通りなのでかなり苦労しました。海外に行くのも初だったので(笑)。
高専生へ勉強に関するアドバイスはありますか?
Google I/Oで英語で苦労したとはいえ、後輩へのアドバイスするとしたら…英語の勉強は後回しでいいと思います。高専の良さは様々な機材を借りれることなので、まずはその環境を最大限に活用し、気になるデバイスがあれば、ガンガン使わせてもらって、開発経験を積み重ねるのが一番だと思います。ただ、そうやってものづくりを突き詰めていくと、そのうち英語の壁にぶつかる場面が出てくるので、そうなったら英語も勉強すればいいと思います。
エンジニアとしてどう成長していきたいですか?
ずっと今のようなペースでアプリ開発を続けようとは思っていません。新しく興味の湧いた分野に移っていくと思います。
個人的に、今はサーバーサイドに関心があります。学生時代よりWeb開発の敷居が下がったようです。アプリの案件で耳にした話ですが、サーバーサイドをサーバーレスで組む手法が普及して、実際にアプリを作りながらサーバーレスで組むようなことを数人のアプリエンジニアと一緒にやっている人たちもいるようです。そういう開発手法にも興味があります。
また、Google I/Oで面白かったのはアシスタント関連で、インターフェースが充実したことによってかなり使いやすくなっていますし、汎用性も高くなっています。そのあたりも気になりますね。
モバイル向けのUIに関する知見もそうですが、ソリューション事業を担当する中で、クライアント側に立って開発をした経験や、ユーザーのリテラシーに幅がある状況で開発した経験は、プラットフォームが変わっても活かせると思います。あとは変化の多い業界で開発を続けてきたので、そこで得た知見は役に立つと思います。
エンジニアとして、チームラボでアプリ開発を行うことの、好きなポイントは?
アプリエンジニアは携われる領域が広いので、どういうことが実現できるのかワクワクしながら開発しています。ネット通信以外だとカメラやセンサーを使うこともありますし、デバイス自体もどんどん進化して、可能性が拡張されていますから。また、サーバーサイドも含め、色々と作ったものを最終的にアプリで束ねて、デザインに組み入れて提供することも多いので開発の花形をやらせてもらっているという意識があります。いかに使いやすいデザインで提供できるかという点にやりがいを持ってやらせていただいています。
難度の高い作業になるとは思うのですがですが、アプリエンジニアの立場から、UIを提案したいという思いもあります。チームラボのデザイナーは展示やwebなど様々な業務に携わっているので、アプリエンジニアの視点から見ると、時々、アプリには適さないUIが提案されることもあります。その時にアプリでこの機能を作るならこうしたほうがいい、という提案をする機会はありますね。システム設計を見越した上で、最適なUIを組み込むことに、今後は特に強く意識していきたいです。
teamLabのソリューション案件やカタリストの企画はエンジニアの目にどう映りますか?
大手企業の案件なのに、ぶっ飛んだ企画が多いという印象ですね。そこがチームラボらしさかもしれません。実際にそうした案件は開発も面白いです。
また、お客様の課題に対して、ソリューションを企画をすることにも自体にも興味はあります。ただ、自分自身が、クライアントの方と円滑にコミュニケーションを取れるか不安ですね。チームラボの人たちはみんな話しやすくて良いのですが、お客様との対話となると、うまく進めるのには、やはりそれなりの準備は必要かと思いますので、もう少し勉強が必要だと思っています。
チームラボにいるエンジニアの特徴は?
意外に思うかもしれませんが、みんな落ち着いた雰囲気を纏っています。チームラボにはオタク気質というか、こだわりの強い人が何人かいて、彼らは自分が見落としていたことに気づいてくれることも多いので、とても助かっています。何よりもそういう人たちといるのは楽しいですね。高専に通じるようなところがあるので、高専生は入社後の人間関係であまり苦労しないと思います。
どんな人がチームラボにあう?
チームラボの魅力は職種ごとの垣根が少ないことだと思います。例えば問題解決のブレストがうまくいかなかった時、デザイナーやカタリストの方に相談することができます。ただ自分の殻にこもってしまうとどうしようもないので、ある程度の協調性が必要ですね。
一緒に働きやすいカタリストとはどんな人?
エンジニアにある程度の裁量を持たせつつ、やることはきちんと確認してくれる方とは仕事がしやすいですね。プロジェクトの進め方が上手な方は、厳しくするところと緩くするところの線引きが上手な印象があります。チームラボにはそういう方が多いですね。
一見派手そうに見える人もいて、若干近寄りづらいですが、それでも仕事においては、エンジニアが納得しやすいように話を決めてくださるので、そのあたりに好感を持っています。みなさんすごいなと思いながら開発しています。
業務や社内勉強会以外でスキルアップのためにやっていることは?
テクノロジー、特にAndroidアプリ界隈の動向はTwitter等で見るようにしています。優秀なエンジニアの方たちが何に興味を持っているのかをチェックするようにしています。業務であるないに関わらず、アプリを開発する際は必ず自分の採用している手法が最善のものかを確認するようにしています。以前に似たようなアプリを作ったことがあっても、当時の手法をそのまま使うのではなく、そのアプローチが今でも最善策なのかを確かめるわけです。時間はかかってしまいますが。
優秀だと思うエンジニアはどんな人?
開発でも開発外のことでも問題解決ができる人はすごいと思います。技術を組み立てるだけではなく、それをソリューションとしてチームラボの文脈にあてはめることができるエンジニアはかっこいいですね。テクノロジーが凄く好きな方は、それに固執するあまり本質的な問題を、テクノロジーが解決しやすい方向へと捻じ曲げようとすることが時々あります。しかし本当にすごいエンジニアはどれだけ難易度の高い問題でも、鮮やかに解決してしまいます。チームラボにはそういう方が多いと思います。
最後まで読んでいただき、ありがとうございました。チームラボでは現在、多岐にわたる業界のアプリ開発を担当して頂くエンジニアをiOS/Androidともに募集しています。「Flutterで大規模開発ができる」、「サービスの企画・設計・技術選定の段階からエンジニアとして関われる」などにご興味をお持ち頂けるスマホエンジニアの皆様、ご応募お待ちしています。
採用に関する情報はTwitterでもタイムリーに発信しておりますで、少しでもご興味をお持ちいただけたら、ぜひフォローをお願いいたします。