株式会社ZOZO の技術ブログ

DynamoDBによるOutboxパターンとCDCを用いたCQRSアーキテクチャの実装〜ZOZOMOでの取り組み

こんにちは。ブランドソリューション開発部プロダクト開発ブロックの岡元です。普段は Fulfillment by ZOZO とZOZOMOのブランド実店舗の在庫確認・在庫取り置きサービスの開発、保守をしています。 本記事では、ブランド実店舗の在庫確認・在庫取り置きサービスで実装したCQRSアーキテクチャについて紹介させていただきます。 CQRSの実装においては、データベース(以下、D

Cloud Composer 2上でApache Airflow 2のワークフローを実装する

はじめに こんにちはZOZOデータサイエンス部MLOpsブロック松岡です。 本記事では先日リリースされたGCP( Google Cloud Platform ) Cloud Composer の最新バージョンCloud Composer 2について紹介します。 ZOZOTOWNでは、多種多様な商品が毎日新たに出品されています。現在MLOpsブロックでは、機械学習で商品情報の登録を補佐するシステムを開発しています。 このシステムでは商品情報を

ZOZOTOWN検索マイクロサービスにおけるキャッシュの導入とその効果

はじめに こんにちは。検索基盤部 検索基盤チームの佐藤( @satto_sann )です。検索基盤チームでは、 ZOZOTOWNの検索周りのシステム開発に日々取り組んでいます。 本記事では、ZOZOTOWNの検索マイクロサービスにおけるキャッシュ導入で得られた知見や工夫点について紹介します。検索に限らずマイクロサービスへキャッシュの導入を検討されている方の参考になれば幸いで

Storybook × MSW × Chromaticを使ったUIの影響範囲を自動検知するための取り組み

こんにちは、FAANS部の田中です。普段は、WebのフロントエンドエンジニアとしてFAANSの開発を行なっています。 FAANSの由来は「Fashion Advisors are Neighbors」で、「ショップスタッフの効率的な販売をサポートするショップスタッフ専用ツール」です。現在正式リリースに向けて、 WEAR と連携したコーディネート投稿機能やその成果を確認できる機能など開発中です。プラットフ

JAXによるスケーラブルな機械学習

はじめに こんにちは、 ZOZO NEXT ZOZO Research のSai Htaung Khamです。ZOZO NEXTは、ファッション領域におけるユーザーの課題を想像しテクノロジーの力で解決すること、より多くの人がファッションを楽しめる世界の創造を目指す企業です。 ZOZO NEXTでは多くのアルゴリズムを研究開発しており、その中で JAX というライブラリを使用しています。JAXは高性能な機械学習のために設計

Gatlingによる分散負荷試験を自動化するKubernetesオペレーターGatling Operatorの紹介

こんにちは。SRE部の川崎( @yokawasa )、巣立( @tmrekk_ )です。私たちは、ZOZOTOWNのサイト信頼性を高めるべく日々さまざまな施策に取り組んでおり、その中の1つに負荷試験やその効率化・自動化があります。本記事では、私たちが負荷試験で抱えていた課題解決のために開発、公開したOSSツール、Gatling Operatorを紹介します。 github.com はじめに ZOZOTOWNは非常にピーク性のあ

Elasticsearch LTRプラグインと特徴量キャッシュ機能の基本

はじめに こんにちは、検索基盤部 検索研究ブロックの真鍋です。ヤフー株式会社から一部出向していて、主にZOZOTOWNの検索機能へのランキングモデルの導入に従事しています。 本記事では、Elasticsearch上でランキングモデルを扱うための有名なプラグインの仕組みと、同プラグインにZOZOが実装した機能を紹介します。 まず、本記事の背景を説明します。ZOZOTOWNでキーワー

Vertex Feature Storeの機械学習システムへの導入

こんにちは、データシステム部推薦基盤ブロックの寺崎( @f6wbl6 )です。現在、推薦基盤ブロックではデータサイエンス部MLOpsブロックのメンバーと協力しながらMLOps基盤の構築を進めています。本記事ではMLOps基盤構築の一環として進めている Vertex Feature Store の機械学習システムへの導入に関する知見およびVertex Feature Storeを導入する上での制限や課題をご紹介します。 M

【ZOZOTOWNマイクロサービス化】API Gatewayのスロットリング機能開発におけるノウハウ大公開

はじめに こんにちは。ECプラットフォーム部のAPI基盤ブロックに所属している籏野 @gold_kou と申します。普段は、GoでAPI GatewayやID基盤(認証マイクロサービス)のバックエンド開発をしています。 ZOZOでは、API Gatewayを内製しています。これまでも以下の記事を公開し、ご好評いただいております。ありがとうございます。 【ZOZOTOWNマイクロサービス化】API Gatewayを自社開発

Intuneの先進認証によるMac自動キッティング

デバイス管理に従事する全国の情シスの皆様、日々の業務お疲れ様です。コーポレートエンジニアリング部ファシリティブロックの佐藤です。いわゆる”情シス”と呼ばれる役割のチームに所属し、PCやネットワーク機器などの社内インフラの管理・運用に携わっています。 本記事では、MDM(Microsoft Intune)と自動デバイス登録(ADE)を併用したMacの自動キッティングの事

【オンラインMeetup イベントレポート】ZOZO Tech Talk #4 - Webフロントエンド

こんにちは、ZOZO CTOブロックの @ikkou です。 ZOZOでは、2/25に ZOZO Tech Talk #4 - Webフロントエンド を開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シリーズです。ZOZO Tech Talkでは、ZOZOがこれまで取り組んできた事例を紹介していきます。 そして、第4回はWebフロントエンド開発の中でも

WEARにおける画像配信のリプレイス戦略とAkamai Image & Video Managerの導入

こんにちは、WEAR部の繁谷です。SREとして WEAR の運用・保守・開発をしています。 WEARでは、 以前の記事 で説明した通り、画像配信のリプレイスを行ってきました。本記事ではSRE観点で画像配信のリプレイスや Akamai Image & Video Manager (以下、Image Manager)を利用した画像リサイズの導入の事例を説明します。 techblog.zozo.com WEARにおける画像配信の課題 前述の記事でも紹介

【オンラインMeetup イベントレポート】ZOZO Tech Talk #3 - Webフロントエンド

こんにちは、ZOZO CTOブロックの池田( @ikenyal )です。 ZOZOでは、2/21に ZOZO Tech Talk #3 - Webフロントエンド を開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シリーズです。ZOZO Tech Talkでは、ZOZOがこれまで取り組んできた事例を紹介していきます。 そして、第3回はWebフロントエンド開発

【オンラインMeetup イベントレポート】ZOZO.go Meetup

こんにちは、ZOZO CTOブロックの池田( @ikenyal )です。 ZOZOでは、2/17に ZOZO.go Meetup を開催しました。 zozotech-inc.connpass.com 本イベントでは、ZOZOの開発において「Go言語」にフォーカスした技術選定や設計手法、設計時の考え方などを具体的な事例を交えながら紹介します。 登壇内容 まとめ 弊社の社員3名が登壇しました。 FAANSを支えるアーキテクチャ (メディア開発本部 / 脇

BigQueryにおけるポリシータグを用いた秘密情報管理とデータ連携の仕組み

こんにちは、データ基盤の開発・運用をしている谷口( case-k )です。 本記事では、BigQueryで秘密情報を守るためのリソースである、ポリシータグをご紹介します。ポリシータグの概要から採用理由、仕様を考慮したデータ連携の仕組みや運用における注意点まで幅広くお伝えします。 ポリシータグとは ポリシータグを採用した理由 匿名化による機密性の高さ 機密性と