Lambda から Vertex AI を呼ぶときにサービスアカウント鍵 (SSM Parameter Store) をやめて Workload Identity Federation にする方法

こんにちは、株式会社Spacelyでバックエンドエンジニアをしている toshichanapp です。開発本部で横断的にインフラ・基盤領域を担当しています。 前回の記事では、ECS / Rails から Maps Platform を呼ぶときに API key をやめてサービスアカウント + Worklo…

Sidekiq から Lambda へ:360°キューブマップ生成を約4倍高速化した話

こんにちは、Tony Duongです。株式会社SpacelyでRailsバックエンドエンジニアとして働いており、Spacelyプラットフォームの開発・保守を担当しています。 本記事では、spacely_web Railsアプリケーションの中でも特に呼び出し回数が多く、CPU負荷の高いジョ…

Maps Platform を AWS から呼ぶときに API key をやめて Workload Identity Federation にした話

こんにちは、株式会社Spacelyでバックエンドエンジニアをしている toshichanapp です。普段はインフラ・基盤領域も担当しています。 TL;DR 結論として、サーバーから GCP の API を叩くなら API key への依存は極力減らすべきです。サーバーサイドでは API k…

DuckDB で S3 使用量と RDS の業務データを直接 JOIN する ― 1.5億オブジェクトの集計を 9分で

はじめに こんにちは、株式会社Spacelyでバックエンドエンジニアをしているtoshichanappです。 本記事では、約1.5億オブジェクトに及ぶ S3 の顧客別使用量レポートを、「CSV を RDS に入れて Rails で集計する」構成(約1週間)から「DuckDB で S3 Parquet …

Rails アプリで遭遇したロストアップデート:原因・修正・RSpecでの検証

こんにちは、Tony Duongです。株式会社SpacelyでRailsバックエンドエンジニアとして働いており、Spacelyプラットフォームの開発・保守を担当しています。 本記事では、当社の spacely_web Railsアプリケーションで遭遇した ロストアップデート(lost update…

自社メールがOutlookに届かない — SPF/DKIM/DMARC起因のメール不達問題を解決した話

はじめに こんにちは、株式会社Spacelyでバックエンドエンジニアをしているtoshichanappです。普段はRailsアプリケーションの運用・保守を担当しています。 近年、メール認証の要件は急速に厳格化しています。 2024年2月:Google/Yahooが大量送信者(1日5,00…

「後回し」を片付ける技術 — Claude Codeで2ヶ月で119PRをマージした話

はじめに こんにちは、株式会社Spacelyでバックエンドエンジニアをしているtoshichanappです。普段はRailsアプリケーションの運用・保守を担当しています。 Spacelyでは「Claude Code」を本格的に開発フローに導入しています。 今年の2ヶ月間でマージされたt…