views2313リーウェイズの事業リーウェイズは、5800万件を超す不動産ビッグデータを基に、不動産投資の客観的なデータに基づく投資・融資の判断を支援するシステム「Gate.」を開発しています。「顧客本位の業務運営」と投資家の「客観的なデータに基づく投資判断」を支援しています。シミュレーションできるサブシステムから成ります。Planner」という名前のプロダクトとして、主に不動産事業者や金融機関などの法人向けに、1アカウントあたり月額2万円のSaaS型で提供しています。リーウェイズの事業は、このSaaS事業と、「Gate.」を法人向けにカスタマイズして提供するOEM事業の、2つの事業が主軸です。その他にも、不動産投資のコンサルティング、売買仲介も手掛けています。開発の課題と解決策OEM事業においては、これまでに、コスモスイニシアと、オリックス銀行にOEM提供してきました。コスモスイニシアのシステムは今年の2月末に、オリックス銀行のシステムは8月末にリリースしました。問い合わせが多く寄せられ、いまも複数のOEM案件が動いています。今年は、スマートデイズの「かぼちゃの馬車」、TATERU、スルガ銀行など、不動産投資に関する不正融資が大きな問題になりました。不動産投資のステークホルダに対して「客観的なデータに基づく投資・融資の判断」が求められています。金融機関では、これまで以上に厳格な審査を求められており、審査の現場では業務効率化のニーズが高まっています。そのような市場環境から、今後も金融機関を中心に当社に対する引き合いも増えることが予想されます。リーウェイズでは、それらの多数のニーズに応えるために、開発リソースの増強と、開発効率の向上が喫緊の課題です。その課題解決のために、以下の3つの施策を進めています。「Gate.」のフロントエンドのリニューアルこのうち(1)と(2)は開発リソースの増強を目的とした施策です。(3)は、開発効率の向上を目的としています。開発効率を上げるためのリニューアルフロントエンドのリニューアルが開発効率を上げることにつながるのか疑問に思う人もいるかもしれませんので、理由を簡単に説明します。現在の「Gate.」のフロントエンドは、コンポーネント化が不十分で、1つの機能のコードを変更すると同じページの別の機能に影響する作りになっています。巨大な一つのファイルで複数ページ間の遷移を切り替えるSPAになっているところもあり、変更の影響が広範囲に及びます。そのため、影響範囲の調査とテストに多くの工数がかかります。変更の影響範囲を限定できるようにリニューアルすることで、その工数を削減できます。変更の影響範囲の限定のために、新フロントエンドはコンポーネント指向で設計しました。コンポーネント指向に関する一般的な解説は省略します。気になる人は検索してみてください。新フロントエンドのコンポーネント設計について簡単に紹介します。以下のルールを満たすような設計です。コンポーネントの種類は、ウィジェットコンポーネントとレイアウトコンポーネントの2種類ウィジェットコンポーネントは、単一の機能について「構成要素のレイアウト」「見た目」「インタラクション」をまとめたものページとレイアウトコンポーネントが1対1に対応するウィジェットコンポーネントは、レイアウトコンポーネントの中に配置されるウィジェットコンポーネントは、内部に別のウィジェットコンポーネントを含むことができるウィジェットコンポーネントは基本的にデータ・状態を持たず、レイアウトコンポーネントで管理する▼新フロントエンドのコンポーネント(包含関係イメージ)ルールは他にもいろいろとありますが、長くなるので割愛します。このようなコンポーネントの開発効率化のために、コンポーネント指向のフレームワークを採用することに決め、三大フレームワークAngular、React、Vue.jsについて比較しました。現在の「Gate.」は、AngularJS1.4をベースに作られています。最新のAngularはバージョン7です。同じAngularという名前でも、バージョン1系とバージョン2以降とでは全く違います。そのため、同じAngularだからと安易に考えずに、他のフレームワークとゼロベースで比較しました。公式のドキュメントを読み比べ、各フレームワークに詳しい人からヒアリングしたり、サンプルコードを読んだり動かしたりしてみました。既存の「Gate.」の機能をリニューアルするという目的においては、どれを選択してもできることに変わりなく、技術的な観点からは差がありませんでした。技術的な比較の詳細は割愛しますが、気になる人は検索してみてください。結論を述べると、今回は以下の2点が決め手となり、Angularを採用することに決めました。エコシステムの安定性まず(1)に関して、GitHubのコミット数の推移を比較しました(画像は、各GitHub上のページを本記事用に最近キャプチャしたものを掲載しています)。Vue.jsは、一時期の盛り上がりに比べ、最近は開発が落ち着いてきています。AngularとReactは、公開当初から最近まで活発に開発されています。このデータから、Vue.jsは中長期的にはメンテナンスされなくなるリスクがあると判断し、検討対象から外れました。次に(2)に関して、Angularは半年に1度のメジャーバージョンのリリースケジュールと、18ヶ月のサポート期間が決まっています。これはReactにはない特徴です。Angularは開発で必要になる主要な機能は標準で用意されているのに対し、Reactは複数のサードパーティのライブラリを組み合わせて使うのが一般的です。サードパーティ製のライブラリを複数組み合わせて使用していると、そのうちメンテナンスされないライブラリが出てきたり、ライブラリを更新する際に他のライブラリの対応バージョンを揃えて検証する必要があったりと、中長期の運用を考えた場合にメンテナンスコストが上がることが懸念されます。当社の開発体制(エンジニアのスキルセットなど)からも、ReactよりもAngularの方が相対的にメンテナンスコストを抑えられると考え、Angularを採用することにしました。今後の事業展開の成否を決めるフロントエンド開発ユーザーの満足度、ユーザーのニーズに柔軟に応えられるカスタマイズ性、開発効率......次世代のプロダクトは、全てにおいて高いレベルを目指しています。フロントエンドは、直接ユーザーの目に触れることから、ユーザーの満足度に大きく影響します。カスタマイズの要望が多い要素であり、開発効率の向上も課題です。フロントエンドの開発が、今後の事業展開の成否を決めると言っても過言ではありません。リーウェイズでは、この重要なプロジェクトに一緒にチャレンジしてくれる仲間を募集しています。よかったら以下の記事も見ていってください。人工知能によって高精度な将来収益予測を実現させ、不動産業界の変革へ貢献します。ワンクリックの不動産市場調査ツール。世帯数などの統計情報などを表示、レポートの作成を行います。