サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Google I/O
www.lifull.blog
KEELチーム の相原です。 前回のエントリは「小さい経路最適化ミドルウェアを実装してあらゆるAZ間通信を削減する」でした。 www.lifull.blog 今回は、MCPサーバを比較的安全に動かすために色々やってた話を書きたいと思います。 MCPについて MCPサーバのリスク なるべくローカルで動かさない ローカルではせめてDockerで動かす 無理やりHTTP Transportに対応する セッションの開始 コマンドの起動 ペイロードを受け取るためのエンドポイントの実装 まとめ MCPについて MCPはModel Context Protocolの略で、Anthropicが標準化を主導するLLMとその外部を繋ぐプロトコルです。 github.com これによりGitHubやPlaywrightといった外部のツールをLLMが自律的に利用できるようになり、OpenAIもサポートを表明したこ
グループデータ本部データサイエンスグループの嶋村です。 今回は、弊社が運営する不動産・住宅情報サービス「LIFULL HOME'S」において、数理最適化技術を適用して事業指標の向上に挑んだプロジェクトについて紹介します。どのようにプロジェクトを推進したのかや、推進する過程で得た知見についても、お伝えしたいと思います。 プロジェクトの概要 フェーズ1「企画段階」での取り組み フェーズ2「データ準備段階」での取り組み フェーズ3「モデル開発段階」での取り組み フェーズ4「効果検証段階」での取り組み おわりに プロジェクトの概要 LIFULL HOME'Sでは、不動産会社から物件広告をお預かりし、物件を探すエンドユーザへ届けるサービスを展開しております。不動産会社は自社の物件広告を多くのユーザに閲覧してもらいたいと希望する一方、エンドユーザは自分にぴったりでより魅力的な物件を見つけたいという双方
エンジニアの志賀と申します。 LIFULL HOME'S の新築分譲マンション領域の開発を担当しています。 私の所属している開発チームでは、LIFULLのベトナム海外拠点であるLIFULL Tech Vietnam(以下LFTV)と協力しながら開発を行っています。 過去LFTVのエンジニアメンバーと仕事を進める中で、ブリッジエンジニアを通していました。 そのため開発者どうしはお互いをほとんど知らず、コミュニケーションもレビューのやりとり程度で、コミュニケーション量が不足していると感じていました。 相手のことを知る、理解しようとすることは円滑に業務を進めるための第一歩だと考えていたので、この課題を解消するために行った取り組みを2点紹介します。 英語での自己紹介会の実施 まず実施した取り組みは、開発メンバーどうしの英語による自己紹介会です。 あらかじめフォーマットを用意し、英語で事前に記入した
プロダクトエンジニアリング部の二宮です。 「Qiita Night~企業における生成AI活用~」というオンラインイベントで、LIFULLの軽量化GAIチームとして、リーダーの廣瀬さんと登壇させていただきました。 YouTubeも公開されているので、ぜひご覧ください! www.youtube.com 私は「LIFULLの内製生成AI基盤keelaiと普及戦略」というLT発表を担当しました。 www.docswell.com 個人的には、パネルディスカッションの中のみずほフィナンシャルグループのWiz Chatお悩み相談所の取り組みが気になりました。本部ビル内の食堂やカフェの中にプロンプトの悩みを相談をしているということで、自分たちも似た取り組みをした際に盛り上げ方を難しく感じていたので、細かいノウハウもお聞きしたかったなと思ってます。 その後の発展 実は発表の後にもいろいろと進展しています。
こんにちは、プロダクトエンジニアリング部の鈴木です。普段はLIFULL HOME'Sの不動産会社向けプロダクト開発エンジニアのマネジメントを担当しています。 先日、社内ゼミ(勉強会)にて、障害対応時の心構えと障害対応訓練について共有しました。 このゼミは、プロダクトの開発・運用に関わるメンバーが抱える「もしシステム障害が起きたら、どのように対処すればよいのだろう?」という不安を解消し、適切な対応方法を学ぶ機会として開催したものです。 長年稼働しているシステムで有識者が少ない中、いくつかの障害を乗り越えてきた私たちチームの経験に基づいた障害対応について紹介します。 前編では障害対応についての基礎知識や心得について触れました。 www.lifull.blog 後編では、それらのスキルを実際にどのように身につけていくかに焦点を当て、チームで実施した障害対応訓練について話した内容をお届けします。
プロダクトエンジニアリング部の千葉です。 LIFULL HOME'S不動産査定とホームズマンション売却の開発に携わっています。 この記事では、売却査定サービスにおけるE2Eテスト高速化の取り組みについて紹介していきます。 売却査定サービスにおけるE2Eテストについて 環境 テスト観点 高速化の取り組み 背景 取り組み1 - 項目の精査と方法の最適化 取り組み2 - 処理の共通化 取り組み3 - ジョブの最適化 取り組み4 - 実行の並列化 取り組み5 - タイムアウト設定 結果 全体 Botでページを開いた際のHTTPステータスコード200の検証 モバイル端末でページを開いた際のHTTPステータスコード200の検証 PC端末での主要導線の確認 モバイル端末での主要導線の確認 まとめ 売却査定サービスにおけるE2Eテストについて 環境 売却査定サービスではE2Eテストを自動化するためのフレー
エンジニアの小林です。 LIFULLで社内ABテスト基盤を開発しています。その開発の中で社内の生成AI基盤「keelai」を活用した取り組みを紹介します。 www.lifull.blog LIFULLではkeelaiという社内向けの生成AI基盤プロジェクトを運用しており、今回はこのkeelaiを利用したコードレビュー用のGitHub Actionsを実装した事例を紹介します。 www.lifull.blog 内製AI Agentによるコードレビュー GitHub Actionsを活用して実現したAIレビューのワークフローは以下の通りです。 コードレビューの概要 GPTやClaudeなどのAPIを利用せず、内製AI Agent「keelai」を活用した理由は以下のとおりです。 社内固有の知識を活用可能 - 社内ドメイン知識を持ったレビューが可能です 継続的な改善サイクル - レビューActi
2024 年中途入社の福原です。 私の所属しているグループでは、毎週チーム全員で時間を設けて、メインとなるページのサイトパフォーマンスを監視・改善する活動を行っています。 今回はその活動の一環で、新築分譲戸建の物件詳細ページのLCPについて、改善を行った結果を共有します。 LCP は、ビューポート内に表示される最大の画像、テキスト ブロック、または動画のレンダリング時間 課題特定 まずは Chrome の Lighthouse を使って計測し、数値の劣化原因を探りました。 指摘の中で最も影響が大きそうだったのは「適切なサイズの画像を使用していない」という点でした。 今回のページでは、カルーセル内に比較的大きい画像とサムネイル用の小さい画像を表示しています。 適切な画像サイズに修正することで、大きな効果が得られると考えました。 改善内容 適切な画像サイズの指定 LIFULL HOME'S に
こんにちは。エンジニアの高詰です。 LIFULLでは新卒入社2年目のエンジニアを対象にしたSET研修が開催されます。 SET研修は2年目の若手エンジニアが中心となりプロダクトをスクラッチから自分の手で開発することでWebエンジニアとしてステップアップすることを目的としています。 この記事では、研修での取り組みや研修中に直面した問題や学びについて紹介します。 SET研修とは 個人の目標設定 作成するサービスの検討 サービスの設計および実装 アプリケーション インフラ デプロイ 実装期間中のプロジェクト進行 実装期間を終えての反省点 学び 終わりに SET研修とは SET(Sophomore Engineers Training)は新卒2年目のエンジニア3〜4人チームでAWSや外部サービスを利用し、16営業日内に1つのプロダクトを作る研修です。期間及び予算は決まっていますが、それ以外はすべてチ
エンジニアの市川と申します。 LIFULL HOME'S の売買領域の開発を担当しています。 さて、皆さんは普段からコードレビューをしているでしょうか。 私たちLIFULL HOME'Sのエンジニア組織では、他者のコードレビューを通過しないとリリースできないというルールを設けています。 そんな中、コードレビューがボトルネックになってしまったアプリケーションがあり、それを解決するために行った取り組みを3点紹介します。 課題 1. 昇格ルールの明文化 問題点: コードオーナーに求められるスキルレベルがわからない 解決策 2. 昇格状況の可視化 問題点: 昇格プロセスの進捗が不明確 解決策 3. 昇格課題の用意 問題点: レビュー経験を積む機会が少ない 解決策 まとめ 最後に 課題 今回対象としたのは、近年基盤を刷新したアプリケーションのコードレビューです。 www.lifull.blog リプ
こんにちは!LIFULLクリエイターの日運営委員のホです。 社内のモノづくりイベント『創民祭』が開催されましたので、その様子を共有させていただきます。 創民祭とは? 創民祭(そうみんさい)とは、業務や「クリエイターの日」、プライベートで創った物など、LIFULL社員が作ったプロダクトをお酒を飲み、ピザ・寿司を食べながらお披露目するイベントです。近年はWebに限らず、VRやイラスト等、多種多様なプロダクトが展示されています。今回はブース出展とLT(ライトニングトーク)の2本だてで開催いたしました! 前回の様子はこちら https://www.lifull.blog/entry/2024/03/18/170000 展示内容 前回同様、Webに限らずいろんなプロダクトが展示されました。以下に展示内容をご紹介します。 ここでは選抜された受賞2作品を紹介していきます。 ChatGPTと作った生活管理
こんにちは、LIFULLでシニアエンジニアをしている渡邉です。普段はLIFULL HOME'Sの流通領域のエンジニアチームにて、マネジメントをしています。好きなE2EライブラリはPlaywrightです。 今回は、LIFULLで取り組んでいるリリース承認の仕組みを変更し、自動化を図った取り組みについてお伝えします。 はじめに 皆さんは、普段の開発フローを一度俯瞰してみたことはあるでしょうか? 開発からリリースまでを通して見直してみると、思いがけないフローがボトルネックになっていることはありませんか? 普段やっている決まった手順が「会社の規定だから」「昔からやってきた習慣だから」と、そのまま受け継いでいるプロセスほど、意外な手間やムダが潜んでいるものです。 そこで今回は、LIFULLにおける課題感を踏まえつつ、私たちが開発フロー全体を見返す中で明らかになったリリースフローの課題に注目し、我々
こんにちは、LIFULL HOME'S事業本部CSユニットサービス開発グループの吉田です。 先日、社内ゼミ(勉強会)にて、障害対応時の心構えと障害対応訓練について共有しました。 このゼミは、プロダクトの開発・運用に関わるメンバーが抱える「もしシステム障害が起きたら、どのように対処すればよいのだろう?」という不安を解消し、適切な対応方法を学ぶ機会として開催したものです。 長年稼働しているシステムで有識者が少ない中、いくつかの障害を乗り越えてきた私たちチームの経験に基づいた障害対応について紹介します。 全体の理解を深めていただくために、本ブログは前編・後編の2つに分かれています。 まずは障害対応についての基礎知識や心得をお話した前編をお届けします。 障害対応はなぜ重要か 障害対応は初動が大事 障害対応の初動をスムーズに進めるための4つの心得 1. 体制をつくる 2. 情報をオープンな場に集約す
グループデータ本部データサイエンスグループの嶋村です。 今回は事業部門と研究開発部門が密に連携して「おとり物件」と呼ばれる社会課題の解決に挑んだ取り組みについて紹介したいと思います。この記事では主に研究開発部門の視点での発信になりますが、事業部門の視点での発信もありますので、是非下記の記事もご覧いただけると嬉しいです。 note.com 物件鮮度向上のための取り組み 適用イメージと評価指標のすりあわせ データの収集と理解 精度向上に向けたアイデア出し 機械学習モデル作成のためのワークフロー整備 機械学習モデルの作成とチューニング おわりに 物件鮮度向上のための取り組み LIFULLが運営する日本最大級の不動産・住宅情報サービス「LIFULL HOME'S」では物件鮮度の向上を目指しており、過去の第三者機関による調査では物件鮮度No.1を獲得しました。物件広告の中には「おとり物件」と呼ばれる
こんにちは、事業基盤ユニットプラットフォームGの宮崎です。 LIFULL HOME’Sは昨年8月に「物件鮮度NO.1」を獲得しました。 今回はこのプロジェクトへのアプローチをエンジニア視点でふりかえってみます。 プロジェクトのきっかけ 背景 処理高速化のアプローチ 具体的な取り組み リポジトリの分離 専用のリードレプリカを作成 プログラムの実行頻度変更 PHPのバージョンアップ & OSのバージョンアップ s3 syncの同期方法変更 成果 物件情報の鮮度向上: 運用効率向上 まとめ プロジェクトのきっかけ 「SNSの投稿みたいに、入力された物件がリアルタイムに検索できればいいのに」 入社して間もない頃から入力された情報の反映を高速化したいと思っていました。 弊社の海外研修で、自部署の上長が情報審査部門の担当者と話す機会があったこともきっかけとなり、物件更新の高速化対応の検討が本格的に始ま
こんにちは、テクノロジー本部の木村です。障害報告のデータによる障害傾向分析やレポーティングの取り組みについてご紹介します。 障害管理の改善を目指す方々に参考になれば幸いです。 障害報告の入力項目 集計項目とツール 障害発生率(当月の開発系起因の障害件数/当月のリリース件数) 検出時間・対応時間・復旧時間の月平均推移 想定損害金額 傾向分析 まとめ 障害管理の運用事例についての記事は以下をご覧ください。 www.lifull.blog LIFULLでは様々なサービスを開発していますが、主要サービスで発生した障害は発生から再発防止までの経緯を報告するルールが定着しています。 一つひとつの障害分析の情報はそれだけでも価値があるのですが、私たちは品質管理部門としてそれをさらに分析する取り組みを始めました。 情報をまとめて整理すれば障害の傾向やサービス横断での共通課題なども見えてくることがありますし
こんにちは。テクノロジー本部の岡より、障害管理運用のより具体的な取り組み内容を紹介していきます。 障害管理に関わる方の参考になれば幸いです。 障害報告のおおまかな流れ 具体的な障害ステータスと報告内容 最近の運用改善事例 まとめ 私たちの部署では、LIFULLのさまざまな事業開発に関する活動や適切性のモニタリングとレポーティングを通して横断・間接的に必要な支援・助言・監督を行う責任を担っています。 事業運営に携わるエンジニアによる、障害分析の取り組みはこちらの記事もぜひ読んでみてください。 www.lifull.blog 障害報告のおおまかな流れ LIFULLでは、専用の障害報告管理ボードを使って障害発生から恒久対応完了までを報告することになっています。 「障害・バグが疑われる事象」「サクセスレートの低下によるエラー通知」などの問題が起きたら、誰でもすぐに報告チケットを起票できます。(起票
こんにちは、クオリティアーキテクトグループ(以下、QAG)の鐘です。 この記事では、E2Eテスト用物件のデータの正確性を維持するために、定期的にCSV形式の正しいデータを取り込むことで復旧する仕組みをご紹介したいと思います。 1. 結論 2. 背景 3. 解決したい問題 主要問題:物件データが意図せず変更されることで、テストが失敗してしまう 対応コストの増加 テスト信頼性の低下 副次問題:テスト用の物件が最適化・管理されていない 一つの物件が数種類のテストで使用されている 物件データがテスト用に最適化しづらい 4. やったこと 問題解決までの流れ 副次問題に対して:物件データの最適化 主要問題に対して:CSVでデータを復元できるのツール「DataKeeper」を提供 5. さらなる改善 1. 結論 物件データの不備が原因でテストが失敗することは運用開始以来発生していません。データが変更され
こんにちは。LIFULL Tech Vietnam(以下、LFTV)CEOの加藤です。 2023年10月にLFTVのCEOに就任し、早1年が経過しました。 この1年LIFULLグループでは「グローバル開発体制強化」を掲げ、その実現に向け多くの検討と取り組みを繰り返してきました。 そうした活動を繰り返す中で、我々は目指すべきグローバル開発を進めるためには以下の「3つの壁」を超えていくことが重要であるという結論に至りました。 「意識・理解」の壁 「仕組み」の壁 「言語」の壁 今回はその中でも主に「意識・理解」の壁を越えるためにLFTVとして行った取り組みを3つ紹介します。 3つの壁については当社CTOの以下の記事でも紹介しています。 note.com また、LFTVにおける今後のビジョンやグローバル開発体制強化の詳細は以下の記事で紹介していますので、よろしければご覧ください。 www.lifu
フロントエンドエンジニアの嶌田です。 アイコンは、UIデザインにおいて欠かせないパーツです。弊社が提供する不動産情報サイトであるLIFULL HOME'Sでも、多数のアイコンが使われています。 ウェブページにアイコンを埋め込む手段は無数にあります。あなたはいくつ言えますか? それぞれのメリットとデメリットについて説明できるでしょうか? この記事では、LIFULL HOME'Sのフロントエンドで選ばれているアイコン表示方法およびその理由を説明します。その後、アイコンの管理や実装にまつわる不便な点をサービス横断的に解消するために作られた社内ツールと配信システムである、LIFULL Icon CDNを紹介したいと思います。 私たちのアイコン実装方法 無数にあるアイコン実装方法のうち、私たちが選んだ実装方法は極めてシンプルです。 <img src="assets/icon-star.svg" wi
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間通信を減ら
QAの山下です。 QAグループという名前で横断組織として手動&自動テストやツール開発、プロセス改善など仕組みづくりに取り組んでいます。 今回は LIFULL HOME'S の開発で実行されているE2Eテスト(リグレッションテスト)をシフトレフトし、実行時間を80%短縮した話を紹介します。 ざっくり何をやったのか 大規模なリポジトリでのdevelopマージ後のE2Eテストの9割をPR上で実行可能にした コードのpushからE2Eテスト完了まで5~8分で完了できる 運用上の課題も頑張って解消した 目次 ざっくり何をやったのか 目次 結論 前提情報 E2Eテストとは リグレッションテストとは LIFULL HOMESでのE2Eテストの位置付け シフトレフトとは EEとは 対象のプロダクトの規模 起こっていた課題 テストの削除とリファクタを行い、テストケースを3割削減した デプロイ後のアプリケーシ
こんにちは。クオリティアーキテクトグループでQAエンジニアをしている星野です。 元々はQAグループという名前で横断組織として社内のテストプロジェクト支援などを嗜んでいましたが、 組織が統合・再編成され、より自動テストやツール開発、プロセス改善などエンジニアリングに寄った仕組みづくりに取り組んでいます。 3行まとめ 共通のフォーマットを開発したよ 抵抗感なく浸透させるように工夫したよ こっそり横断的なメトリクスも取ったら便利っぽかったよ 3行まとめ 背景 課題 対策 やったこと 当たり前品質編 : 満たさないと論外 魅力品質編: 乗り換える理由をつくる 横断部署が常にぶちあたる浸透の課題 ロガー 広報 効果と現状とこれから 終わりに 背景 課題 LIFULLではチームごとにやりやすい開発体制を選択しています。 奇抜な開発スタイルをとっているわけではありませんが、それぞれに特色があり独自に改善
KEELチームの相原です。 今回はeBPFを利用してKubernetesクラスタの可観測性の隙間を埋めている話です。 前回のエントリではLLMにうつつを抜かしていたので本業(?)の話をしようと思います。 www.lifull.blog LIFULLの可観測性の現在地 eBPFとは 可観測性の隙間 NAT Loopback eBPFを実行するには BPF CO-RE libbpf-rsを利用したNAT Loopbackの検知 1. (ユーザ空間) コマンドライン引数として受け取ったDNSをTTLごとに名前解決してIPアドレスを取得する 2. (ユーザ空間) IPアドレスに変化がある度にカーネル空間で動くBPFプログラムにそのIPアドレスのリストを渡す 3. (カーネル空間) Kprobesで tcp_v4_connect/tcp_v6_connect にフックを仕込む 4. (カーネル空間)
KEELチーム の相原です。 前回のエントリ で我々KEELチームはKubernetesベースの内製PaaSであるKEELを開発・運用する傍ら、LLMという新たなパラダイムの台頭にあわせてベクトルデータベースの提供や周辺ソフトウェアを社内向けに開発していることを紹介しました。 www.lifull.blog あれから数ヶ月が経ち、現在私達はLIFULLのグループ会社全体に向けて汎用AI(仮)を提供しています。 もともと我々KEELチームはPlatform Engineeringの一環として、Kubernetesベースの内製PaaSであるKEELのほかにコードジェネレータによる一貫したPaaS体験を中心に様々なユーティリティをコマンドラインから提供するkeelctl, KEELが提供するプラットフォームのユーザ体験を向上させるブラウザ拡張のkeelextを開発してきました。 Platform
プロダクトエンジニアリング部の吉田と申します。 普段はRubyやTypeScriptといった言語を使ったサーバサイドエンジニアをしています。 今回、サイトの閲覧障害をきっかけに行ったポストモーテム会が個人的にとても有意義だと感じたので紹介させてください。 障害分析レポートの紹介 弊社では障害が起きた場合、障害分析レポートを書くという決まりがあります。 この障害分析レポートというものは、一般的にはSREの用語でポストモーテムとして知られている障害対応時のことを記録する文書のことです。 弊社では品質管理を行っている部署がテンプレートやフォーマットを整えてくれており、内容としてはオライリーのSRE本の付録Dに記載してある「ポストモーテムの例」にかなり似通った内容です。 かいつまんで紹介すると下記のような内容を記載するものです。 障害の概要 影響範囲 タイムライン 水面下で起きていた問題(根本の問
プロダクトエンジニアリング部の千葉です。 LIFULL HOME'S不動産査定とホームズマンション売却の開発に携わっています。 この記事では、売却査定サービスにおけるアクセシビリティ対応の取り組みについて紹介していきます。 マンション査定シミュレーション input要素 コンボボックス 所在地選択ダイアログ キーボードフォーカス リストボックス 最後に マンション査定シミュレーション マンション査定シミュレーションは、インターネット上でマンションの価格を調べることができる簡易査定の機能です。 売却計画を立てる際や、不動産一括査定サービス利用時の参考として使用することができます。 LIFULL HOME'Sのマンション査定シミュレーションではマンション名、所在階、専有面積、間取りを入力すると参考価格を算出することができます。 まずは、ここの入力欄要素での取り組みについて紹介します。 inpu
こんにちは、フロントエンドエンジニアの嶌田です。 アクセシビリティは今まで以上に大きな関心を寄せられるトピックになってきたように思います。個人で関心がある人、企業のなかで周りを巻き込み推進しようとしている人、すでに組織全体での取組みに変わりつつある企業など、状況は様々だと思います。弊社はというと、内側からの推進活動は広がりを見せつつも、まだ組織一丸となった取組みには至っていない、といったところです。 そんな状況の私たちですが、社外のアクセシビリティを推進する同志たちに、ほんの少しでも力を分け与えられたらと思い、このたび「LIFULLアクセシビリティガイドライン」を公開しました。取組み状況が様々ある中でどのように活かしていけるか、まずは一度ご覧いただければ幸いです! lifull.github.io アクセシビリティとは? アクセシビリティとは、高齢者や障害者を含むできるだけ多くの人々に対し
フロントエンドエンジニアの嶌田です。株式会社 LIFULL でプロダクトのアクセシビリティ向上をミッションとして活動しています。 本日は、不動産・住宅情報の総合サービスである LIFULL HOME'S のスマートフォンサイトにおいて、過去半年間で実施したアクセシビリティ向上施策をご紹介します。ご紹介する施策のうちいくつかは、内容を掘り下げて実装コードを交えて解説をしていきます。 それでは、早速アクセシビリティ向上のために実施した施策を見ていきましょう。 ボタンを正しくボタンにする 追加コンテンツを読み込む機能のフォーカス管理 チェックボックスに適切な名前を付ける カルーセルをアクセシブルにする スクリーンリーダーによる検索結果の件数の読み上げ そのほかの改善点 おわりに ボタンを正しくボタンにする ウェブサイトにおいて、ユーザーがアクションを実行するためにボタンが用いられます。ボタンは通
次のページ
このページを最初にブックマークしてみませんか?
『LIFULL Creators Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く