サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
engineer.retty.me
Retty VPoEの常松です。来たる2024年7月13日(土)に技術勉強会 吉祥寺.pmの10周年イベント 大吉祥寺.pm が開催されます。私も登壇者の一人として参加予定です。 そんな大吉祥寺.pmですが、運営の方が「せっかくだから吉祥寺の美味しいものを食べていって欲しい」という思いから、おすすめのお店をX(Twitter)で募っていました。 大吉祥寺.pmに向けて、吉祥寺駅周辺のランチ情報を収集しています このハッシュタグをつけて、お店の名前と写真をポストするだけです!#吉祥寺の美味しいもの ぜひご協力をお願いします! https://t.co/qnq50BNT3a— 吉祥寺.pm (@kichijojipm) 2024年5月18日 「自分にベストなお店が見つかる」実名口コミのグルメ情報・予約サイト Retty(レッティ) としてはこの気持ちを後押ししたく、参加予定の皆様向けに吉祥寺の
コトの発端 実現したい分析基盤 Rettyの分析基盤 dbtにまとめて、こうしたい dataformでやっていたこと 使ったdbtの機能は、incrimental modelのThe insert_overwrite strategy 実際にやったコト merge intoで指定する任意のパーティション設定 incremental modelのinsert_overwriteの設定 incremental時のwhere句 感想 サンプル コード 挙動 N日に実行 N+1日に実行 この記事Retty Advent Calendar 2023 - Adventarの24日目の記事です。 2023年4月に入社した土田です。 コトの発端 こんなメールが来た。 半年後にdeprecated。まじか。 実現したい分析基盤 前述の通りRettyではdataformを使って、DWH内の物理テーブルを更新し
Rettyの松田です。普段はプロダクトマネージャーとしてSEOに関わっていることが多いですが、今回はエンジニアリング寄りのブログです。 元々Webエンジニアをしていたのである程度はコードを読むことができ、現実的にプロダクトの改善につながるものがあったため、週1時間ぐらいを確保してコードリーディングするのを半年ぐらい続けていました。 一定の区切りがついたのと、実際にいくつか不要なコードを削除することができたので、その取り組みについてまとめてみます。 きっかけ プロダクトの主要なページについて、現状を把握することが難しくなってきていることが課題として存在していました。 主要なページは数多くの施策が行われている分コードの変化も多く、ユーザーさんに価値を提供し続けられなくなってしまったものも取り残されてしまっていました。 他の施策の実行に合わせてリファクタリングできるレベルであればよかったのですが
Rettyプロダクトマネージャーの松田です。 プロダクトの現状把握や施策効果の分析など、さまざまなタイミングでBigQueryのSQLを書くことがあります。 Rettyでは昨年末にGitHub Copilotを導入したので、それに合わせてSQLの作成にもGitHub Copilotを使い始めました。 使いたいテーブルが偏っていたりテーブルの設計が似ているものが多く毎回同じようなクエリを書いていましたが、GitHub Copilotの導入で体感としては半分ぐらいに作業時間を短縮できたと思います。 まだまだ不十分だと感じることもありますが、現時点でも十分に活用できているので、GitHub Copilotで楽にSQLを書くときのコツをいくつかまとめてみました。 ※Visual Studio Codeと組み合わせて使う前提で書いています。(導入方法が公式から出ています) 1. GitHub Cop
この記事はRetty Advent Calendarの3日目の記事です。 ニューヨークのビル (Photo by Taryn Elliott on Pexel) ハロー! software engineerのTakato Fukuiです。最近バッチアプリケーションを開発しました。この記事ではその際に使用したバッチ実装のテクニックを説明します。 バッチの品質を高めるためには考慮することがたくさんあります。 冪等にする 同時実行できる パラメータ指定などしてrerunし易い 処理失敗しにくいようにAPIアクセスなどをretryする 途中でエラーが起きても結果に問題なければ処理継続する ... (Web APIでもある程度同じことは言えます) このバッチ実装における設計やGo実装のいくつかのテクニックを説明します。 今回開発したバッチの概要です。 日次起動 処理時間は数10分 処理内容 複数飲食
この記事は Retty Advent Calendar 2022 Part2 の16日目の記事です。昨日はたちばなさんの『アイドルヲタクが応援うちわで考えるユーザー体験設計』でした。 もちろん Part1 もあります。Part 1 では CLI バージョンマネージャーに関する記事を書いたのでぜひ見てください! engineer.retty.me はじめに 背景 なぜ IAM User を減らしたいのか 期限のないアクセスキーの漏洩リスク 管理コストの増加 IAM User を減らすための取り組み IAM Identity Center (AWS SSO) の利用 SaaS 向け IAM User を IAM Role への切り替え Treasure Data Datadog Fastly CI 向け IAM User を IAM Role への切り替え GitHub Actions Cir
こんにちは。Retty インフラチームの幸田です。 今回は Retty で利用している GraphQL API に WAF (Web Application Firewall) を導入したのでその話をしようと思います。 Retty と GraphQL API GraphQL を利用した攻撃 リスクを伴う設定 悪意のあるクエリ Web API の脆弱性 Fastly Next-Gen WAF について GraphQL Inspection WAF のセットアップ GraphQL Inspection の有効化 Templated Rule 動作確認 ブロックについて Site Alerts を用いた攻撃のブロック シグナルを用いたブロック設定 URL パスと HTTP メソッドを利用したブロック設定 ブロック設定のまとめ 最後に Retty と GraphQL API 下記記事の「システム構
この記事は Retty Advent Calendar 2022 Part1 の14日目の記事です。昨日は今井さんの『ストーリーポイント定規を作ってみた』でした。 今年も Part2 があるのでこちらもよろしくお願いします。自分は Part2 の16日にも記事を書きます。 はじめに aqua について チュートリアル 1. aqua のインストール 2. ツールの追加 2.1 Registry とは 2.2 aqua.yaml の生成 2.3 aqua generate によるツールの追加 3. ツールのインストールと実行 aqua のここが便利! バージョンの指定、切り替えが簡単にできる バージョン切り替え時の挙動について バージョンの指定について aqua generate -s の利用 aqua.yaml による設定の共有ができる 設定ファイルの読み込みについて Renovate に
はじめに こんにちは アプリ開発チームで主にiOS開発をしているレイです。 この記事は Retty Advent Calendar Part2 の23日目の記事です。 Part1 はこちら 今回の記事では下記の内容で話をしようと思います はじめに 課題 CI/CDサービスの比較 XcodeCloud XcodeCloudとは? XcodeCloudのメリット・デメリット 移行作業 XcodeCloudを導入するための変更 Workflow Workflowとは Workflowを作る Custom Build Scriptを作る ci_post_clone ci_pre_xcodebuild ci_post_xcodebuild GHAとの連携 個別QA用のWorkflow リリースブランチを作るためのWorkflow CI/CD全体的なフロー これからの改善 FeatureFlagを活性
この記事はRetty Advent Calendar 2022の22日目の記事です。 adventar.org adventar.org Rettyのデータ分析チームMGR平野です。 毎年恒例の”Rettyデータ分析チーム振り返り記事”です。(過去記事:2021年 / 2020年 / 2019年 / 2018年) 今年は、去年掲げた今後の課題”データマネジメントの強化&定量/定性分析の精度向上”に対する変化という視点で書きました。 <去年掲げた課題と変化> 課題1:データマネジメントの強化 →変化①:データ基盤の運用を"内製ツールで全部やる"から"外部ツールやSaaSを積極活用へ" 課題2:定量/定性分析の精度向上 →変化②:ディスカバリーの関心事が”やる・やらない”から”やり方・プロセス”に そして記事の最後は、来年のデータ分析チームの体制変更について触れています。ぜひ、最後までご覧いた
この記事はRetty Advent Calendar Part2の22日目の記事です。 Part1はこちらです。 はじめに 23卒の内定インターンをしている真下(@mashita1023)です。 内定インターンの中で単純な要件の社内ツール作成を作成したのですが、技術選定から実装まで結構な範囲を開発させてもらましえた。 その中でフロントエンドのデプロイ先にGoogle Apps Script(GAS)を使うことで、社内の人間のみが扱えるという要件を達成できた話をします。 社内ツールの要件 キャッシュを消すためのツールは以前にも社内ツールとして存在していたのですが、 コード自体がGitHubで管理されておらずどこにあるのかわからない状態でした。 そこで、キャッシュを消すためのツールを新たに作る必要がありました。 作成しなければいけないものを要件として簡潔にまとめ直すと以下のようになりました。
この記事はRetty Advent Calendar Part2の17日目の記事です。 はじめに おすすめプラグイン紹介 Git系 GitToolBox Find Pull Request GitLink エディタ拡張系 InspectionLens Randomness Rainbow Brackets ショートカット関連 Mnemonic Keymap Key Promoter X その他 EnvFile JsonParser Awesome Console おわりに はじめに Rettyで生産性改善を担うProductivityチームに所属している山田です。 生産性改善というと技術負債に立ち向かって開発しやすい環境を整備する、定型作業を自動化して本質的な作業に向かいやすくする、といった大掛かりなものが思い浮かびやすいと思いますが、普段使っているツールを最大限に活用して短い時間で仕事を
はじめに Taurusとは Taurusはこんなところが良い Taurusを使って負荷試験をするまで インストール 設定ファイルの準備 実行 実行結果レポート Console Reporter Blaze Meter Reporter 参考文献 はじめに RettyでtoB(飲食店)向けのWebエンジニアをしている渡辺です。 業務でTaurusという負荷テストフレームワークを使用したところかなり良かったので、熱く紹介します。 Taurusを使うと負荷試験結果がこんなにみやすく確認できます。やばくないですか?(語彙力) コンソール上のレポート Web上のレポート ※ この記事はRetty AdventCalendarPart2の9日目の記事です。 Part1 Part2 Taurusとは Taurusのチュートリアルサイトでは以下のように紹介されています。 Taurus is an open
この記事は Retty Advent Calendar 2022 12日目の記事です。 adventar.org Rettyで飲食店向けプロダクトのエンジニアリング部門マネージャーをしている遠藤です。 近年オフショア開発を活用する企業やサービスが増えていますがRettyでも取り入れています。 昨年突如オフショア開発チームとの窓口を任されることになり、右も左も分からない状態の私が四半期ごとの社内表彰式で賞をとるまでに至った苦悩と工夫を紹介していこうと思います。 海外にいるエンジニアチームとうまく仕事を進める方法の参考になれば幸いです。 受発注関係にならずいかに協働できるか 私にオフショア開発チームとの窓口依頼が来たとき、Rettyではすでにオフショア開発を始めた後でした。 海外のアプリ向けと国内の新規事業で取り組んでおり、依頼は当時私が担当していたビジネス側の開発にオフショア開発を取り入れよ
これはEngineering Manager Advent Calendar 2022の9日目の記事です! エンジニアリング部門マネージャーの池田(@Nao_Mk2)です。 みなさん、「エンジニアリングマネージャーのしごと」という本をご存知でしょうか? 評判の良い本なので読んだことある方も多いかと思います。 www.oreilly.co.jp 今回エンジニアのマネージャー陣でこの本の社内輪読会をやってみました! 私は今年の10月にマネージャーになったばかりなので、新米マネージャーからみた学びを輪読会の様子とあわせてお伝えできればと思います。 始めたきっかけ やりかた 学び 経験や視座の異なる参加者の議論が学びを強化した マネジメント活動をふりかえる場になった マネージャー同士の雑談を後押しした まとめ 始めたきっかけ Rettyでは色々な本の輪読会が社内のあちこちでよく行われています。今回
この記事は Retty Part2 Advent Calendar 2021 の 22 日目の記事です。 adventar.org はじめまして、Retty 技術部 インフラチームの中西と申します。 今回は Pull Request毎の検証環境を自動構築した お話となります。 要約 構築の背景について 技術スタックについて 課題について 解決について 1. Pull Request 毎の判定をどう行うか 2. ECS関連のAWSリソースをどうやって作成してくか DNS について ALB について ECS について 3. CI/CDフローをどうしていくか 環境の構築 or update 時 -> CircleCI を使用 環境不要時 -> GitHub Actions を使用 構成図について 設定内容 CircleCI GitHub Actions 最後に 要約 Pull Request を
こんにちは、アプリチームの imaizume です。 趣味でワーケーションをする傍ら、Retty投稿で47都道府県制覇を目指しています! 残念ながら今年は7割程しか達成できなかったので来年こそ達成したいと思います。 (Meetyも公開中なのでよければ是非お話しましょう) meety.net さてついに始まりました「Retty Advent Calendar 2022 Part1」の初回記事です。 Part2のカレンダーもありますのでぜひそちらもチェックしてみてください! 今回はSlackの定形やりとりを便利にする公式機能 “Slack Workflow” についての記事になります。 2年以上に渡るRettyでの運用を経て得られた知見を詰め込んだ記事となっております! まだSlack Workflowを知らない・使ったことがないという方は、ぜひこれを読んで業務効率化に役立ててもらえれば幸いで
Retty インフラチームの幸田です。 6月に実施したマイクロサービス強化月間で公開した記事では、マイクロサービス環境を Terraform を利用して刷新した話を書きました。 engineer.retty.me この記事では前回と重複する箇所もありますが、Terraform の CI/CD にフォーカスした内容を書こうと思います。 CI を整備するにあたって意識したこと 「誰でも」かつ「安全に」利用できるように CI 上ですべての作業を完結させる Pull Request によるレビュー環境の整備 バージョンアップ作業の完全自動化 Terraform のディレクトリ構成について リポジトリの運用フロー Terraform によるリソースの追加、変更、削除 tfmigrate によるステートファイルの操作 CI で実行される job について Pull Request をオープンした時 P
Rettyのデータ分析チームMGR平野です。 今回はRettyにデータアナリストスキル定義の作成とFB制度を導入した話です。 データアナリストスキル定義&FB制度の作成は、今年の4月に着手スタート、メンバーと議論を重ねて8月末に完成しました。そして、9月には初の運用をスタートさせ、メンバーからの所感やフィードバックをもらったところです。 まだまだ粗削りで改善点はあるものの、このタイミングで紹介させていただき、皆さんからのフィードバックを受けてもっと良くできればと思っています。 また、このデータアナリストスキル定義は、Rettyの現状と未来に必要なスキルを定義しています。そのため、必ずしも各社の参考になるものでないと思うものの、これから作成と運用を考えている方々に少しでも参考になればと思って書きました。 さらに、今回作成するにあたって社内のエンジニアやPM、デザイナーの先行事例を参考にしてい
はじめに こんにちは。22卒アナリティクスエンジニアの井下田(@hiroki_igeta)です。 普段からデータ基盤の整備とDWH開発はもちろん、ダッシュボード作成、広告ロジック改善にも携わっています。 -- 本記事は、Rettyのデータ分析チームが約3ヶ月間取り組んできた「dbtの導入」を中心テーマとした連載 #dbtでデータの民主化 の3記事目です。 dbtの導入背景については連載記事の1つ目、dbt移行のプロジェクト進行については2つ目をそれぞれご参照いただけますと幸いです。 (Rettyではdbt導入のためにプロジェクトを立ち上げ、dbt移行を推進しました。) 連載記事1つ目:データアナリストがdbtを使って育てるデータマネジメント 連載記事2つ目:dbt移行プロジェクトを振り返ってみた 連載3記事目の本記事では、「DWHの管理を内製ツールからdbtへ移行する際に工夫した点・反省点
はじめに データアナリストとして今年中途入社した上野(@hiro_30_1000)です。 本日より、Retty分析チームの連載「#dbtでデータの民主化」を始めます! この連載では、Rettyのデータアナリストが約3ヶ月間取り組んできた「dbtの導入」を中心テーマとし、 その仕事の裏側、プロセスを公開していきます。 「#dbtでデータの民主化」の公開スケジュール 本日から3週間に渡り、週1回ペースで記事を公開予定です。 9/14(水):データアナリストがdbtを使って育てるデータマネジメント 9/22(木):dbt移行プロジェクトを振り返ってみた 9/29(木):DWHの管理を内製ツールからdbtに移行した話 本記事では、データアナリストがdbtを用いてデータマネジメントをすることで実感したメリットを中心に共有したいと思います。 また、具体的なdbt導入のプロジェクト進行プロセスは、新卒の
はじめに こんにちは アプリ開発チームの@レイです 最近約1ヶ月間、RettyのiOSアプリパフォーマンスの改善について集中的に作業しました。 本記事では、 今回の改善の必要性について どのような改善をしたのか どのような効果があったのか 上記について2章にわたってご紹介しようと思います。 画像のキャッシュを管理するマネージャーの導入背景 Rettyアプリでは数多くの投稿写真を表示しているので、写真に対してキャッシュメモリーを多く使っています。 それによってメモリーが多く消費されてしまう可能性が高いのですが、 これはパフォーマンス的に遅くなる上、メモリー不足問題につながってアプリがクラッシュする問題がありました。 よって、周期的にキャッシュを削除する機能が必要でした。 そのため、下記のようなキャッシュマネージャーを作ろうとしました。 Default キャッシュだけで管理するのではなく、1い
この記事について Rettyの2022サマーインターンのチームで書いた参加記になります。 自己紹介 私たち酸辣湯麺チームのメンバーを紹介します。 北海道大学工学部4年 茂木 貴紀(@manattan_me) 日本大学大学院1年 田中勇太(@nayuta999999) 京都大学理学部3年 松田 和樹 (@diracmax) 早稲田大学大学院1年 山倉拓也 この記事について 自己紹介 今回のインターンで作成したもの 背景 選定技術・開発形式 全体方針 各メンバーの学び アーキテクチャについて理解を深めることができた(もぎ) 個人開発ではできない経験ができた(松田) 複数人でプログラミングをしていく上で、重要なこと (山倉) Rettyのインターンに参加して分かったRetty社の特徴(田中) 総括 今回のインターンで作成したもの Rettyで実際に提供されているオリジナルリストのシェア機能を作成
2022/06/30に、おいしい健康さん、アンドパッドさん、ZOZOさん、RettyでJetpack Composeについての登壇イベントを開催しました。 Rettyからは、「Jetpack Composeのパフォーマンスの基本について」という内容で、RettyのAndroidアプリで気にしているパフォーマンスに関する部分を紹介しました。 andpad.connpass.com 登壇内容の概要 CompositionをSkipする為の、Stable, Immutableと、Layoutフェーズだけを実行するという点から、パフォーマンスの最適化について解説しています。 アーカイブ動画 youtu.be 補足 登壇翌日に、どの程度Stableについて気にするべきかという記事が出ていたため、こちらを読んでからの補足をしていこうと思います。 Jetpack Compose Stability Ex
この記事は #Rettyマイクロサービス強化月間 の第5弾の記事です。 engineer.retty.me 前回は鈴木さんの「予約 API のマイクロサービス化と gRPC ゲートウェイの置き方」でした。 インフラチームの幸田です。 自分の番はまだまだ先だと思っていたら、もう月末で焦って記事を執筆しています。 今回の記事ではマイクロサービス基盤を新しく Terraform で構築し直した話をしようと思います。 マイクロサービス化のはじまり システム構成 抱えていた問題 マイクロサービス間での設定差異や変更漏れの発生 新規サービスの追加に時間がかかる 作業に対するレビューができない 課題解決に向けて IaC ツールの選定 Terraform 化の方法について 工夫したポイント Terraform の module の構成について ECS Service module ALB module L
本記事はRettyマイクロサービス強化月間の四つ目の記事です. engineer.retty.me RettyのtoB開発チームでエンジニアをしています鈴木です. 社会人エンジニアも早いことに1年が経ってしまい, “ピチピチエンジニア” の称号と権利を失ってしまいました. 今年は “深みと勢いのエンジニア” として活動しています. ピチピチエンジニアとして投稿した以前の記事では, その時おすすめの焼き芋を紹介したので今回も最近おすすめのお店としてMEARIを載せます. retty.me 今まで実家の焼き鳥が一番美味しいと思っていた自分に衝撃を与えたお店です. 早速本題に入りますが, RettyのtoB開発チームではtoC開発チームと同様にPHPで作られた大きいモノリスからGoで書かれたマイクロサービスへの移行が進んでいます. 現在, Rettyにおけるとても重要なシステムである予約APIの
エンジニアの堤です。 #Rettyマイクロサービス強化月間第二弾として、検索サービスの構築についてお話します。 第一弾は、id:pikatenor の「マイクロサービスのデータぜんぶ抜く……gRPCで!」でした。 Rettyでは最近、検索機能を新たにマイクロサービスとして切り出し、Search Serviceが誕生しました。 その背景としては、Rettyのお店検索に使われているElasticsearchのバージョンが非常に古く(2.4)、バージョンアップ & アーキテクチャ刷新を行ったというのがあります。 今回はそのアーキテクチャ刷新のうち、Search Serviceの作成の背景・実施内容についてお話します。 Rettyのお店検索 アーキテクチャ(マイクロサービス切り出し前) マイクロサービス切り出しに関わる背景課題 検索マイクロサービスの作成 全体の作業の流れ Search Servi
どうも、エンジニアの神 id:pikatenor です。書きかけの記事を下書きに突っ込んで放置していたらマネージャーの常松に目をつけられ、#Rettyマイクロサービス強化月間 第1週目の記事に祭り上げられることになりましたが無事に遅刻しました。記事の公開をお待ちいただいていた皆様には深くお詫び申し上げます。 engineer.retty.me そういうわけで今回は自作OSSの宣伝とそいつをサービスに組み込むに至った背景のお話です。 マイクロサービスのDB分割と集約 Logstash + gRPC という選択 大雑把な説明 gRPC Server 側の実装 良かったこと おまけ: プラグインの実装についてあれこれ マイクロサービスのDB分割と集約 さて、Retty がマイクロサービスアーキテクチャへの移行に取り組んでいるという話は従前の通りですが、最近では共有DBの呪いから解き放たれるべくD
Feature Flagで 素早くマージ 安全にリリース Rettyアプリチームの @imaizume です、新しい年度が始まり新卒社員も入社してフレッシュな気分になる今日このごろですね。 今回は最近Rettyアプリチームで利用することが増えている、Feature Flagを使った開発についてのお話です。 Feature Flagを使うことで、大規模な開発であっても開発中から継続的に差分をマージできるようになり、デリバリー効率を大きく向上させることができます。 本記事では、この方法を採用するに至った背景や実際に取り入れて感じたメリット、課題感などを書きましたので、読んでみてメリットが感じられたならぜひみなさんの開発でも取り入れてみていただければと思っています。 Feature Flagとは? FFを採用する前の開発の様子 RettyでのFFによる開発の始まり アプリチームでFFを採用したこ
次のページ
このページを最初にブックマークしてみませんか?
『rettydev’s blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く