LIFULL Creators Blog

LIFULL Creators Blogとは、株式会社LIFULLの社員が記事を共有するブログです。自分の役立つ経験や知識を広めることで世界をもっとFULLにしていきます。

LIFULLエンジニアインタビュー #1 iOS&おうちハックエンジニア

こんにちは、この記事の校正のために textlint 試しているLIFULL HOME'S事業本部 技術開発部 の冨田です。

LIFULLエンジニアのインタビューを通して、なかで働くエンジニアはどんな人なのか、どんなことをしているのか、を知ってもらうきっかけになればと思い、このような取り組みを行っています。

前回の記事も是非ご覧ください。

ゲスト紹介

本日のゲストは LIFULL HOME'S事業本部 新UX開発部 の高橋さんです。 iOSアプリのLIFULL HOME’S と そのバックエンドを担当しているエンジニアです。

f:id:LIFULL-tomitam:20170710163146j:plain

目次

学生時代

冨田(以降 冨): 初めてPCを触り始めたのはいつごろですか?

高橋(以降 高):中学の時に父親が買ってきた Windows のペイントをちょっと触った程度ですね。

冨: いつ頃からプログラムに興味が?

高: 大学の課題でC言語に触れました。 自宅にLinuxのPCを用意して、さらに工夫したコードにしていましたね。

研究室時代は通信レイヤーからメタデータデータベースなど広く扱う研究室で、 私はWebアプリを作ってメタデータでレコメンドするような研究をしていました。

冨: エンジニアを目指した背景は?

高: もともと手を動かしてモノを作るのが好きで高校の頃から研究寄りのエンジニアになろうと思っていました。

LIFULL入社前

冨: LIFULLに入社される前はどのような仕事を?

高: 電機メーカーに5年ほど勤めていました。

最初の2年くらいは研究職で言語はC#、通信プロトコルからWebまで幅広いことをやっていました。
その後、AndroidやiOSアプリの開発を製品寄りの部署で担当することになったので、品質には気を配るようになりましたね。

iOSアプリは1から作ってリリースしました。
アプリを作ると言ってもシステムの設計が良いだけでもだめで、如何にユーザーにストレスなくするか、UIスレッドをブロックしない、ユーザーが使い易い設計、ビジュアルのアピアランスを含めてどうしたらいいんだろうって… すごい考えることが多くて総合的に力が付きましたね。

f:id:LIFULL-tomitam:20170710163144j:plain

LIFULL入社後

冨: その後2015年にLIFULL(旧ネクスト)入社するわけですが、電機メーカーから自社サービスに転職したきっかけは?

高: 電機メーカーでアプリを作っていてユーザー向けのプロダクトが楽しいと感じて、研究よりそちらの方が向いてるなと感じました。

もっと高度なアプリを作りたいと思い、より最新の技術に触れられ、リリースサイクルが速い環境に身を置きたいと思って転職しました。

冨: スキルアップに一番インパクトがあったプロジェクトはありますか?

高: tvOS版のLIFULL HOME'SアプリはSwiftを使ってフルスクラッチで開発したので、新しいライブラリの選定もして、iOSアプリにつながる知見を貯めることが出来ました。
リーダーに近いこともやっていたのですが、メンバーが素晴らしく自主的に動いてくれたので順調に開発が進み、ストアの特集にも掲載されました。

iOS版のアプリだと「1人で家を探す」体験になりますが、tvOS版だと「家族で一緒に家を探す」という新しい、面白い体験を提供できたと思っています。
家は家族で住むものなので今後も「家族で一緒に家を探す」という体験を追求していきたいと思っています。

冨:tvOSの勉強会も開催され、気付きはありましたか?

高:まだ、リリースされているアプリが少ないので基礎的な情報もまだ流通していないという印象ですね。
これから盛り上がっていきそうな雰囲気を感じました。

