ZOZO TECH BLOG
https://techblog.zozo.com/
ZOZO TECH BLOG
フィード

新規事業部アプリチームが実践する、ボトムアップで改善が回る文化づくりとAI活用
8
ZOZO TECH BLOG
はじめに こんにちは、新規事業部フロントエンドブロックの池田です。普段はZOZOマッチのアプリ開発を担当しています。ZOZOマッチは、ファッションの好みからZOZO独自のAIが「好みの雰囲気」の相手を紹介するマッチングアプリです。開発にはFlutterを採用しています。 フロントエンドブロックは2024年に発足したチームです。発足間もないチームゆえに、開発を進める中でさまざまな課題に直面しました。本記事では、私たちが「課題をチーム全体で認識し、解決していける文化」を築くために取り組んできたことを紹介します。発足間もないチームでチームビルディングに悩んでいる方や、メンバー間の連携・知見共有に課題…
7時間前

ミッションクリティカルな購入フローを段階的にリプレイスする設計と実践
2
ZOZO TECH BLOG
はじめに こんにちは、カート決済部カート決済基盤ブロックの林です。普段はZOZOTOWN内のカート機能や決済機能の開発、保守運用、リプレイスを担当しています。 ZOZOTOWNの購入フローは、セッションに強く依存したロジックが長年の改修により肥大化し、機能改善や保守の際の調査・改修コストが増大していました。この課題を解決するため、私たちのチームは2024年5月から約2年にわたる段階的なリプレイスプロジェクトを進めています。 ミッションクリティカルな購入フローを無停止で移行するため、私たちは3つのフェーズに分けた段階的なアプローチを採用しました。本記事では、その実践的な進め方と、実際に直面した課…
3日前

Goで実装するDBレコード差分検出による副作用テスト
3
ZOZO TECH BLOG
はじめに こんにちは、ECプラットフォーム部の権守です。普段はZOZOTOWNの会員基盤やID基盤の開発に携わっています。 本記事では、会員基盤で導入したデータベースへの書き込みを伴う処理のテスト手法について紹介します。この手法では実行前後のデータベースの差分に注目することで特定のレコードだけでなく、データベース全体への副作用を網羅的に検知することを目的とします。 目次 はじめに 目次 従来手法の課題 差分検証によるアプローチ Goによる差分検出ツールの実装 利用イメージ 差分抽出の実装 複数データベースへの対応 導入時の工夫点 非固定値の取り扱い 期待値の正規化 差分の除外 まとめ 従来手法…
4日前

Class Data Sharingを活用したSpring Bootアプリケーションの起動時間短縮
4
ZOZO TECH BLOG
はじめに こんにちは。商品基盤部の藤本です。 私たちのチームでは、Spring Bootで実装したJavaアプリケーションの起動時間の短縮に取り組んでいます。今回の記事では、Class Data Sharing(以下、CDS)を本番で稼働しているアプリケーションに実際に適用した内容を紹介します。 導入時には、Datadog Java Agentとの両立という課題にも直面しました。そのため、トレースとメトリクスの送信をOpenTelemetryとMicrometerに置き換える対応もあわせて実施しました。 本記事では、CDSの概要、導入効果、導入手順、Datadogの問題とOpenTelemet…
5日前

スクラッチ開発で挑んだZOZOマッチのアプリ内課金同期
13
ZOZO TECH BLOG
はじめに こんにちは、新規事業部バックエンドブロックの三浦です。2025年6月にリリースされたマッチングアプリ「ZOZOマッチ」のバックエンド開発を担当しています。 ZOZOマッチでは、App StoreやGoogle Playの決済システムを利用したアプリ内課金を提供しており、定期購読(サブスクリプション)することで一部機能の制限解除や機能拡張が可能になります。アプリ内課金の実装には、アプリからの購入処理と購読のキャンセル・返金・自動更新といったライフサイクルイベントの同期処理が必要です。ZOZOマッチではこれらの処理をスクラッチで開発しました。 本記事では、特に開発が難航した、ライフサイク…
6日前

Claude × Devinで実現するAI駆動開発ワークフロー
ZOZO TECH BLOG
目次 目次 はじめに この記事の対象読者 背景・課題 背景 課題 AI駆動開発ワークフローの概要 AIサービスごとの役割 Devin Playbook ユーザー起動のPlaybook(Slack → Devin) !ai_task(単一タスク実装) !ai_tasks(タスク分割&並列実装) !human_review(人間承認フロー) 人間レビューが必要なケース ワークフロー自動呼び出しのPlaybook !fix_ci_failure(CI失敗時の自動修正) !fix_review_comments(レビュー指摘の自動修正) !context_curation(AIコンテキストの週次更新)…
11日前

