every Tech Blog

株式会社エブリーのTech Blogです。

2026-01-01から1年間の記事一覧

Laravel 13へアップデートする際の対応とAI検索機能をざっくり理解する

はじめに こんにちは、リテールハブ開発部でバックエンドエンジニアをしているホシと申します。 現在、Laravel などを利用しながら小売アプリ開発に取り組んでいます。 少し前になりますが、先日3月17日にLaravel13がリリースされました。 (https://laravel…

Goのtime. Nowとは? 〜synctestを添えて〜

Goのtime.Nowとは? 〜synctestを添えて〜 はじめに エブリーでエンジニアをやっております、赤川です。食事管理アプリ ヘルシカ の開発を通じてGoを嗜んでいます。 ダイエット・食事管理・体重管理・カロリー計算 - ヘルシカevery, Inc.ヘルスケア/フィッ…

Gemini APIのコストを削減するための選択肢

はじめに こんにちは!デリッシュキッチンで主にバックエンドの開発を担当している秋山です。 私たちのチームでは Gemini API を使った機能を運用しており、利用料金をいかに抑えるかは継続的に向き合うべきテーマになっています。 この記事では、Gemini API…

Lambda × S3 Files で構成するステートフルなデータ前処理パイプライン

エブリー開発本部の塚田です。 バックエンドやデータ基盤をメインに担当しています。 2026年4月に Amazon S3 の新機能として Amazon S3 Files が GA となり、続けて4月後半には Lambda からの利用にも対応 しました。 データエンジニア視点で見ると、「Lambd…

外部連携バッチシステムの動作確認をしやすくする

はじめに こんにちは。リテールハブ開発部の清水です。 私たちのチームでは、外部システムと深夜帯にCSVをやり取りするバッチシステムを開発・運用しています。 これらのバッチ群は適切な順番で適切な設定で実行することが求められるのですが、 新メンバーが…

Unixにおけるリダイレクト処理を改めて確認 >file 2>&1 は実際にはなにをやっているのか

開発2部の内原です。 シェルで >file、2>&1 のような記号を使ってリダイレクト処理を行うことは多いかと思いますが、なぜこのような書き方をするのか、それが実際にカーネルやプロセスのレベルで何をやっているのか、は意外と説明しづらい、というかなんとな…

Claude Code を快適に使うための macOS デスクトップ通知セットアップ 〜 alerter と Hook でクリックから VSCode 復帰まで 〜

タイトル:Claude Code を快適に使うための macOS デスクトップ通知セットアップ 〜 alerter と Hook でクリックから VSCode 復帰まで 〜 冒頭:本記事ではClaude Code Hooks と `alerter` というコマンドラインツールを組み合わせて、 - タスク完了・許可待…

Next.js 16 のキャッシュとどう付き合うか ― 実装と運用のあいだで考えたこと

Next.js 16 のキャッシュとどう付き合うか ― 実装と運用のあいだで考えたこと 目次 Next.js 16 のキャッシュとどう付き合うか ― 実装と運用のあいだで考えたこと はじめに Next.js のキャッシュを整理する ブラウザ(Router Cache) CDN・Edge(HTTP Cache)…

govulncheckで行う脆弱性対応

govulncheckで行う脆弱性対応 はじめに 開発本部でデリッシュキッチンプレミアム会員向けの開発を担当しているhondです! 先日axiosのサプライチェーン攻撃が話題になりました。axiosのリードメンテナのnpmアカウントがソーシャルエンジニアリング経由で侵害…

ヘルシカにおけるXcode Cloudの実行時間を50%削減した話

iOS

はじめに こんにちは。開発部でiOSエンジニアをしている野口です。 ヘルシカ - ダイエット・食事管理のための簡単カロリー計算every, Inc.ヘルスケア/フィットネス無料 ヘルシカのiOSアプリではXcode Cloudを使用して開発環境・本番環境への配布を行ってい…

AgentCore CLIを本番運用する上で詰まったポイントと対策

はじめに 今回はAgentCore CLIを使ったエージェント開発を本番運用できるかを検討した際に、複数環境のデプロイについて詰まったポイントがあったので、ご紹介させていただきます。 AgentCore CLIは2026年4月17日現在では、GA前段階のため、本記事で紹介する…

デリッシュキッチンのLiquid Glass対応への取り組み

はじめに 株式会社エブリーでデリッシュキッチンのiOSアプリの開発をしている成田です。 iOS 26から、Appleの新しいデザイン言語である「Liquid Glass」が導入されました。 2026年4月の現時点では設定のフラグによって適用を回避できますが、次のXcodeのメジ…

AWSのAIツール ― Claude Code拡張機能 × IAM Policy Autopilot × Agent Pluginsを試してみた

はじめに エブリーでデリッシュキッチンの開発をしている本丸です。 日頃の業務でClaude Codeを活用しているのですが、AWSからリリースされたAIツール群(IAM Policy Autopilot、Agent Plugins for AWS)がClaude Codeと連携できることを知り、社内勉強会を…

Vercel Labs の「emulate」を試してみた

はじめに こんにちは、リテールハブ開発部の杉森です。 Vercel Labs が開発しているローカル API エミュレータ「emulate」が面白そうだったので、実際に触りながら AWS SDK (S3) との互換性、GitHub / Google の OAuth フロー、本番 API への切り替えまでを…

ECR イメージスキャンでコンテナの脆弱性を検知する

目次 はじめに ECR イメージスキャンとは 構成の全体像 検知の網羅性 通知のノイズ低減 認知のスピード コスト 試算の考え方 試算例 Terraform による構築 1. ECR スキャン設定 2. EventBridge ルール 3. SNS トピック 4. AWS Chatbot(Slack 通知) 実際の…

Databricks Genieで現場で使えるAI分析基盤を育てる

はじめに こんにちは。株式会社エブリーの開発1部の村上です。 弊社ではClaudeを非エンジニアも含めた全社に展開しており、業務のあらゆる場面で生成AIの活用を推進しています。 弊社のデータ基盤は、昨年TreasureDataとDatabricksを併用していた構成からDat…

Claude CodeスキルでUnity Catalogのテーブル探索を自動化する

はじめに こんにちは。 開発本部 開発1部 デリッシュリサーチでデータエンジニアをしている吉田です。 今回は、DatabricksのUnity Catalog管理下のテーブルを、自然言語で検索できるClaude Codeスキルを構築した話を紹介します。 背景 以前の記事 では、Data…

AIを活用したPRレビューの効率化

AI の性能向上に伴い、これまで以上に負荷が大きくなっていると感じています。 本記事では、負担に対してどのようなアプローチができるのか、考えてみます。

PHPerKaigi 2026にコアスタッフとして参加しました〜!

PHP

はじめに こんにちは!トモニテで開発をしている吉田です。 2026/3/20〜2026/3/22に開催されたPHPerKaigi 2026にスタッフとして参加してきました! PHPerKaigi(ペチパーカイギ)とは以下のようなイベントです! PHPerKaigi(ペチパーカイギ)は、PHPer、つ…

Go の database/sql における MySQL セッション変数の挙動とコネクション固定

はじめに こんにちは、デリッシュキッチンのバックエンドエンジニアの鈴木です。 先日、プロダクトのGoのバージョンを 1.25.4 から 1.26.0 へアップデートしたところ、CI上の自動テストが一部落ちる(失敗する)問題に直面しました。 原因を調べてみると、テ…

デリッシュキッチンiOSアプリにおけるSwiftUI段階的移行戦略

目次 はじめに 2つの課題と、目指すアーキテクチャ 手法1 — UIKit の中に SwiftUI を埋め込む 手法2 — ViewModel の Protocol と実装の分離 手法3 — UIKit 依存の画面遷移を列挙型で集約する 手法4 — SwiftUI から UIKit の画面を呼ぶ 手法5 — 本体プロジェ…

Go 1.26で追加されたnew(expr)はなぜこの形なのか

こんにちは、開発1部の[@uho-wq](https://x.com/uho_wq)です。 本記事ではGo 1.26で追加された`new(expr)`がどのような議論の末にこの形に落ち着いたのかを説明しようと思います。 ## new(expr) Go 1.26で、組み込み関数`new`が式(expression)を受け取れるよ…

UIKit アプリに Liquid Glass の検索タブを実装する

iOS

1. はじめに:Liquid Glass で変わる「検索」の体験 WWDC25 で発表された Liquid Glass は、iOS 26 の目玉となるデザインシステムです。ナビゲーションバーやタブバーがガラスのような半透明素材になり、コンテンツがその裏側に透過して見えるようになります…

エンジニアが仕様書を書くことで、AI開発の設計・実装を速くしたい

はじめに こんにちは、開発1部で食事管理アプリ「ヘルシカ」の開発をしている新谷です。 ヘルシカ - ダイエット・食事管理のための簡単カロリー計算every, Inc.ヘルスケア/フィットネス無料apps.apple.com 社内でAIツールを使って開発を進める中で、個々の…

ClaudeのAgent SkillsでQA業務を効率化した話

目次 はじめに UserMatching(UM)とは QAの課題 Agent Skillsというアプローチ QA手順をSkillsに落とし込む 設計した5つのSkills Skill設計のポイント LPのQA: 表示条件のパターンを自動で網羅する シナリオの自動生成 Claude in Chromeによる自動確認を断…

【Android】デリッシュキッチンの Json パーサを Gson から Kotlin Serialization へ移行検討

はじめに Gson について Gson の課題 1. Null 安全が破壊されるリスク 2. デフォルト引数が無視される Kotlin Serialization について 具体的な修正内容 1. Data Class の書き換え 2. Retrofit の Converter の置き換え まとめと今後の課題 はじめに こんに…

Databricks Unity Catalog への移行と MCP 活用

はじめに こんにちは。開発本部 開発1部 デリッシュリサーチチームの江﨑です。 本記事では、これまでHive Metastore上のDeltaテーブルで管理していたデリッシュリサーチ用データ(約40テーブル)をUnity Catalogへ移行したプロジェクトの全体像を、インフラ…

Go Wasm の js.Value.Call はなぜ遅い? wasm_exec.js の内部実装から理解する

こんにちは @kyo です! 2026年2月21日に開催された Go Conference mini in Sendai 2026 にて、「GoとWasmでつくる軽量ブラウザUI」というタイトルで登壇させていただきました。この記事では、発表中にいただいたフィードバックについて深掘りをして得…

エンジニアのマネージャーになって1年半。意思決定の失敗から学んだこと

はじめに こんにちは。リテールハブ開発部小売アプリチームの池です。 エンジニアチームのマネージャーになってから、気づけば1年半が経ちました。 この1年半を振り返ると、悩みながら行動を続けてきた時間でした。マネージャーとしてどう行動すべきか日々悩…

Datadog Learning Centerをやってみた

はじめに こんにちは。リテールハブ開発部の清水です。 先日SRE Kaigi 2026に参加してきまして、私の中でSRE熱がかなり高まっています。 私たちはDatadogをオブザーバビリティ基盤として使用しているのですが、私自身はDatadogをまともに触った経験がありま…