LIFULL Creators Blog

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

UIアイコンの管理と実装をラクチンにする社内ツールとCDN

フロントエンドエンジニアの嶌田です。

アイコンは、UIデザインにおいて欠かせないパーツです。弊社が提供する不動産情報サイトであるLIFULL HOME'Sでも、多数のアイコンが使われています。

ウェブページにアイコンを埋め込む手段は無数にあります。あなたはいくつ言えますか? それぞれのメリットとデメリットについて説明できるでしょうか?

この記事では、LIFULL HOME'Sのフロントエンドで選ばれているアイコン表示方法およびその理由を説明します。その後、アイコンの管理や実装にまつわる不便な点をサービス横断的に解消するために作られた社内ツールと配信システムである、LIFULL Icon CDNを紹介したいと思います。

続きを読む

Apple Vision Proの日本発売日に合わせてアプリをリリースした話

こんにちは。プロダクトエンジニアリング部でAndroidのネイティブアプリエンジニアをしている久野です。 今回はイマーシブモデルルームというApple Vision Pro向けのアプリを日本発売日に合わせてリリースした話をします。

なぜAndroidのネイティブアプリエンジニアの私がApple Vision Proの開発を担当したかというと、元々学生の頃からインターンや趣味でVRコンテンツ作成に携わっていた中、Apple Vision Proの発売を聞き「これを使ったアプリの開発をしてみたい!」と強く思い、上長や会社に挑戦してみたいと相談したところ、快く承諾して頂けたのがきっかけです。

続きを読む

小さい経路最適化ミドルウェアを実装してあらゆるAZ間通信を削減する

KEELチームの相原です。

前回のエントリは「LLMを利用したPlatform Engineering」でした。

www.lifull.blog

今回は、小さい経路最適化ミドルウェアを実装してAZ間通信を削減した話を書きたいと思います。

背景

我々KEELチームはKubernetsベースの内製PaaSであるKEELを開発しており、LIFULLのほとんどのサービスがこのKEEL上で動いています。

www.lifull.blog

そして、KEELは巨大なマルチテナントのKubernetesクラスタとしてAWSの複数のAvailability Zone(以下AZ)に展開されていて、多くのmicroservicesが互いに通信しあっています。

そのためAZ間通信はプラットフォームとして重要な関心事の一つです。 レイテンシやAWSのAZ間通信に対する課金を最小限に抑えるため、なるべくAZ間通信を減らしたいという要求があります。

我々のプラットフォームでは現在LLMのサポートを強めており、それに伴い扱うペイロードのサイズも増加傾向にあることからも対応の優先度が上がってきています。

www.lifull.blog

実際にKubernetesのTopology Aware Routingをプラットフォーム側で配布してデフォルトで有効にしたり、IstioのLocality Load Balancing をクラスタ全体で有効にして、クラスタ内の通信の経路最適化に努めてきました。

※Istioが有効になっているPodではTopology Aware Routingは機能しないため、全てのPodにIstioを導入できていない場合はクラスタ全体として両方を有効にする必要があります

一方で、KEELはステートレスなクラスタとして永続性が必要とされるデータストアは基本的にクラスタ外に依存しており、未だ最適化できていない経路も存在しています。

そこでその残されたAZ間通信も削減すべく、小さい経路最適化ミドルウェアを実装する判断に至りました。

  • 背景
  • 実装
    • シンプルなConnection Pool
    • 余談: Connection Storm
    • Topology Aware Routing
  • 注意点
  • 最後に
続きを読む

LLMを利用したPlatform Engineering

KEELチーム の相原です。

これまでKEELチームではKubernetesベースの内製PaaSであるKEELを開発・運用しながら、合間で社内で汎用AI(仮)と呼ぶAutoGPT実装 keelai を開発してきました。

www.lifull.blog

我々はあくまでプラットフォーマーであり、目指すところはLLMを利用したPlatform Engineeringです。

いくつかの取り組みが実を結んできたのでここで紹介したいと思います。

  • APIの提供
  • GitHub ActionsからのLLM利用
  • Slack AutomationsによるLLMノーコードツールの提供
  • Chrome Extensionで実現するシームレスなLLM体験
  • コマンドラインツールでのLLM活用
  • Jupyter Notebookでの高度なLLM活用
  • まとめ
続きを読む

社内A/Bテスト標準化に向けたA/Bテスト管理基盤プロトタイプの開発

エンジニアの小林と申します。

LIFULL HOME'S の横断領域の開発を担当しています。

私たちの開発しているLIFULL HOME'Sでは、A/Bテストの実施によって市場学習(≒PDCA)の回数を増やし、より良いプロダクトを作り上げることを目的として、日々多くのA/Bテストが実施されています。

しかしながら、いくつかの問題があります。

今回はLIFULL HOME'SにおけるA/Bテストの成熟度と課題、そして現在の取り組みをご紹介します。

続きを読む

学会イベント「人工知能学会全国大会(JSAI 2024)」参加報告

こんにちは、グループデータ本部データサイエンスグループの清田です。

5月28日から31日にかけて静岡県浜松市にて開催された人工知能学会全国大会(JSAI 2024)に参加してきました。

LIFULLでは、今年もシルバースポンサーとして協賛しております。

今年は、学会理事および副実行委員長として運営にも関わっていましたので、舞台裏の部分も少しお伝えします!

なお、昨年熊本で開催されたJSAI 2023の様子も書かせていただいています。

www.lifull.blog

続きを読む