冨: 社内ツールとしてチャットワークに登録されているタスクの期限が近いとお知らせしてくれるチャットボットも作っていましたよね?

高:業務の効率化で情報共有の手段としてチャットボットは導入しました。

その機能や、バグチェック担当者を毎週ローテーションで割り振ってくれる機能があるのですが、後輩が自分の発想で実装してくれました。 その場を提供できたのは嬉しいですね。

元々はConfluenceやJIRAで集約された情報の更新が気づきにくいのでチャットワークで通知するために導入したのですが、まだ実現できていないですね。

冨: Jenkinsも導入していましたよね?

高: 前職では当時デブサミで自動UIテストやCIの話が盛んだったのでJenkinsを導入しました。

LIFULLではすでに導入されていたので使い倒そうと思いました。
JenkinsからGitのブランチを指定するとDeployGateからベータ配信し、Chatworkで通知するようにしました。

www.slideshare.net

家庭と趣味とスキルアップのバランス

冨: 前回の磯野さんも育児休暇を取得していましたが、高橋さんはどうでしたか?

高:社内では短い方ですが、妻と相談して一ヶ月にしました。

冨: 子どもが生まれた後どうやって技術のキャッチアップの時間を作っていますか?

高: 通勤時間と子どもが寝てからですね。 通勤は片道1時間くらいあるので、立ってる時はRSSリーダーで情報収集、気になる技術の調査、英語の勉強、Podcastを聞いていたりしますね。
電車で座れるとノートPCを持ち歩いているのでコードを結構書いてます。

冨: 趣味でテニスをされていますが、家庭、スキルアップとの時間配分ってどうされていますか?

高: 基本は家庭優先ですね。その次はスキルアップ。

テニスは中1では軟式、大学では硬式をしていました。
テニススクールに今も通っているのですが、子どもが寝てから行っています。
週末には試合が入ることもあるのでその埋め合わせが大変ですね。

冨: 体力づくりもエンジニアリングに影響してきたりします?

高: ストレス発散にはなりますね。 メンタルも鍛えられる、気持ちをコントロールできるような気がします。

おうちハック

冨: おうちハックで<家族の帰宅を通知してくれるキーホルダー>を作られていますがきっかけは?

高: 勉強会を運営している人が前職の先輩で、「次回発表してね」って言われて期限が決まっていてやらざるを得ない状況に追い込まれました。

期間は結構あったので構想を練ってRaspberry Piを買って、知り合いなどにセンサーは何買ったら良いか尋ねてから買いました。 電子回路はお手本を見て組みました。

冨: 家族の反応はどうでしたか?

高: 今まで作ったものは家族が使ってくれないものだったのですが、これは家族が喜んで使ってくれました。

家についたことをいちいち連絡するのは面倒だし、GPSで位置情報を共有するアプリもありますがプライバシーとかの問題もあるのでこの方法がベストだと思いました。
共働きのときは「ご飯作っておいて」、「外で食べてくるよ」とか連絡しやすい状況になりました。

冨: 勉強会での反響はありましたか?

高: 周りからアドバイスをもらえたり、コンクールに出してみませんかと言われたり、本にも掲載されました

コンクールで賞は取れませんでしたが、その後登壇する機会がもらえたり、そこからネットワークができたり、発表を見た人から話しかけてもらえるので嬉しいですね。 ただ参加するだけとは比較にならないくらいの経験を得られましたね。

また、発表資料を作ることにより、試行錯誤しながら作っていた設計がセルフレビューでき、より洗練されました。

www.slideshare.net

技術のキャッチアップ、好きな開発環境、言語など

冨: どのような開発環境が好きですか?

高: アプリがメインなのでXcodeが中心ですが、サーバー上でコーディングしたり、設定ファイルを書き換えるシーンが増えているのでVimを勉強しています。

言語は好き嫌いなく雑食で生きています。 必要なら必要な言語をその都度覚えて使うというスタンスです。

冨: お薦めの本はありますか?

