ZOZOTOWNカート機能のリプレイスPhase1裏側を大公開

こんにちは、カート決済部の佐藤です。普段はZOZOTOWNカート決済サービスの新機能開発、既存改修、運用保守を担当しております。 弊社はモノリスからマイクロサービスへのリプレイスを進めており、カート決済サービスも先日リプレイスPhase1の記事を掲載いた…

EKS環境へArgoCD Image Updaterを導入し、デプロイ時間と管理コストを削減した話

はじめに こんにちは、計測プラットフォーム開発本部SREブロックの渡辺です。普段はZOZOMATやZOZOGLASSなどの計測技術に関わるシステムの開発、運用に携わっています。 先日私達のチームでは、ArgoCDと拡張ツールArgoCD Image Updaterを導入した開発環境のCD…

WWDC Extended Tokyo 2022を開催しました #wwdc22 #wwdctokyo

こんにちは、ZOZO CTOブロックの@ikkouです。 WWDC Extendedとは WWDC Extendedは、WWDCのメインセッション(Keynote)をさらに楽しむためのイベントです。これまでのWWDC Extendedはヤフーが単独で開催していましたが、今年のWWDC Extended Tokyo 2022はヤ…

ZOZOTOWNホーム画面におけるパーソナライズの取り組み

はじめに こんにちは、ML・データ部推薦基盤ブロックの寺崎(@f6wbl6)と佐藤(@rayuron)です。 ZOZOTOWNのホーム画面は2021年3月にリニューアルされ、「モジュール」と呼ばれる単位で商品が表示されるようになりました。 本記事ではユーザーごとにパーソナ…

海外出張とオンライン参加で学び、楽しんだ - WWDC22参加レポート

こんにちは、ZOZOTOWNアプリ部の@inokinnです。 日本時間の6月7日から11日にかけてWWDC22が開催されました。 今年のハイライトは、iOS 16でのロック画面のアップデートをはじめ、WeatherKitやSwift Charts、Passkeysなどの、数多くの新機能の発表だったかと…

Elasticsearchのバージョンアップと検索基盤の改善

はじめに こんにちは、検索基盤部 検索基盤ブロックの可児(@KanixT)とSRE部 ECプラットフォーム基盤SREブロックの大澤です。 本記事では、ZOZOTOWNの商品検索で利用しているElasticsearchをバージョンアップした知見と、その際に実施した検索基盤の改善に…

ZOZOTOWNにおけるセッションストアのリプレイス完了までの道のり

こんにちは。技術本部SRE部ZOZO-SREブロックに所属している杉山です。SRE部のテックリードとして、オンプレ/クラウドのインフラを担当しています。 ZOZOTOWNでは、既存システムのリプレイスプロジェクトを進めています。各サービスのマイクロサービス化は進…

ZOZOでのリモート環境におけるオンボーディング改善の取り組み

はじめに 初めまして。ZOZOTOWN開発本部ZOZOTOWNアプリ部Android2ブロックの下川と申します。ZOZOTOWNアプリ部ではAndroidを担当するチームが今年の4月から2つになりました。1つのチームで運営するには人数が多くなってきたためです。そして私は新しくできた…

Vertex AI Pipelinesによる機械学習ワークフローの自動化

はじめに こんにちは。検索基盤部の倉澤です。 私たちは、ZOZOTOWNの検索機能の改善に取り組んでいます。ZOZOTOWNのおすすめ順検索ではランキング学習を用いた検索機能の改善に取り組んでおり、A/Bテストにて効果を測定しています。 ランキング学習やElastic…

Digdagのワークフローを動的に実行できる仕組みの導入

はじめに こんにちは、MA基盤の@gachi-muchi-engineerです。 私達のチームでは、Digdagを利用してユーザーにメールを配信したり、データ連携を定期的に行うような様々なワークフローを運用しています。今回その中でも特定の対象者にポイントを付与したり、メ…

オンプレDWHをBigQueryに移行した話

はじめに こんにちは。MA部MA施策・運用改善チームの辻岡です。MA部では、ZOZOTOWNのメルマガ・アプリPUSH通知などの配信・分析等の用途で約数十TBのデータを運用しています。今回は長年MAのデータ基盤として利用してきたオンプレDWHをBigQueryに移行したお…

リアルタイムなプッシュ通知を可能にした配信基盤の紹介

※2022-06-07 システムアーキテクチャの画像を修正しました。 はじめに こんにちは、MA部MA基盤ブロックの齋藤(@kyoppii13)です。 ZOZOTOWNではアプリ向けのキャンペーンやセール情報などの配信でプッシュ通知を利用しています。プッシュ通知で配信するキャ…

SQL ServerのChange Tracking機能をプロダクション環境で運用した際に生じた問題と対応策

SQL ServerのChange Trackingを有効にした環境で発生した問題と、その原因調査から対応策の実施までの流れを紹介します。

Goプログラム実行時間の短縮

こんにちは。生産プラットフォーム開発部の中嶋です。生産プラットフォーム開発部はアパレル生産のDXを進めている部門です。具体的には服作りのIT化を含めたアパレル生産の効率化の促進と「生産支援」のシステムを主にGoで開発しています。今回はその運用の…

データカタログを作成してZOZOTOWNデータベース定義をまとめた話

こんにちは。ZOZOTOWN開発本部 バックエンド1ブロックの山本です。普段はZOZOTOWNのバックエンドやマイクロサービスAPIなどの開発に携わっています。 ZOZOTOWNは膨大なデータを有しており、テーブルやカラムの数も膨大です。しかし、ER図やテーブル定義に関…

