Retty Tech Blog

実名口コミグルメサービスRettyのエンジニアによるTech Blogです。プロダクト開発にまつわるナレッジをアウトプットして、世の中がHappyになっていくようなコンテンツを発信します。

【Android】“いつかやる”UI修正、Devinが1日でやってくれた

Rettyアプリチームの若田(@wakanao_banana)です!北海道出身のため7月の東京の暑さで半分溶けています。 今回はAndroidアプリのデザインをDevinを用いて一括で改善できた例を紹介します! Rettyでの生成AI導入状況 Devinとは 古いデザインの画面が残存 Dev…

オンコール通知の移行

こんにちは、Rettyプラットフォームチームの中西です。 本投稿ではRettyが最近行ったオンコール通知サービスの移行の背景や具体的手順について紹介します。 移行の背景 オンコール周りで利用している機能 オンコール周りで利用していない機能 1. Oncall スケ…

オーバーエンジニアリングを考える

ソフトウェアエンジニアの福井です。 前職含めて様々なオーバーエンジニアリングを目の当たりにし、また自身で設計実装してきました。 オーバーエンジニアリングにはオーバースペックな技術やテクニックを使うことや、誤ったビジネス戦略からくる過剰な仕様…

RettyにおけるComposeのUIテスト活用:ユーザー行動ログを守るテストコードの紹介

Rettyアプリチームの若田@wakanao_bananaです!暖かくなったと見せかけて急に寒くなる東京のツンデレ具合にキュンとし始めたこの頃です(いやツンデレというよりデレツンでしょうか) この記事では、RettyにおけるComposeのUIテスト活用の事例をサンプルを用…

Rettyが毎週アプリのリリースをする理由と運用を継続するためのポイント

Rettyアプリはなぜ毎週リリースなのか? 昨年末以来ご無沙汰しています、Rettyアプリチームの今泉@imaizumeです。来月のtry! swift tokyoに約5年ぶりの参加でワクワクしております、会場でお見かけした方はぜひよろしくお願いします! 今回は、RettyのiOS/Andr…

Retty VPoE通信 Vol.3 - インテグリティについて考える