生成AIで社内ログ分析SQLを自動生成する仕組み ── Skillsによるナレッジ管理とマルチエージェント設計の実践
ZOZO TECH BLOG
はじめに こんにちは、検索基盤部の朝原です。ZOZOTOWNの検索改善を担当しています。 日々の分析業務では、ユーザーの行動ログを集計するSQLクエリを頻繁に作成します。クエリ作成には定型的なパターンも多く、作業時間を短縮する手段として生成AIの活用を検討しました。しかし、社内固有のログ構造や前提条件が多く、生成AIを利用しても期待どおりにクエリを作成できないという課題がありました。 本記事では、Claude CodeのSkills機能やサブエージェント機能を活用してこの課題を解決した方法を紹介します。
12日前

【イベントレポート】「ZOZO.swift #2」を開催しました!
ZOZO TECH BLOG
はじめに こんにちは、Developer Engagementブロックの@wirohaです。2月10日に「ZOZO.swift #2」をオンラインで開催しました。ZOZOのiOSエンジニアによるiOS特化のイベントです。昨年12月に第1回を開催しており、今回第2回目を開催できました。 イベントはオンライン開催でしたが、可能なメンバーはオフィスに集まって配信しました。その当日の雰囲気も含めてレポートします!
13日前

Claude Code Agent Skillsを活用したTECH BLOGレビュー ── AIで推進するレビュー自動化
ZOZO TECH BLOG
はじめに こんにちは。Developer Engagementブロック(略称DevEngブロック)の@wirohaです。ZOZO TECH BLOGの運営や、開発者向けイベントの企画・運営などを担当しています。 TECH BLOGの運営において、レビューには一定の工数がかかるため、効率化を進めています。その一環として、Claude CodeのAgent Skills(以下、スキル)を用いたレビュー支援の仕組みを整備しました。Claude Code上で記事のレビューを依頼すると、定義したルールに基づくレビュー結果を得られます。 以下は、スキルによるレビュー結果の抜粋です。 本記事では、このスキル…
13日前

ZOZOTOWN AndroidにおけるCompose Previewを使ったVRTのCI運用と効率化
ZOZO TECH BLOG
はじめに こんにちは、ZOZOTOWN開発2部Androidブロックの大江です。普段はZOZOTOWN Androidの開発を担当しています。 UIのリグレッション防止を目的として、2024年からVisual Regression Testing(VRT)の導入に取り組んできました。その第1弾として共通UIコンポーネントのモジュールに対してJetpack ComposeのPreviewを使ったVRTを運用しています。 本記事では、VRT導入について、VRTをCI/CDツール上で実行するための工夫を中心に紹介します。
14日前

OpenCTIをSplunkに食わせてみた
ZOZO TECH BLOG
はじめに こんにちは、情報セキュリティ部の兵藤です。日々ZOZOの安全を守るためSOC業務に取り組んでいます。 本記事ではサイバー脅威インテリジェンスプラットフォーム「OpenCTI」からSplunkへの脅威インテリジェンスの取り込みについて紹介します。また、この内容については以下の「OpenCTIをSentinelに食わせてみた」に関連した内容となっています。 techblog.zozo.com 目次 はじめに 目次 背景と概要 構築 Splunkへのログ移行 Splunk Add-on EventhubとMDEの設定 SplunkでのOpenCTI連携設定 OpenCTI Add-on f…
17日前

