競技プログラミングに熱中。そこで得た思考プロセスを活かし、株式会社いい生活で実現したいキャリア

大学時代は、競技プログラミングの部活に熱中していたという中村さん。卒業後は、株式会社いい生活に新卒入社。入社してから現在まで、不動産管理会社向けのクラウド型賃貸管理サービス『いい生活賃貸管理クラウド』のサーバーサイドの開発をメインに担当している。また、最近は開発領域も広がったほか、開発以外の業務にも携わっているという。
そんな中村さんが、大学で培った競技プログラミングの経験を活かして、現在どのようなエンジニアとして働いているのか、また、いい生活に入社して新たに成長できた部分や、今後の目標などについてインタビューを行った。

■企業紹介
「情報テクノロジー×不動産」という新しい市場領域を創出し、不動産ビジネスを加速させるためのシステムをクラウド・SaaSとして企画・開発。
「テクノロジーと心で、たくさんのいい生活を」というミッションの実現に向けて、「心地いいくらしが循環する、社会のしくみをつくる」というビジョンを掲げ、不動産事業者の業務をテクノロジーで進化させ、不動産業並びに不動産市場のDXを推進する事業展開を行っている。
■お話を伺った方
職種 エンジニア
名前 中村 彰宏(なかむら あきひろ)さん
経歴 2019年に九州大学大学院 システム情報工学科 修士課程 情報理工学専攻を卒業後、株式会社いい生活に新卒入社。入社後は、サーバーサイドの開発をメインに行う傍ら、新たにインフラ領域も担当。ほかにもサポートセンターの対応や後輩の教育など、さまざまな業務に携わっている。
\15年超の実績を持つレバテックが運営/

