LIFULL Creators Blog

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

CTOによるLIFULLの2020年の技術面ふりかえり

CTO の 長沢 です。

早いもので2020年も終わりそうですね。新型コロナによってLIFULLは大きく働き方も変わり色々と変化のある一年でした。
せっかくの機会なので、2020年のLIFULLの技術関連についての出来事をまとめていきたいと思います。

LIFULL の基幹事業である LIFULL HOME'S、LIFULL全体の事業系のインフラ部門、情報システム部門、などについて書いていきます。
全社のQA部門についてはその部門のマネージャーが書いている記事をご覧ください。

www.lifull.blog

AIに関しての取り組みも個別記事でご覧ください。

www.lifull.blog

こちらの記事で記載してある内容に関しては私が「ざっくり考えて方向性だけ出したり組織を組成してやってきた話」であり、実際に各種を進めているのは優秀なエンジニアマネージャーやエンジニアのみんなです(引き抜かないでください)。

目次

事業部内での技術組織の組成

LIFULL HOME'Sはここ5年間ほど、賃貸、中古流通、注文住宅、分譲マンション、分譲戸建、等、各マーケットに組織を切り分けた事業部制を採用していました。
事業部制は「ユーザーの声を聞いて作って売るというサイクルをスピード感を持って回す」という目的でした。当時LIFULL HOME'Sにはプロパーで100名ほどのエンジニアがおり、それぞれのマーケットに振り分けられていました。

