非公開
株式会社Luupは、“街じゅうを「駅前化」するインフラをつくる”をミッションに掲げ、電動キックボードや電動アシストなど電動マイクロモビリティのシェアリングサービス「LUUP(ループ)」を日本各地で展開しています。
街には「ポート」という移動のハブがあり、いつでもポートからポートへ電動マイクロモビリティに乗って移動することができます。 かつて鉄道の駅が街を発展させたように、LUUPのポートを街じゅうに設置することで人が集まる場所をつくり、街じゅうを駅前のように活性化していきます。LUUPを通して、移動におけるさまざまな問題を解決し、新たな街の未来を創造します。
現在は、東京・横浜・大阪・京都・神戸・宇都宮・名古屋・広島でサービスを展開しており、2024年4月時点で7,000ポート以上を運営しています。
将来的には、電動マイクロモビリティの普及によるCO2削減と、ご高齢の方も乗ることができる新しい電動モビリティの導入を実現し、すべての人が安全・便利に移動できる持続可能な社会をつくることを目指します。(会社HP:https://luup.sc/ )
【組織とポジションについて】
Software Development部は、『LUUP』サービス本体や社内向け管理ツール、IoTデバイス関連及びその他周辺ソフトウェアプロダクトの設計・開発を行っている部署です。
バックエンドエンジニアには、CloudFunctionsで構成されたLUUPのバックエンドをTypeScript、DBはFirestoreを利用した実装を担当していただきます。
このバックエンドアプリのクライアントは、LUUP本体のiOS・Androidのモバイルアプリ 、社内向けのWeb管理画面とモバイルアプリがあります。LUUP本体のモバイルアプリは、事業変化に機動的に対応することとリリースサイクルの安定による品質担保の両立をするため、振る舞いの定義をバックエンドで制御するようにしています。各種アプリのUI用のAPI提供やユーザーのアクションをメンテンスチームやカスタマサポートに円滑に伝えるような処理、効率的なオペレーションのための事前処理などがバックエンドの重要な役割です。また、Slack,Zendesk,SendGrid,FirebaseMessegingを始めとした外部ツール、LUUPの車両の鍵の施錠解錠や位置情報などのセンサー情報の通信のための内部のIoTサーバーなどさまざまな外部サーバーとの通信が発生します。
このような構成の中で社内外はじめ多用な関係者の持つ課題や依頼をプロダクトマネジメント部と連携しながら検討もしつつ実装していただきます。また、サーバーサイドのリファクタリングや構成変更・技術検討・整備はもちろん、クライアントアプリのエンジニアと協業しながらシステム全体の技術的な負債やボトルネックの解消を推進していただきます。
【開発環境】
・メンバー
正社員4名+業務委託10名程度
・技術スタック
Node.js, TypeScript, Nuxt.js, Firebase(Cloud Functions, Firestore), etc.
【サーバーサイドチームの特徴】
当社のサーバーサイドチームは、CloudFunctionsやFirestoreなどマネージドサービスを多く活用していたり、SREチームによって一定メトリクスの整備が進められている点から、アプリケーションコードを書くことに比較的集中できる環境です。
それを後ろ盾にエンドユーザー向け・社内向けにそれぞれ複数のクライアントアプリのビジネスロジックをサーバーサイドに集中させることを進めています。そのため複雑な仕様をサーバーサイドで簡潔かつ堅牢に実装することは難しさとともに影響力の強さから面白さを感じることができます。
また、プロダクトマネジメント部などが要件を固めることもありますが、技術的な観点から仕様や要件への議論や調整は盛んに行われています。無理に実装して技術的負債を生むことよりも、長期的観点でのプロダクト成長を考えられる環境です。そのため機能の削除を前提とした既存仕様そのものの仕様見直しも定期的に行っています。
車両などのIoTデバイス連携を伴うリアルサービスにおいて、バックエンド開発によって事業に大きなインパクトを与えられ、自ら実装した施策などでユーザー分析のみならずサービス運営のためのOperationもData Drivenに最適化していく環境は非常にエキサイティングなものがあります。
.