競技プログラミングに熱中した学生時代。就活でもその経験を有利に活かす
――学生時代はどのようなことに注力されていましたか?
中村 大学の部活で、競技プログラミングに力を注いでいました。大学入学前まではプログラミングに少し触れたことがある程度で、部活も入部してからどんな活動をするところかを知った程なのですが、「あ、これは自分がすごくやりたかったことだ!」と感じ、のめり込んでいきました。
活動内容としては、週に一度皆で集まって、ICPC(国際大学対抗プログラミングコンテスト)の問題をひたすら解いていましたね。入部した当初は問題も難しいし、先輩たちがどのように解いているのかもよく分からない状態で、「何でその解き方が思いつくの?」と思っていたのですが、夏休みに毎日こつこつ問題を解いて数をこなしていった結果、問題を解くためのアルゴリズムやデータ構造などを考える必要があることに気づき、次第に自力で問題を解けるようになっていきました。
――競技プログラミングに興味を持ったきっかけや、そこまでハマった理由は何だったのでしょうか?
中村 競技プログラミングに興味を持ったきっかけは、新歓の時期に配られた部のチラシを見たことです。そのチラシには、「a地点からb地点まで移動する場合、どのような手段を使えばコストと時間を最小にできるか?」という最短経路を導き出す問題が掲載されていたのですが、それを解くのがとても楽しそうだったんですよね。もともと問題を解くこと自体が好きだったこともあり、入部したいという気持ちが芽生えてきました。
また、競技プログラミングにハマった理由として、明確なお題が用意されていて「あとは作るだけ」の状態で取り組めるところが、当時の自分にはマッチしたのだと考えています。例えば一般的に、何か制作物を作るときは、「〇〇を作ろう」という意志のもとで作り始めると思いますが、当時の私はプログラミングをしたい意欲はあっても、作りたいものが明確にあったわけではなかったんですよね。ですが、競技プログラミングであれば作るものがあらかじめ指定されるので、私にはとてもやりやすかったんです。
要は、自分の中にある「とにかくプログラミングがしたい」という気持ちを、競技プログラミングによって上手く昇華できたのだと思います。その他にも、問題が解けたかどうかで、正しいものができているかどうかがハッキリと分かるのも良かったです。
――そうなのですね。競技プログラミングでは、国内予選にも出場されたと伺いました。
中村 はい。3人1チームで出場するのですが、それぞれ得意・不得意な分野があるので、それを互いに補いながらやっていました。また、1年目よりも2年目に参加したときの方が、解ける問題数が増えている実感があって、成長できたんだなと思えましたね。私自身は本選に出場できませんでしたが、修士2年のときに後輩チームが本選に出場した際は、コーチとして参加し、後輩をサポートしました。
競技プログラミングの部活は、基本的に学内での活動なのですが、予選を突破すると、東京のイベントに参加できますし、他大学の人と交流する機会もあるんですよ。自分と同じプログラミングレベルの人だけでなく、ランキング上位の有名な人と話すこともあります。
そのような機会を活かして、他大学の人とチームを組んで問題を解いてみたりと、学外の人とも交流ができたのは楽しかったですね。
――大学院時代は、どのような研究をやっていたのですか?
中村 研究室では、VRを用いて認知科学の研究をしていました。もともと心理学にも興味があり、学部1年生のときから心理学の授業を履修していました。認知科学研究室であれば、自分の好きな心理学にも関われると思い、その研究室を選びました。
そこで教授にVRを使った研究がしたいと話したら、「Oculus Rift(オキュラス・リフト)」というバーチャル・リアリティヘッドセットを購入してもらえることになり、研究室内で初のVRを使った研究をすることになりました。具体的には、VRを使って自分の手の大きさを2倍、3倍にしたり、逆に半分の大きさにすることで、感覚や距離感がどう変わるのかという研究をしていましたね。
VRの実験環境は、もちろん全てプログラミングで作らないといけないので、Unity(※)を使って作っていました。大学院に進学して競技プログラミングの活動はもうだいぶ落ち着いていましたが、研究室でもまた毎日のようにプログラミングを書いていましたね。
(※)Unity Technologiesによって開発された、クロスプラットフォームのゲームエンジン。2Dおよび3Dゲームの開発に広く利用されている。
――プログラミング一色の学生生活ですね。就活も最初からエンジニア1本で考えていたのでしょうか?
中村 そうですね。学生時代にやってきたプログラミングを、そのまま仕事にできるような企業に就職できたらいいなと考えていました。さらに、競技プログラミングの経験を就活に活かしたいという思いがあり、競技プログラミングのことを評価してもらえそうな企業という観点から、就活では競技プログラミング大会を協賛している企業を中心に調べていましたね。
そんな中でいい生活のことを知り、興味を持つようになりました。いい生活はICPC(国際大学対抗プログラミングコンテスト)の国内予選のスポンサーなのですが、競技プログラミング部の先輩がすでに内定をいただいていた企業でもあるので、そうした繋がりからエントリーしてみました。
――企業選びのベースが競技プログラミングの協賛企業とのことですが、ほかにも就活の軸にしていたことがあれば教えてください。
中村 仕事の裁量や自由度が高いことも、企業選びの軸にしていましたね。大企業だと新卒に与えられる裁量は限られていそうな気がしたので、中小企業をメインにエントリーしていました。その方が、若手のうちから戦力として先頭に立って活動できるのではないかと考えていたんです。
また、地元も大学も福岡なのですが、就職先は東京を希望していました。なぜかというと、エンジニアのイベントなどは東京で開催されることが多く、地方よりも東京に住んだ方が参加できる機会も増え、良い自己研鑽になると思ったからです。なので、人生のなるべく早い段階で東京へ出た方が、エンジニアとしての成長スピードも加速するだろうと見込んでいました。
――最終的にいい生活への入社を選んだ理由について、お聞かせください。
中村 いい生活の選考に進むまで、私自身は不動産会社についてあまりよく知らなかったのですが、そんな私でも「人の生活に根ざしている重要な役割を担っている」ということをいい生活の選考を通じてしっかりと理解できたことや、ITを使ったサービスを届けているという部分に魅力を感じました。さらに、そこにアプローチしている企業はまだ多くないと思うので、競争率も高くなく、しっかり根を張っているところが安心できるなとも思いましたね。
また、面接で役員の方たちと話をしたときに、とても気さくな雰囲気を感じたんです。社長の名前は知っているけど、直接会ったことはないという会社は多いと思いますが、そうした会社よりも役員との距離が近くて良い関係性だなと思いました。
あとは私の就活の軸に合致していたことに加え、先ほどお話ししたように部活の先輩も入社しているという安心感も決め手になりましたね。当時は特にやりたい領域が明確にはなかったのですが、会社の雰囲気から「この会社なら自分のやりたいことができそうだ」と感じ、「あとは入社してから頑張ろう」という気概で入社を決めました。
\15年超の実績を持つレバテックが運営/