Retty VPoE(VP of Engineering : 技術部門のマネジメント責任者)の常松です。 VPoE通信は「開発のトップとして今何を考えていて、どう動こうとしているのか」の定期発信企画で、今回が3回目です。 Retty VPoE通信 Vol.2 - Retty Tech Blog (戦術強化を大事に…

ストレスを感じやすいママエンジニアが2回目の育休&復職で鍛えるべきは心の防御力だと気付いた話

ストレスを感じやすいママエンジニアが2回目の育休&復職で鍛えるべきは心の防御力だと気付いた話

APIリクエスト内で同一関数呼び出しをキャッシュする仕組みとGo実装

ソフトウェアエンジニアの福井です。 Rettyでは小さなデータを複数取得し、それらを組み合わせて1つの大きなデータにする処理がいくつかあります。そして小さなデータ取得の判定に使うためのデータを取得することがあります。例えば飲食店の画像、メニュー、…

Fastlyでオリジンシールドを設定する

この記事はRetty Advent Calendar 2024の11日目の記事です️。 adventar.org Rettyプラットフォームチームの今村です。 RettyではContent Delivery Network(CDN)にFastlyを利用しています。今回はFastlyで複数のバックエンドを利用している環境にオリジンシー…

Search Console × BigQueryで全量データ分析

Retty(レッティ)のプロダクトマネージャーをしている松田です。 はじめに Search Consoleではエクスポート行数に1000行までの制限がある、遡れる期間が16ヶ月前まで、など何かと物足りないポイントがあります。 BigQueryにデータをエクスポートすることで…

ベクトル検索を実現する技術選定 ~pgvectorとQdrantの性能比較~

本記事はRettyアドベントカレンダー2024の9日目の記事です。 Rettyでエンジニアリングマネージャを務めている山田です。 2022年の年末頃にChatGPTが登場してから早2年となります。 当初は革新的なAIという印象でしたが、時間の経過によりLLMを普段の生活や業…

Combine製ロジックへのSwiftTesting導入とBDDからの移行

本記事はRettyアドベントカレンダー2024の8日目になります Rettyアプリチームの今泉 @imaizume です。 最近はプロダクトマネージャー(PdM)としての業務が増え、コードを書く時間が以前よりも減ってきています。 そんな中先日久しぶりに参加したiOSの勉強会…

Rettyアプリ:リリース文言の継続的運用への取り組み

Rettyアプリチームの若田(@wakanao_banana )です!この記事はRetty Advent Calendar 2024の7日目の記事です️ 今回のテーマは「リリース文言」についてです。これまでのリリース文言作成の課題とその解消、そして現在Rettyで運用されているリリース文言の作…

レッティ AndroidアプリにおけるCIチェックの体制

Rettyでアプリエンジニアをしている松田(@matsudamper)です。 この記事はRetty Advent Calendar 2024の5日目の記事です。 この記事ではRettyのAndroidアプリのテスト、LintのCIチェック体制がどうなっているかを紹介します。 現在は以下のチェックがCIで走っ…

[iOS] Visionフレームワークを用いた料理写真の画像分類精度検証

iOS

Rettyアプリチームの若田(@wakanao_banana )です!この記事はRetty Advent Calendar 2024の4日目の記事です️ 12月に入り寒くなってまいりましたが、地元の北海道では冬に部屋をぬくぬく温めてお風呂上がりにアイスを食べる、なんてことを思い出す季節です…

長期関与で学ぶ知見:Rettyの実例から見るシステム改善の軌跡

Retty VPoE(VP of Engineering : 技術部門のマネジメント責任者)の常松です。 2025年2月27日に開催されるEMConf JP 2025向けに本記事と同じタイトルのプロポーザルを出していましたが、強豪ひしめく選考で負けてしまったようです。本記事に話したかったこと…

リソース効率向上のためのGoのuniqueパッケージ

ソフトウェアエンジニアの福井です。 Go 1.23で新しくuniqueパッケージが追加されました。このuniqueパッケージはinterningを提供します。 interning interningとはGoに限らず、新しいオブジェクトを作成するときにすでに同じオブジェクトのメモリ割り当てが…

Fastly ディクショナリを駆使してシステムを段階的移行する

ソフトウェアエンジニアの福井です。 業務では飲食店Webページの機能開発をしつつ、Webページを新システムに段階的移行しています。Rettyに掲載されている飲食店は様々な契約種別があり、その種別ごとに新システムに移行しています。 RettyはCDNにFastlyを使…

大吉祥寺.pmに行ったら美味しいランチも楽しもう

Retty VPoEの常松です。来たる2024年7月13日(土)に技術勉強会 吉祥寺.pmの10周年イベント 大吉祥寺.pm が開催されます。私も登壇者の一人として参加予定です。 そんな大吉祥寺.pmですが、運営の方が「せっかくだから吉祥寺の美味しいものを食べていって欲し…

Fastly の Edge Rate Limiting で苦労せずレート制限を実装する

Retty でエンジニアをしている山下です。 早いもので2024年も残り半分となり、年々1年の長さが短く感じるようになってきました。 Retty では nginx 移行を通じて学んだ Fastly のはじめかた で紹介したように CDN として Fastly を利用しています。 今回は F…

低予算でGoのコードカバレッジレポートをPull Requestにコメントする using CircleCI

ソフトウェアエンジニアの福井です。 コードカバレッジのパーセンテージを上げる(または保つ)ことを強制することは悪いプラクティスとされます。 そのためRettyではいくつかのプロジェクトで、パーセンテージによってmergeできないなど強制せず、カバレッジ…

プロダクトマネージャーとエンジニアリングマネージャーで協力して使われなくなったコードを消していった話

Rettyの松田です。普段はプロダクトマネージャーとしてSEOに関わっていることが多いですが、今回はエンジニアリング寄りのブログです。 元々Webエンジニアをしていたのである程度はコードを読むことができ、現実的にプロダクトの改善につながるものがあった…

アプリのバックエンドをGraphQLに移行しました

この記事はアプリチームのAndroid、Backendを主に担当している松田がお送りします。 概要 現在、アプリのバックエンドはREST APIで構築されていますが、これを新規開発はGraphQLに移行しました。移行した背景と技術的な選択、実装時の考慮点を紹介します。 …

GitHub Copilotで効率的にSQLを書くコツ

Rettyプロダクトマネージャーの松田です。 プロダクトの現状把握や施策効果の分析など、さまざまなタイミングでBigQueryのSQLを書くことがあります。 Rettyでは昨年末にGitHub Copilotを導入したので、それに合わせてSQLの作成にもGitHub Copilotを使い始め…

アプリ開発メインの私が業務で擦れるほど使い倒しているGit/GitHub CLIの便利コマンド4つ

Rettyアプリチームの今泉 @imaizume です。 昨今の開発において、バージョン管理ツール、特にGitとGitHubを多くの方が使っていると思います。 日常的に高頻度で行う作業ですので、かける手間や時間は極力抑えたいもの。 とりわけブラウザ、開発環境、ターミ…

Retty VPoE通信 Vol.2

Retty VPoE(VP of Engineering : 技術部門のマネジメント責任者)の常松です。 VPoE通信は「開発のトップとして今何を考えていて、どう動こうとしているのか」の定期発信企画で、今回が2回目です。 Retty VPoE通信 Vol.1 - Retty Tech Blog VPoEの管掌は技術…

dataformからdbtに移行するために調べたこと

dataformからdbtに移行するために調べたこと

FRM事業(集客支援事業)の成長を支援!Retty営業企画部の取り組みを紹介

Rettyの営業企画部マネージャーの平野です。 昨年まではデータ分析チームに所属しており今年1月から営業企画部へ異動しました。 (これまでの取り組みはこちら) 営業企画部は2020年頃から設立されていましたが、私の異動と同時に大幅な体制変更があり、役割…

【Retty新卒エンジニアの成長記録】成長ではなく変化し続ける、そしてみんなで一つのプロダクトを作る

Retty Advent Calendar 2023 Day17 の記事を担当します。俵積田です。 Rettyに入社して半年以上経ったのでこれまでに自分が体験して感じたこと・考えたことを書いてみました。 これまで技術系のブログは書いたことはあるのですが、自分の抱いた思いを文字に…

日本全国で自社のサービスをドッグフーディングしてみて

この記事はRetty Advent Calendarの10日目の記事です。 私が行っているドッグフーディングの内容 検索 作成した行きたい・オリジナルリストから探す 投稿(のための飲食店観察) 飲食店情報の更新 他サイトとの比較 ドッグフーディングの成果など 2023年の報…