はじめに:私がAndroid StudioからCursorへ移行した理由 今回のテーマ:食べログAndroidのリアーキテクチャにおけるCursor活用 1. 調査フェーズ:古い実装の画面をAIと解き明かす 今回対象画面 やったこと 調査前の準備:知りたいことをリストアップ AIとの対話形式での調査 成果物 Tips 2. 設計フェーズ:AIを壁打ち相手に、新アーキテクチャを描く やったこと 設計前の準備:...| Tabelog Tech Blog
はじめに こんにちは、食べログカンパニー 開発本部 飲食店プロダクト開発部の菅原です。所属する予約基盤チームでは、食べログ内の中心機能の1つである予約システムの開発・運用を担当しています。 大規模かつ長期にわたるサービス開発では、多くの開発者が共通の課題に直面します。その1つが「ドキュメントの陳腐化」です。 仕様変更にドキュメント修正が追...| Tabelog Tech Blog
目次 目次 はじめに 食べログノートの開発体制 保たれていた秩序 GraphQLを導入した背景 クライアント要求への柔軟性の向上 並行開発を促進する、スケーラブルな開発体制の確立 専任の管理者不在でGraphQLを運用 開発拡大で露呈したスキーマ運用の課題 レビューコストの増大 スキーマに対する認識のズレ クライアントサイドの実装都合のスキーマ サーバーサイドの実...| Tabelog Tech Blog
はじめに こんにちは。 飲食店向けモバイルオーダーシステム「食べログオーダー」でQAチームの職域リーダーをしている池田です。 食べログオーダーとは「お客様が自分のスマートフォンを使ってメニューを注文できる」サービスです。 今回は食べログオーダーのテストアプローチとして取り入れて成功したリスクベースドテストについてお話しします。 目次 プロジ...| Tabelog Tech Blog
こんにちは! 食べログカンパニー開発本部ウェブ開発 2 部の濱口 (@machida4) です。 4 月 16 日 ~ 18 日に松山で開催された RubyKaigi 2025 に参加しました。 この記事では、RubyKaigi 2025 の注目セッションをご紹介します。 どのセッションも大変興味深いものばかりでしたが、全部盛りにするとスクロールバーが見えなくなってしまうので、特に印象に残ったセッションをいくつ...| Tabelog Tech Blog
こんにちは! 食べログカンパニー 飲食店プロダクト開発部の稲葉・南野です! 我々は食べログの予約システムと、外部システムとの連携に関する開発・運用をする業務を担当しています。 今回は外部システム連携に携わってきた二人の視点から、「食べログの予約システムにおける外部システム間連携」についてご紹介します! 目次 目次 はじめに 食べログの予約シ...| Tabelog Tech Blog
はじめに こんにちは。食べログ開発本部ウェブ開発2部でWEBエンジニアをしている向島です。 私は普段、要件や仕様決め、スケジュール調整など、一緒に開発を進める企画やデザイナーと日々連携をとりながら開発を進めています。 プロダクト開発を遅延や品質の低下なく順調に進行させるためにも、他職種とのコミュニケーションは非常に大切な要素のひとつですが...| Tabelog Tech Blog
はじめに 課金戦士は恐怖した。必ず、テスト自動化の実装をできるようにならなければならぬと決意した。課金戦士にはコードがわからぬ。課金戦士は、QAエンジニアである。テストケースを作成し、テスト環境に弄ばれて暮して来た。けれどもテスト自動化という未知に対しては、人一倍に敏感であった。 テスト自動化への心理的障壁がエベレストなあなたも、日和...| Tabelog Tech Blog
こんにちは。食べログでAndroidアプリのテックリードをしているsadaです。 今回は食べログAndroidアプリの自動テスト戦略についてご紹介したいと思います。 目次 そもそもテストコードはなぜ必要なのか テストコードにおいて大事なこと 自動テストの信頼性 できるだけ早い段階で検出する 継続的な保守 食べログAndroidアプリの自動テスト戦略 テストコードを書く文化を...| Tabelog Tech Blog
はじめに 食べログ開発本部 技術部のデータサイエンスチームに所属する河村です。 データサイエンスチームは、データとAIを活用してビジネス成長に貢献することをミッションとしており、生成AI技術のサービス活用や業務活用に取り組んでいます。 その一環として、データサイエンスチームで行った生成AIの活用事例を、2025年1月15日に開催されたW&Bミートアップにて...| Tabelog Tech Blog
目次 目次 1. はじめに 2. プロジェクトの内容と成果 2.1. メニュー入稿業務の説明 2.2. 作業効率化のためのツール開発 2.3. 成果 3. メニュー抽出処理の詳細 3.1. OCR技術 3.2. 生成AIとOCRを組み合わせたメニューデータ抽出方法 3.3. ストリーミング対応 3.4. 斜め画像への対応 3.5. メニュー画像タイプごとの抽出精度 4. 成功の要因となったポイント 4.1. 生成AI領域だけでなく、幅...| Tabelog Tech Blog
こんにちは。食べログでiOSアプリのサービス開発を担当している河崎です。 私の所属するプロダクトチームでは、ユーザーが継続的かつ手軽に行ったお店の記録ができるように、アプリの改善や新機能開発など様々な対応を行っています。 この記事では、iOSアプリで料理写真を判定するために画像分類を取り入れた開発事例の紹介と、開発で得られた知見についてまと...| Tabelog Tech Blog
目次 目次 はじめに 分散システム視点での自動テストシステム 分散システム構成 入力 出力 テスト対象システム コンポーネント ノード Testcase Allocator Cucumber Selenium Browser 事例:食べログで起きた分散システム視点でのFlakyテスト 問題 Flakyテストの事象: "たまに" "不特定" "多数のテストケースが" "Cucumberのstepの60秒タイムアウトエラーで失敗する" Flakyテストの原因調査の...| Tabelog Tech Blog
この記事は 食べログアドベントカレンダー2023 の21日目の記事です。 こんにちは。食べログAndroidアプリの保守を担当している米山です。 最近はテスト工数の削減に向け、UIテストの自動化を進めています。 今回の記事ではMockWebServerを使ったUIテストの実装方法についてご紹介します。 目次 はじめに MockWebServerの導入方法 実装方法について ラッパークラスの作成 ダミ...| Tabelog Tech Blog
この記事は 食べログアドベントカレンダー2023 の18日目の記事です🎅🎄 こんにちは。食べログシステム本部 アプリ開発部で部長をしている @sato-tatsuaki-biz です。 本記事を書くきっかけとなったのは、4月に担当する部が変わり、部長が変わっても混乱なく成果を出していける組織というのは改めて良いものだと感じたことです。「持続可能」 この言葉が一番しっくりき...| Tabelog Tech Blog