はじめまして、スペースエージェントのプロダクト開発グループの @kaiba と申します。
どこかで会った方はこんにちは!
エンジニアリングマネージャという役職で、幅広く活動しておりますが、まだまだ手を動かしているエンジニアです。
2018⁄04 から Join しました。
日本酒が好き過ぎて、オフィス移転時に Bar スペースエージェントを作って夜は仲間と軽く一杯のみたい! と強くリクエストした結果、 20 時以降、Bar SpaceAgentの開店をできました!
簡単にスペースエージェントの紹介をさせていただきます。
不動産テック系の会社で
の運営をしております。
民泊物件というと Airbnb を思い出す方が多いと思います。
民泊物件.com では、賃貸物件を借りて Airbnb などに宿として掲載することで収益を上げたい、という投資家に向けてサービスを提供しています。
収益物件は不動産投資で成功するためのサービスです。
2018⁄11 現在、社員は 30 人前後です。
エンジニアに関しては以下の構成です。
- iOS 1 人
- フロントエンド 2 人
- バックエンド 2 人
- フリーランス 3 人
続々と社員は増えているものの、まだまだ小さなスタートアップです。 いずれこのブログで各々登場すると思いますのでお楽しみに!
このブログは何?
スペースエージェントのテックブログです。
これまで弊社は、技術的な情報に関しては外から見えるものが皆無でした。
見える化が主目的ではありますが、主な目的をざっくり書くと以下のとおりです。
- 単純にスペースエージェントのことを知ってほしい
- 入社を検討する際の材料にして欲しい
- 検索でたどり着いた誰かの助けになりたい
どんな技術を使ってる?
使用している技術の紹介をします。
フロントエンド
- React, Redux
- Nuxt.js
民泊物件.com、収益物件.com に情報を掲載できる不動産会社向けのサービス SPACE CLOUDは React, Redux で実装しています。
収益物件.com の方は Nuxt.js を使ってPWAとして開発しています。
iOSアプリケーション
- 常にSwift最新版を使用して開発しています。
収益物件.com(iOS)と民泊物件.com(iOS)のアプリがあります。
バックエンド
- CakePHP3
- PHP7
CakePHP は下火な印象がありますが、極力フロントでの実装に寄せているため、JSON を返すだけになってきています。
するとあまり問題は感じません。
フロントエンドはいい感じであるものの、バックエンドはあまり良くない設計の箇所があります。
- 民泊物件.com も収益物件.com も同じ DB を見るべき設計思想になっているのにそうなっていない
- モデル層をコピーして使っている(CakePHP も Rails と同じく DB にべったりであるためそうせざるを得ない)
- コピー先でも手が入れられ差分がでている
スタートアップあるあるではありますが、限られたリソースでスタートし、できる限りやった結果なのでしょう。
大いに苦しんでおりますが、改善に向けて動いています。
いわゆる「分断されたモノリス」というやつで、まずは E2E のテストを書いて、モノリシックな構成にしようとしています。
道のりは遠いですが、また次のエントリでその道のりを紹介できればと思います。
インフラ
AWS を使用しております。
収益物件.com には不動産会社とのチャット機能があり、その機能は Firestore で実現しています。
- AWS
- Route53
- CloudFront
- EC2
- ElastiCache
- Elasticsearch
- RDS
- Firebase
- Firestore
- Cloud Functions
- Authentication
終わりに
テックブログやっていきます!宣言とスペースエージェントの紹介をさせていただきました。
俺たちのテックブログは始まったばかりだ! 次の投稿にご期待下さい!