Monthly Tech Report 2026年1月
ZOZO TECH BLOG
ZOZO開発組織の2026年1月分の活動を振り返り、ZOZO TECH BLOGで公開した記事や登壇・掲載情報などをまとめたMonthly Tech Reportをお届けします。 ZOZO TECH BLOG 2026年1月は、前月のMonthly Tech Reportを含む計14本の記事を公開しました。特に次の2記事は反響も大きく、とても多くの方に読まれています。ぜひご一読ください。 techblog.zozo.com techblog.zozo.com 登壇 LODGE XR Talk Vol.35 1月22日に開催された「LODGE XR Talk Vol.35」に、技術戦略部の諸星(…
20日前

満足度100%を達成したプロンプトエンジニアリング社内ハンズオンの内容を公開
ZOZO TECH BLOG
はじめに 検索基盤部 検索基盤ブロックの佐藤(@satto_sann)です。普段はZOZOTOWNの検索システムの開発や、社内エンジニア向けAI活用推進に取り組んでいます。 AI活用推進の一環として、エンジニアを対象としたプロンプトエンジニアリングのハンズオンを実施しました。本記事では、そのハンズオンの内容や、実施を通じて得られた学びについて紹介します。 具体的には、以下の内容をまとめています。 代表的な8つのプロンプトエンジニアリング手法と、実務で使える具体的なプロンプト例(良い例・悪い例) ハンズオン実施後に実施した参加者アンケートの結果 企画・運営を通じて見えてきた学びや改善ポイント 社…
20日前

AI支援でEpoxyを撤去しCompose化:置き換えの背景と効果
ZOZO TECH BLOG
はじめに こんにちは、ブランドソリューション開発本部WEAR開発部Androidブロックの武永です。普段はファッションコーディネートアプリ「WEAR」のAndroidアプリを開発しています。 背景 本記事では、Epoxy(Airbnb製のRecyclerView向けUI構築ライブラリ)を撤去し、Jetpack Compose(Compose)へ移行した背景を整理します。 移行の直接のきっかけは、当時の構成でKotlin Annotation Processing Tool(kapt)依存が残っていたことです。kapt依存が残っていたため、Kotlin Symbol Processing(KSP…
25日前

Triton Inference Serverによる推論基盤の構築と本番導入
ZOZO TECH BLOG
はじめに こんにちは、データシステム部MLOpsブロックの木村です。MLOpsブロックではZOZOTOWN、WEAR by ZOZOをはじめとして、弊社で提供するさまざまなサービスに関わるML機能を開発・運用しています。 本記事で紹介するZOZOマッチ(以下、本アプリ)は「ファッションで恋する」をコンセプトとしたマッチングアプリです。本アプリもML機能を持ち、MLOpsブロックが機能を開発・運用しています。 本アプリの特徴的なML機能としてファッションジャンル診断(以下、ジャンル診断)があります。ジャンル診断とは全身画像をストリートやモードなどZOZOが定義した12種類のファッションジャンルに…
1ヶ月前

マルチモーダルLLMを活用したZOZOTOWN検索の関連性評価手法
ZOZO TECH BLOG
こんにちは。検索基盤部の橘です。検索基盤部では、ZOZOTOWN検索の品質向上を目指し、検索結果の改善に取り組んでいます。 ZOZOTOWN検索の並び順の精度改善の取り組みについては以下の記事をご参照ください。 techblog.zozo.com 検索基盤部では新しい改善や機能を導入する前にA/Bテストを行い効果を評価しています。A/Bテストの事前評価として、オフラインの定量評価と定性評価を実施しています。これらの評価によりA/Bテストの実施判断をしています。 過去のフィルタリング処理の効果検証として導入したオフライン定量評価の方法については以下の記事をご参照ください。 techblog.zo…
1ヶ月前

Claude Code Plugins × Atlassian MCPで実現する開発ガイドライン準拠チェックの仕組み化と全社展開
ZOZO TECH BLOG
はじめに こんにちは、ZOZOMO部FBZブロックの杉田です。普段はFulfillment by ZOZOが提供するAPIシステムを開発・運用しています。昨年からは、社内における開発者向けAI支援ツール(Claude、Devin、MCPなど)の導入・教育・推進・管理を担う専門チームでも兼務で活動しています。 本記事では、開発ガイドライン準拠チェックをClaude Code Plugins × Atlassian MCPで全社展開した取り組みを紹介します。手作業の確認コストを下げつつ、最新ガイドラインに基づいたレビューを日常的に回せるようにした経緯と、実装・運用のポイントをまとめます。
1ヶ月前

Agent Skills導入で既存コード調査のリードタイムを2〜5日から数時間へ短縮
ZOZO TECH BLOG
はじめに こんにちは、ZOZOTOWN開発本部リプレイスバックエンドブロックのばやです。普段はZOZOTOWN BFFのリプレイス開発を担当しています。 システムリプレイスのプロジェクトでは、実装に入る前段階として既存コードの調査が必ず発生します。特にレガシーシステムの場合、ドキュメントが整備されていなかったり、仕様が暗黙知として埋もれていたりすることが多く、コードを読み解くことでしか仕様を把握できないケースも少なくありません。 一方で、この調査フェーズは成果物の形式や進め方が属人化しやすく、プロジェクト全体の生産性に大きな影響を与えるポイントでもあります。調査に時間がかかればプロジェクト全体…
1ヶ月前

AI Engineering Summit Tokyo 2025 協賛&参加レポート
ZOZO TECH BLOG
こんにちは、技術戦略部のikkouです。2025年12月16日に「AI Engineering Summit Tokyo 2025」が開催されました。ZOZOはGoldスポンサーとして協賛し、スポンサーブースを出展しました。 AI Engineering Summit Tokyo 2025 会場エントランスのスポンサーパネル technote.zozo.com 本記事ではZOZOから登壇したセッションの紹介と、ZOZOの協賛ブースの様子をまとめてお伝えします! セッションレポート ファッション×AI:「似合う」を届けるためのWEARのAI戦略 登壇中のブランドソリューション開発本部 本部長の増…
1ヶ月前

新卒が配属1か月目でClaude Codeと挑んだ、ZOZOTOWNデバッグ画面へのアーキテクチャ導入
ZOZO TECH BLOG
はじめに こんにちは、2025年にiOSエンジニアとして新卒入社したZOZOTOWN開発1部iOSブロックのだーはまです。普段はZOZOTOWNのiOSアプリを開発しています。本記事では、新卒1年目の私がZOZOTOWNの画面へMVVM+UseCaseアーキテクチャを導入した過程と、工夫を紹介していきます。 目次 はじめに 目次 背景と目的 チーム配属から1か月でMVVM+UseCaseアーキテクチャ導入を担当した経緯 デバッグ画面について 課題 コードやドメインに対する知識不足 700行以上に及ぶFatViewController 課題を解決するための取り組み Claude CodeのSub…
1ヶ月前

GitHub Projectsを活用した工数可視化と改善サイクルの構築
ZOZO TECH BLOG
はじめに こんにちは、データシステム部MA推薦ブロックの佐藤(@rayuron)です。私たちは、主にZOZOTOWNのメール配信のパーソナライズなど、マーケティングオートメーションに関するレコメンドシステムを開発・運用しています。本記事では、GitHub Projects、BigQuery、Looker Studioを組み合わせて作業工数を可視化し、改善サイクルを回すための仕組みを構築した取り組みについてご紹介します。 はじめに 背景と課題 1. ボトルネックの特定に手間がかかり改善に着手しにくい 2. 工数に対する事業価値を把握できていない 3. AI活用の効果測定とナレッジの蓄積ができてい…
1ヶ月前

CES 2026 現地レポート ── XR Tech、Fashion Tech、そしてBeauty Techの現在地
ZOZO TECH BLOG
こんにちは、XR × Fashion TechやXR × Beauty Tech領域の取り組みを推進している創造開発ブロックの@ikkouです。 2026年1月6日から9日の4日間にかけてラスベガスで開催された「CES 2026」に一般参加者として現地参加しました。個人としては7回目、ZOZO所属としては5回目の参加です。継続参加し、業界動向を定点観測しています。 CES 2025 現地レポート: XRとFashion Techの未来を探る CES 2024 参加レポート - コロナ禍以前の活況を取り戻した CES CES 2023 参加レポート - 3年ぶりの現地参加 CES 2020参加レ…
1ヶ月前

ZOZOTOWN検索おすすめ順で、1年分の改善効果をどう評価してきたか
ZOZO TECH BLOG
はじめに こんにちは、検索基盤部検索研究ブロックの小倉です。普段はZOZOTOWNの検索精度改善を担当しています。検索研究ブロックでは2020年から検索結果の「あなたにおすすめ順」(以降「おすすめ順」と呼びます)とその改善に取り組んできました。その過程で「これまで積み重ねてきた改善は、トータルでどの程度効果があったのか?」を確かめるために、ネガティブテスト(最新のロジックと古いロジックを比較するA/Bテスト)を導入・運用してきました。しかし実際に運用を重ねる中で、ユーザー体験の悪化やロジック改善の機会損失といった問題も見えてきました。本記事では、ZOZOTOWN検索おすすめ順におけるネガティブ…
1ヶ月前

JSNation & React Summit US 2025参加レポート
ZOZO TECH BLOG
はじめに こんにちは、グローバルシステム部フロントエンドブロックの平田です。 私が所属するチームでは ZOZOMETRYというtoBサービスを開発しています。スマートフォンを用いて身体計測し、計測結果を3Dモデルやデータとして可視化します。計測結果はWeb上で管理できます。 このサービスのフロントエンドではReact(Next.js)を採用しています。さらにそれらの知見を深めるために、NYで開催されたJSNation、React Summit US 2025に参加してきました。 この記事では現地参加ならではの経験や、参加したセッションへの考察などを紹介していきます!
1ヶ月前

Istioで実現するマイクロサービスの共通認可基盤
ZOZO TECH BLOG
はじめに こんにちは。SRE部会員ID基盤SREブロックの田中です。 ZOZOではマイクロサービスの増加に伴い、昨今高度化するサイバー攻撃に対応しつつ、各システム間のセキュリティとその統一性を維持するための仕組みが求められていました。なかでも、認可基盤の統一は長年にわたる重要な課題のひとつでした。 そこで今回、Istioを活用することで認可機能をアプリケーションから切り離し、ZOZOTOWN共通の認可基盤を実装する方針を採用することにしました。 本記事では、IstioのAuthorizationPolicy機能を利用した認可制御の実装方法について紹介します。 目次 はじめに 目次 Istioと…
1ヶ月前

ZOZOマッチのリアルタイムメッセージング基盤 〜AWS AppSyncとGraphQL Subscriptionの活用〜
ZOZO TECH BLOG
こんにちは、ZOZOの市橋です。2025年6月にリリースされたマッチングアプリであるZOZOマッチのバックエンド開発を担当しています。本記事では、ZOZOマッチのリアルタイムメッセージング機能を実現するために、AWS AppSyncとGraphQL Subscriptionを活用したアーキテクチャと実装について紹介します。 なお、本記事ではバックエンドのアーキテクチャにフォーカスして解説しますが、ネイティブアプリ側の実装については別記事「ZOZOマッチアプリのメッセージ機能を支えるFlutter × GraphQLの実装」で紹介しています。こちらもご確認いただくことでより理解を深められます。 …
1ヶ月前

Monthly Tech Report 2025年12月
ZOZO TECH BLOG
ZOZO開発組織の2025年12月分の活動を振り返り、ZOZO TECH BLOGで公開した記事や登壇・掲載情報などをまとめたMonthly Tech Reportをお届けします。 ZOZO TECH BLOG 2025年12月は、前月のMonthly Tech Reportを含む計22本の記事を公開しました。特に次の2記事はとても多くの方に読まれています。ぜひご一読ください。 techblog.zozo.com techblog.zozo.com 協賛 2025年12月は「AI Engineering Summit Tokyo 2025」に協賛しました。 technote.zozo.com …
2ヶ月前

WEARのスクラム導入 ── PMOが推進した体制と運用
ZOZO TECH BLOG
はじめに こんにちは、ブランドソリューション開発本部プロジェクト推進部PMOブロックの三谷です。普段はPMOとして、ファッションコーディネートアプリ WEARの開発組織が企画を実現する上で発生する様々な課題の解決サポートを行っています。 WEARは2014年のローンチ以来アップデートを繰り返し、様々な機能をリリースしてきました。その中で、1つ1つの案件が大きくなってしまうことがしばしばあり、リリースまでのリードタイムや価値検証のサイクルが長くなりすぎてしまうことがありました。この課題を解決すべく、2024年5月より私たちPMOブロックは開発責任者@tsuwatchのもと、スクラム開発の導入を推…
2ヶ月前

スパイラル開発で大規模リプレイスを成功に導く──ZOZOTOWN検索リプレイスの舞台裏
ZOZO TECH BLOG
1. はじめに 検索基盤部 検索基盤ブロックの佐藤(@satto_sann)、岡田(@ryokada33)、SRE部 検索基盤SREブロックの富田(@kei_gnu622)です。 ZOZOTOWNアプリ用に検索機能を提供していたオンプレサーバー上のレガシーなAPIを、約1年かけてクラウド環境へ全面リプレイスしました。 このリプレイスプロジェクトではスパイラル開発の導入や開発初期からの環境整備といった工夫を積み重ねることで、当初のスケジュールどおり移行を完了しています。 また、副次的な効果として、検索速度が約2倍に向上しユーザー体験の改善にもつながりました。 本記事では、大規模リプレイスを円滑に…
2ヶ月前

Open Source Summit Japan 2025 参加レポート
ZOZO TECH BLOG
はじめに こんにちは、SRE部 検索基盤SREブロックの花房です。2025年12月8日〜10日の3日間、東京の虎ノ門ヒルズで開催された「Open Source Summit Japan 2025」に参加しました。 オープンソースの技術とコミュニティをテーマとする本カンファレンスでは、AI・Cloud Native・Observability・Automotive Linuxといったトレンド技術や、コミュニティ運営に関連するリーダーシップ・組織論など、多岐にわたる領域の発表がありました。また、カンファレンスの中ではLinuxとGitの生みの親であるLinus Torvalds氏のインタビュー形式…
2ヶ月前