うまく機能していた部分も多分にありましたが、システムという観点で見ると大部分が上記のマーケットを横断したシステムとなっていました。 (LIFULL HOME'Sは意味のある単位で範囲でサービスを分割していくことを進めていますが、長くからある部分はまだモノリシックな部分が多いです)
そのため、複雑に絡み合った共通機能が多く、非機能要件を中心としたシステム改善も一つの部門では手を付けにくい状態でした。

また、各チームでのサイロ化が進んでいたため、人員の硬直化や横断で開発すれば効率がいいものがやりにくくなってしまうという状態もありました。 *1

それらの問題に着手しつつ、今後のLIFULL全体の変化に対応していくため、2019年10月にLIFULL HOME'S内にエンジニアを集めた技術組織を組成しました。
その時にやっていくこととして掲げていたものは以下です。 f:id:LIFULL-nagasawa:20201207053902p:plain

また、インフラ部分で起こっている変化に対してLIFULL HOME'Sのエンジニアとしても対応していける力・体制を整えていくことも目的の1つでした。
大きな変更において、そのメリットを最大限に享受するためには、システムに乗る側もしっかりと利用できる必要があります。 (システムだけの話ではないですよね)

www.lifull.blog

実際にLIFULL HOME'Sのエンジニアのみんなには、

  • 一定の割合の時間をリファクタリングに割くこと
  • 各マーケットを横断して利用できる機能は共通して作っていくこと(効率化できる部分を発見して提案、実装していく)

といったことなど目標にももってもらい進めてきました。

またエンジニアリングマネージャーには、

  • PLという観点で、技術的にかかっている各種コストの最適化(横断で利用できるものはする等)

というものも担ってもらっていました。(コストを抑えるべきところは抑えて、かけるべきところにはしっかり投資していきたいですよね)

そうして1年ほどやってみて、リファクタリングがしっかりと文化として根付いてきた(これはエンジニアのメンバーにも言ってもらえたのでとても嬉しかったです)というのを感じています。リファクタリングやってるメンバーが全社で表彰されたりとエンジニアだけではなくビジネスサイドを含めた組織全体として理解されているのは嬉しいことです。

実際に成果としても色々できました。

www.lifull.blog www.lifull.blog www.lifull.blog www.lifull.blog

もう一つの大きな狙いであった、部門横断での全体最適(LIFULL HOME'S全体の共通機能やコスト等)に関しても、一定の成果を出すことができました。(システム関連コストでは全体利益への貢献も少なくない金額でありましたが詳細は割愛させていただきます)

また、事業部制のときもエンジニア同士の距離は近かったのですが、実際に部門が同じになったことで、今まで以上にメンバー発案の勉強会が増えました。
能動的にみんなで技術研鑽をしていこうというチームで感動しています。

この組織と取り組みは関しては2020年10月からの新しい期でも継続しているのでアップグレードしながら引き続きやっていきたいと思います。

事業系インフラ部門での取り組み

こちらは、LIFULL HOME'S事業本部の話ではなく、テクノロジー本部という全社を横断した技術部門の話です。

アプリケーション実行基盤の刷新

2年ほど前から、「車輪の再発明を抑制しつつ、LIFULLのアプリケーション実行基盤を革めアプリケーション開発者の価値提供の速度を加速させる」ということを目的に、動いていましたが、それが全体に適応されてから1年少しが立ちました。前述したLIFULL HOME'S内の新サービスに関してもこの環境で乗るようになりカバー範囲は7割を超えており、今後もより強めていく部分です。
詳しくは以下のアプリケーション実行基盤チームの記事をご覧ください。

www.lifull.blog

検索エンジン強化

LIFULLにはLIFULL HOME'Sをはじめ「検索サービス」が多くあります。その中で検索機能においてどんな事ができるか?は会社としての強みになってきます。そこを強化すべく、検索エンジンを中心にやっていくチームを組成して強化に取り組んでいます。
現在の検索エンジンはSolrですがチームを組成してから今まであまりできていなかったバージョンアップがしっかりとされるようになっていたり、また事業部ともやり取りして機能を追加していったりと着実に進めることができています。
そのうちチームの取り組みもブログなどで紹介されると思います。

データ基盤の強化

現在、社内では多くの部門でデータが活用されています。

www.lifull.blog

今までも構築はされていたのですが、それを全社の基盤として構築・運用していくべく、ここ一年間は技術横断の組織でチームを固定化して取り組んできました。
多くのデータの連携が進んでいます。
こちらも、そのうちチームの取り組みもブログなどで紹介されると思います。

社内全体のAWS利用のコスト最適化

各サービスを分割して運営しており、様々な部門でAWSを利用しています(アカウントも切り分けている)。
そうすると各チームごとに知識の差が生まれ知らない間に余剰なインフラコストがかかるということが発生していたため、効果の高い投資を今後も行なっていくために、膨れ上がったコストを適正化する(≒不要コスト削減)必要がありました。
そこで、今年はクラウドアーキテクトの鈴木に横断して取り組んでいってもらっていました。

www.lifull.blog

実際にかなりのコスト削減を実現でき、その分新たなシステム投資を行うことができました。

データベースマイグレーションのためのチーム組成

LIFULLでは創業以来ずっと利用されてきたデータベースがありますが、そちらのマイグレーションに取り掛かっています。
こちらは2年ほど見込まれる非常に息の長いプロジェクトですが、まずは構成を大きく変えず載せ替えるという方法で進めていっています。

過去に何度か頓挫していることもあり、専任のチームを組成し取り掛かっていくことにしました。今年の4月頃から開始でまだ半年ですが確実に進んでいます。

エンジニアとしての情報発信

技術部門から様々な発信がされたのも嬉しかったことです。
今年になってから発信に力を入れようということで、様々な発信が行われました。

技術の発信には

  • その時の課題とその解決方法や、利用している技術などを発信することで、世の中の技術部分に少しでも貢献する(世の中の技術に対してタダ乗りにならない)
  • 発信して外部からのフィードバックを得られるかもしれない
  • エンジニア個人としても名前を出して発信することにより知ってもらえる
  • LIFULL に興味を持ってっくれる仲間が増えるかもしれない

というような意図をもってやっています。

特に1番目は大事だと思っていて『利他主義』を掲げている会社 ですので技術の情報でも得た情報は閉じてないほうがいいですよね!

情報システム

ここは今年、世の中の状況も相まって大きく変化がありました。

外出や出張がある職種がおりましたので、もともと社内NWへVPNで接続できる環境はあったのですが、社内NW側の機器の関係で同時接続できる人数に上限がありました
新型コロナが流行り始めた2020年1月頃のタイミングで何かあってもいいようにサーバーの調達をベンダーと開始していました。(その時はこんなに流行るとは思っていませんでしたが)

3月にもなると、いよいよ雲行きも怪しくなってきた&VPNのサーバーの増強は4月頃になりそうということだったので、もともと導入していた統合認証基盤を活用し一部のシステムで安全に利用できそうなものに関してはVPNなしでも接続できるようにしていきました(ゼロトラストっぽく)。

また、統合認証基盤に対応していないシステムに関しては、新たに契約したクラウド型のVPNも利用しながらIP制限をしつつ利用していきました。
家のインターネットがないという社員へは会社貸与のスマートフォンの通信容量を増やしテザリングにて業務にあたってもらうようにしました。

そんなこんなで非常に慌ただしかったですが、緊急事態宣言のときまでには物理的なものを扱わない業務の社員に関してはほとんどリモートでの業務ができるようになっていました。

諸々環境が整ったことに加えて、社員みんなのお互いが助け合う姿勢により、目立った生産性の低下も起きておらず、会社としても新しい働き方として原則週2日の在宅勤務と定め、状況や業務を考慮し個々の判断で在宅勤務は週4日まで可能で、最低週1日出社というスタイルを続けていこうと決めて進めています。
またコスト構造を見直して改善を図るきっかけにもなったのもあり、正社員の月例給与を約10%増額する等、従業員のベースアップを実施しました。

lifull.com

2020年の10月からは情報システム部でもエンジニアリング要素を一段と強め会社をリードしていくために、新しい戦略も描き組織の構造も大きく刷新しました。
ゼロトラストネットワークの構築を始めいろいろなことをやっていきますので私自身非常に楽しみです。
これも、ブログなどで紹介されると思います。

最後に

振り替えると本当に色々あった約一年間だなぁと改めて思います。
私個人的には「今まで進めていた取り組みが、少しづつ繋がってきた」ということを強く感じる一年でした。

LIFULLでは新しい中期経営計画も始まり、社会課題の解決に向けて取組むことをしていきます!
仲間になってくれる人を大募集中ですので「あらゆるLIFEを、FULLに。」することに興味がある方は是非お話しましょう!

hrmos.co

今年もありがとうございました。

*1:組織の形に関してはその時の組織が抱える課題によって事業部制、機能別、その他など様々な選択肢がありますし、それぞれにメリット・デメリットがあると思いますので一概に「何が良くて何がだめ」という話をしたいわけではございません。