クエリチューニングの最初の一歩~実行計画を見てみよう~

はじめに

こんにちは。開発部の國友です。

普段はデータベース管理者の業務を担当しています。

アプリケーションのパフォーマンス改善に取り組む際、「クエリが遅い」と感じたらまず行うべきことがあります。それは、RDBMSがそのクエリをどう実行しているか、その実行計画を確認することです。

皆さんは実行計画の確認方法、そして読み方を理解されていますか?

よく見るテーマではありますが、基礎だからこそ具体的な事例を通じて改めて実行計画を再確認しましょう。

続きを読む

GitHub CopilotとSpec Kitを使ってSDDの世界を覗き見する

はじめに

こんにちは!ぐるなびでバックエンドエンジニアをしている開発部の寺井です。

十数年PHPを主戦場にしてきましたが、最近Go言語を使ってぐるなびアグリサービスの開発に携わっています。

クリーンアーキテクチャも初めて理解しようとしており……難しい。

この記事では、GitHubが提唱する 「Spec-Driven Development(仕様駆動開発 / SDD)」 と、その実践ツール 「GitHub Spec Kit(speckit)」 を紹介します。仕様と設計原則を明文化し、それを中心に開発を進めることで、AIとの協働でも一貫したアーキテクチャを維持できるようになります。

続きを読む

ActiveDirectoryの功罪とクラウドネイティブな認証戦略

こんにちは。ぐるなびの田代です。

今回は、長年にわたり当社のITインフラの心臓部として機能してきたActive Directory (AD) の役割の変遷と、クラウド時代における当社の新たな認証戦略についてお話ししたいと思います。

続きを読む

「cdk diffが長すぎる」問題をGitHub Modelsで攻略する!変更内容を自動要約するCI/CD構築

こんにちは。ぐるなびでバックエンド開発を担当している小林です。

この記事では、AWS CDKの変更差分(cdk diff)をGitHub Modelsを用いて自動的に要約し、プルリクエストにコメントとして通知するCI/CDパイプラインの構築方法を解説します。

続きを読む

Gemini 3 Canvas × HTMLテンプレート活用術:GASを書かずに実用レベルのスライドを出力する

はじめに

こんにちは、ぐるなびの江口です。

ついに登場したGemini 3、皆さんはもう試されましたか?

Google独自のTPUを活用した処理速度もさることながら、新機能のCanvasが非常に強力です。

今回は、このGemini 3とCanvasを使って、「社内テンプレートのデザインに限りなく近づけ、実用十分な"90点"を目指してスライド資料を完全自動生成する」という試みについて共有します。

これまでGoogle Apps Script (GAS) を書いて行っていた転記作業が、プロンプト一つで不要になった、というお話です。

この記事でわかること

  • Gemini 3のGem + Canvasによるスライド作成の進化。
  • 従来の「GAS転記」プロセスからの脱却。
  • デザイン崩れを防ぐ「画像分析HTML化」と「英語プロンプト」のテクニック。
続きを読む

Snowflake移行はゴールじゃない!老舗企業が直面した「リフト止まり」の現実と、そこから描く筋肉質な未来地図

はじめに

こんにちは、ぐるなびでデータエンジニアをしている大塚です。

私は現在、ぐるなびが長年蓄積してきた膨大なデータを、全社で安全かつ快適に活用するための「データ基盤」の構築・運用を担当しています。

創業から長い歴史を持つ弊社には、言わば「秘伝のタレ」のように継ぎ足されてきたデータやシステムが多く存在します。そんな老舗企業ならではのデータの悩みに向き合い、モダンな環境へと刷新していくのが私のミッションです。

今回は、近年で取り組んだデータ基盤の刷新プロジェクトの裏側と、そこで見えてきた「正直、まだここが足りていない!」というリアルな課題、そしてこれからの展望について赤裸々にお話しします。

続きを読む

DevTools で分かる Flutter アプリの動きと最適化の考え方

こんにちは!ぐるなびアプリの開発をしている戸川です。モバイルアプリの「なんとなく重い」「ときどきカクつく」といった問題を、Flutter DevTools を使って可視化して、どのように原因を切り分けていくのかを解説していきます。

続きを読む