高: 詳解Swift、詳解Objective-Cは定番かつ鉄板ですね。
WEB+DB Press、Software Designはたまに読んでいます。
Effective Javaで設計や命名ルールなどのベストプラクティスを得られましたね。

Javaは歴史が深い言語なので書籍でしっかりと学べる気がしていて、Swiftなど最近の言語はWebから学ぶことが多いです。

冨: 技術のキャッチアップはどうしています?

高: feedly、Twitter、ポッドキャストのRebuildなどですね。
あとは本屋に行ってネタを探したり、iOS、Swift、IoTの勉強会やAWS、GCPなどの大きめなカンファレンスもいきますね。

冨: 最近興味のある技術はありますか?

高:IoTが気になっています。

ずっとアプリをやってきて楽しいですが、さらに高度で新しいことをやりたいですね。

通信周りも以前やっていたのでハードに関連するものもやりたいと思っています。

冨: 取捨選択はどうしています?

高: 以前は気になったら全て調べていましたが、最近は現在持っているスキルに隣接する分野を選んでが習得して隣接領域を徐々に増やしています。

冨: アウトプットはどうしています?

高: テニスの試合結果を管理するRailsでアプリを書いていて、あと少しでリリースしたいと思っています。

冨: Railsはこのために覚えたのですか?

高: 結構前から調べていました。このアプリを思いついた時にRailsがマッチすると思って選択しました。

その他にもテニスのフォームを繰り返し確認するためのアプリをまだ公開はできていませんが、作っています。
既存のアプリは繰り返すために指でシークしないとならないので不便でした。

冨: 時間のハックなどはしていますか?

高: 通勤時間などのスキマ時間を効率的に使っていますね。

調べ事したものはEvernoteに書き留めています。
散発的に調べてしまうと見つからなくなるので検索できるようにしています。

f:id:LIFULL-tomitam:20170710163145j:plain

若手に向けて

冨: エンジニアとしてのこだわり、哲学的なものはありますか?

高: プロ意識を持って設計、実装しています。

判断に迷うときは「それはプロフェッショナルとしての判断なのか?」ということを意識しています。

あと新しいデバイスがでたら触ってみるというのを心がけています。
触ってみることによって新しい発想が出くることもありますし、引き出しが多いと実現できることも増えるので。

冨: 自分自身が若い頃にやっておけばよかったなと思うことはありますか?

高:アウトプットをもっと出す、コードを書いて成果をまとめて、リリースするなり、社外で発表するなり、OSSにするなりしておけば自分の価値を上げられたと思いました。

将来のビジョン

冨: 今後どのようなエンジニアを目指していますか?

高: ちょっとしたアイデアのサービスではなくて、いままで技術的な課題があってできなかった、世の中になかったサービス作れるようなエンジニアを目指しています。

冨: 取り組みはどのようなことをしていますか?

高: 今は引き出しを増やしている段階ですね。
色々技術を調べてみて触ってみています。
AWSやGCPなども触りつつ、IoTなどちょっとハード寄りも触っていますね。

次回予告

冨: この人のスキルアップ術を聞いてみたい、またはお薦めなエンジニアはいらっしゃいますか?

高: QAエンジニアの中野さんの話を聞いてみたいです。
品質に関して真摯な考えを持っているように感じるので。
品質を確保するという専門分野を選択したきっかけ、どのようなところで勉強しているのかが気になります。

作る側はどう意識して作って欲しいと思っているのかが気になりますね。

編集後記

おうちハックは家族にも利用され、コンクールで知り合いも増えて、スキルアップにもつながる良いアウトプットだなと感じました。

また、引き出しを増やして、色々なサービスを自力で作れるようになるという姿勢が印象的でした。

お知らせ

LIFULLではエンジニアをはじめ各職種で採用を行っております。
こんなエンジニアと働きたい! という方は弊社の採用サイトもご覧ください!

recruit.lifull.com