ZOZO Tech Talk #7 - Android

こんにちは、ZOZO CTOブロックの@ikkouです。 ZOZOでは、5/23にZOZO Tech Talk #7 - Androidを開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シリーズです…

【オンラインMeetup イベントレポート】ZOZO Tech Talk #6 - iOS

こんにちは、ZOZO CTOブロックの@ikkouです。 ZOZOでは、5/16にZOZO Tech Talk #6 - iOSを開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シリーズです。ZO…

ZOZOTOWNで最大級のイベントである新春セールを乗り越えるための負荷試験とその効果

はじめに こんにちは、SRE部の秋田と伊藤です。普段はZOZOTOWNのオンプレミスとクラウドの運用・保守・構築に携わっています。 新春セールはZOZOTOWNの中でも最も力を入れているイベントの1つであり、セール開始直後は毎年最大級のアクセスやトラフィックが…

BigQueryで時を遡って過去のテーブルを再構成する

はじめに こんにちは、データシステム部データ基盤ブロックSREの纐纈です。 本記事では、過去に遡ってBigQueryのデータを参照する方法(以下、タイムトラベルと呼びます)をご紹介します。また、この機能はBigQueryが提供している、変更または削除されたデー…

【オンラインMeetup イベントレポート】ZOZO Tech Talk #5 - チーム開発と運用

こんにちは、ZOZO CTOブロックの@ikkouです。 ZOZOでは、4/22にZOZO Tech Talk #5 - チーム開発と運用を開催しました。 zozotech-inc.connpass.com 本イベントは、これまで夕刻に開催してきたMeetupとは異なり、ランチタイムに開催する「ZOZO Tech Talk」シ…

WEARに動画投稿を実装した際にハマった事とその解決策

はじめに こんにちは。WEAR部iOSチームの坂倉です。先日、WEARにコーディネート動画の投稿機能を実装しました。 iOSで動画を扱うにはAVFoundationを使う必要がありますが、原因がわかりにくいエラーを引き起こすことが多々あり、実装になかなか苦労しました…

【オンラインMeetup イベントレポート】Data Engineering Meetup 【ZOZO × GMOペパボ】

こんにちは、ZOZO CTOブロックの@ikkouです。 ZOZOでは、4/20にData Engineering MeetupをGMOペパボさんと共催しました。 zozotech-inc.connpass.com 本イベントではto C向けサービスを提供する2社が、各社のData Engineering事情や直近の取り組みについて発…

Combineの非同期処理をSwift Concurrencyのasync/awaitで書き換えてみた

こんにちは、FAANS部の中島 (@burita083) です。2021年10月に中途入社し、FAANSのiOSアプリの開発を行なっています。 FAANSの由来は「Fashion Advisors are Neighbors」で、「ショップスタッフの効率的な販売をサポートするショップスタッフ専用ツール」です…

FAANSにおけるCloud RunからGKE Autopilotへのリプレイス事例

はじめに こんにちは。ブランドソリューション開発本部 WEAR部 SREの笹沢(@sasamuku)です。 FAANSはショップスタッフの効率的な販売をサポートするスタッフ専用ツールです。FAANSの一部機能は既にリリースされており全国の店舗で利用いただいております。…

WorkManagerを使ったバックグラウンドでのAPI呼び出し

はじめに こんにちは。WEAR部Androidチームの半澤です。普段は、「ファッションコーディネートアプリ WEAR」のAndroidアプリ開発を担当しております。 今回は、WorkManagerを使ったバックグラウンドでのAPI呼び出しについて紹介いたします。WorkManagerは時…

WEAR Webフロントエンドリプレイスのアーキテクチャ選定とNext.jsへの移行

はじめに こんにちは。WEAR部フロントエンドブロックの藤井です。WEARでは現在、Webサイトのリプレイスを進めています。本記事では、リプレイスに至った背景や課題と、課題解決のために行ったリプレイスのアーキテクチャ選定についてご紹介します。

Amazon Kinesis Data Streamsの事例紹介とAWS SDKのバージョンアップについて

はじめに こんにちは。ECプラットフォーム部カート決済ブロックの曽根です。 ZOZOTOWNでは、リプレイスの一環として、2021年4月からカート決済機能のマイクロサービス化を開始しました。 ZOZOTOWN カート決済機能リプレイス Phase1 〜 キャパシティコントロ…

ZOZOTOWN iOSチーム、Apple silicon導入しました

はじめに こんにちは、ZOZOアプリ部でZOZOTOWN iOSアプリを開発している小松です(@tosh_3)。ZOZOTOWN iOSチームでは、M1 Pro / M1 Max発売のタイミングでチーム内の開発環境をApple siliconへと移行しました。スムーズに移行するためにどのようなことを実…

OpenAPI Generatorのコード生成とSpring Frameworkのカスタムデータバインディングを共存させる

OpenAPI Generatorを使ったOpenAPI定義からのコード生成と、Spring Frameworkのカスタムデータバインディングを共存させるために実施したことをご紹介します。

Unityを組み込んだiOSアプリにおける、UXも考慮した開発

こんにちは、ZOZO NEXTで新規プロダクトの開発を担当している木下です。先日、3Dバーチャル試着に関する実証実験の取り組みが発表されました。3Dバーチャル試着ではユーザーが入力した体型データを基に3Dアバターが作成され、好みのアイテムを選んで着丈やサ…

カテゴリー