「作ったモノの先」を見通す意識。インフラ開発などの挑戦を経て得た視点
――入社後の業務について教えてください。
中村 入社から現在まで、いい生活の主力製品である『いい生活賃貸管理クラウド』のサーバーサイドのチームに所属し、サーバーサイドの開発を担当しています。私が配属されたときは違うサービス名でしたが、組織再編によって、不動産会社の仲介業務向けと管理業務向けの大きく2つに分かれることになり、現在の名称に変わりました。私は管理業務向けのチームに配属され、そこで管理系の機能開発を担当しています。
配属当初は開発だけでしたが、2年目以降からはサポートセンターの手助けもするようになりましたね。サポートセンターで回答できなかった問い合わせへの対応や、新たにサービスを導入する企業のデータ移行を補助するなど、自分が参画する領域も徐々に広がってきています。
――開発業務以外にもいろいろ担当されているんですね。
中村 そうですね。実装以外にも、ユーザーの要望を整理するためのミーティングにも出席したりメンバーのタスク進捗の管理や調整も行うようになりましたね。
他にも4年目くらいから、新たに内部向けのデータ出力機能を開発することになり、サーバーの開発に加え、出力先のインフラの開発も担当することになりました。私が入社したときは、サーバーとインフラは別々のチームだったため、ほとんどインフラに触れることがなかったのですが、これを機にインフラにも携われることになりました。
――新たにインフラ領域に挑戦してみて、いかがでしたか?
中村 初めはインフラの知識がなかったので本当に大変でしたね。ですが、テスト環境を与えてもらえたので、そこで試行錯誤するうちに次第に抵抗感は薄れていき、インフラ領域も少しずつ手ごたえを感じられるようになっていきました。
やはり今もサーバーの方が得意分野ではありますが、インフラ業務を経験してからは、直接インフラに関係ないタスクでも、インフラへの影響まで想定しながら実装するようになりましたね。より俯瞰した目線で広い領域を考えられるようになり、経験する前と比べて、自分でも明らかに意識が変わったなと実感しています。
――その他にも、後輩の教育も担当されていると伺いました。
中村 はい、同じく4年目頃から、後輩の教育も任されるようになりました。その際、後輩に業務のことをできるだけ分かりやすく伝えたいと思い、業務の全体像はもちろんのこと、私が今までやってきたことや学んだことを惜しみなく盛り込んだ資料を作り、それをもとに教育しました。
それが功を奏したのか、その後輩は、私が入社したときよりも早いスピードで成長してくれましたね。例えば私が2年目にやっていた顧客のデータ調査であれば、後輩には1年目からやってもらったりと、より早い段階から多くの業務を任せられるようになりました。
――これまでの業務で、一番大変だったことは何でしょうか?
中村 先ほどお話した、インフラ領域を初めて担当したことが一番大変でした。チーム内にはインフラに詳しい人がいなかったので、他のインフラチームのやり方を見に行ったり、詳しい人に話を聞きに行ったりと、常に手探りの状態を続けてなんとか乗り越えることができました。
また、いい生活は「常に新しいものを作る」という社風があり、社内で誰もやったことがないものを自分で試行錯誤しながら進めることもよくあります。とても勉強になるしメリットは大きいのですが、同時に大変なところでもあるかもしれませんね。
――逆に、一番楽しかったことは何ですか?
中村 何年も前に自分で書いたコードを見返したときに、いろいろな改善点に気づき、自分の成長を感じられたことです。以前、1年目に書いたコードを3年目のときに改修したことがありました。その時に、「当時は読みづらい書き方をしていたけど、今ならもっと良く書ける」と思えたんですよね。1年目の自分が考慮できていなかった部分や至らなかった部分に自分で気がつくことができ、それがとても嬉しかったですね。
――いい生活に入社したからこそ、できた経験などありますか?
中村 サーバーの開発だけでなく、インフラの開発にも関われたことですね。おそらく大企業だと、自分が担当できる領域は、基本的に配属された部署の業務に限定されると思うんです。でも、いい生活は自分の所属に関係なく、さまざまな領域にチャレンジさせてもらえる環境です。新しいことを学ぶのは大変ではありますが、自分を成長させる機会に恵まれていて、入社して良かった点の1つだと考えています。
もう1つは、若手のうちから「顧客の要望をもとに、何を実装するか」を考える工程にも携われたことですね。私の場合、入社3年目くらいまでは上司に言われた内容を実装するのがメインでしたが、それ以降は顧客の要望を整理し何を作るかを決定するフェーズにも参加させてもらえるようになりました。そこでは、何を優先すべきかや本当に必要なのかといった取捨選択も行い、言われたものをただ作るだけではないことも学びました。
このように、早い段階で上流工程に関われることも、いい生活だからこそ経験できることだと思っています。そのおかげで、入社当初はただ要望を受けて実装するだけだったのが、今では「どんなものを作り、その結果どこにどのような影響が出るのか」というところまで考え、作ったものの先を見通せるようになりました。エンジニアとして、また一歩成長できたなと思っています。
\15年超の実績を持つレバテックが運営/
開発の外にも目を向けて。顧客の課題解決にもっと深く踏み込みたい
――今後の目標や取り組みたい課題などはありますか?
中村 もっと開発の外にも目を向けて、「顧客を意識したビジネス」という観点を持ちたいですね。例えば開発スケジュールを考える際に、現状では自分の開発周りのことを中心に見てしまい、直近3ヶ月くらいのスパンで開発をどう進めるかを考えてスケジュールを組むことが多いです。
ですが今後は、もっと顧客の状況やスケジュールも鑑みながら、より俯瞰した目線で調整していきたいですね。まさに現在、顧客と密にかかわりながらプロダクトを作るタスクがあるので、早速そこでも顧客や周囲と協調しながら取り組んでいきたいと考えています。
――より長期的な展望や、実現したいことはありますか?
中村 いま話した内容の延長でもあるのですが、現在は開発をメインにやっていて、作るものがある程度決まった状態で仕事を任されることが多いんですよね。ですが、ゆくゆくはよりフロントに立って、「新たにこういったものを作るのはどうですか?」といった提案も積極的にできるようなポジションに挑戦してみたいです。
例えば社内の様々な人とも折衝するだけでなく、顧客とももっと深く関われて、開発だけでなくビジネス全体を自分で回せるような存在になりたいですね。
――キャリアパスとしては、どのようなイメージを持たれていますか?
中村 そうですね、現状では私に任される段階ではもう作るものがある程度決まっていて、「もっとこうしたいな」と感じても変えるのはなかなか容易ではないので、今よりももう少し上流工程から関わって、その解決方法を顧客と一緒に考えていけるようなキャリアを築いていきたいですね。
ちなみに「課題への解決策を考える」ことに重きを置くことは、私が学生時代にやってきた競技プログラミングにも通じるところがあるんですよ。学生時代から私はその感覚や思考プロセスが好きなので、今後は仕事でも課題解決の部分にもっと踏み込んで、その方法をより深く考えていけたら面白そうだなと思っています。
それから実は最近、開発チームの中でも顧客と面談をしたり折衝をするメンバーを増やしていこうという動きがあるんです。なのでぜひ私もそのようなメンバーに入って、目指す在り方を実現していきたいと思っています。
――どんな人が、いい生活のエンジニアに向いていると思いますか?
中村 開発業務だけでなく、その先にいる顧客のことまで考えられるような人だと思います。なぜかというと、例えば顧客から「こんなものを作ってほしい」という要望をいただいたとしても、その要望の裏側にある背景や意図も考えながら作らないと、「作ったけど課題は解決できなかった」という事態に陥ってしまう等、本当の意味では課題解決できないと思うんですよね。
なので、「なぜこれを作らないといけないのか」や「これを作ることでお客さまにどんなメリットがあるのか」といったことまで考えられるような人になってほしいですね。もちろん学生のうちからこのような視点を持てなくても良いと思いますが、入社後の業務の中でそうした視点を育んでいってほしいと思います。
――これからエンジニアを目指す学生に向けて、伝えたいことはありますか?
中村 学生の時にプログラミングで作ったものだと、完成後は結局自分しか使わない場合が多いと思うのですが、実際にエンジニアになってサービスをつくると、誰かがそれを使っていくことになります。
さらには、フィードバックを受けて改修したり、継続的にメンテナンスをする必要もあります。なので、一度作ったら終わりではなく、「その先にユーザーがいるんだよ」ということを意識した上で、使ってくれる人を配慮するようなプログラミングができるようになってほしいと思います。
――最後に、株式会社いい生活のエンジニアを目指す就活生に向けてメッセージをお願いします。
中村 いい生活は、やりたいことを声に出してみると、周囲から「じゃあやってみない?」といった反応が返ってくることが多く、自分のやりたいことを比較的実現しやすい環境です。なので、挑戦したいことがある人や、何かを新しく始めてみたい人は、ぜひいい生活に入ってそれを実現してほしいなと思います。
もちろん、何かにチャレンジするには責任が伴いますが、個人でやるよりも会社に入ってやった方がより幅広いことが実現できると思うので、積極的にチャレンジしたい人には、とてもおすすめの環境ですよ。