設計

本番環境における等価比較を活用した言語リプレイス

はじめに こんにちは。基幹システム本部・物流開発部の上原です。昨年度に中途入社しまして、現在はZOZO基幹システムのリプレイスを担当しています。前職では、SESエンジニアとしてリプレイスプロジェクトに上流工程から参画し、大規模なシステムの言語リプ…

大公開!バッチアプリケーションの品質を高めるZOZOの『バッチ開発ガイドライン』

ZOZOでは開発ガイドラインを用いてシステム品質を担保しています。今回バッチ開発用のガイドラインを作成したのでその紹介をします。

ZOZOTOWNアプリのレガシーAPIリプレイスの道のり 〜チームでの挑戦〜

はじめに こんにちは、ZOZOTOWN開発本部アプリバックエンドブロックの髙井です。 私達のチームでは、レガシーとなっているZOZOTOWNアプリ用API(以下、レガシーAPIと呼ぶ)のリプレイスに2023年から着手しています。リプレイス対象となるレガシーAPIは規模が…

SQSを用いたクレジットカード決済の非同期化

こんにちは、カート決済部カート決済サービスブロックの林です。普段はZOZOTOWN内のカートや決済の機能開発、保守運用、リプレイスを担当しています。 弊社ではカートや決済機能のリプレイスを進めており、これまでにカート投入のキャパシティコントロールや…

バッチシステムのリアーキテクチャを繰り返して見えた設計の勘所

はじめに こんにちは、検索基盤部の倉澤です。検索基盤部では、検索機能に必要なデータを生成するバッチシステムの開発や運用を担当しています。また、ユーザーのニーズやサービスの成長に合わせてリアーキテクチャを行うこともあります。今回は、リアーキテ…

ZOZOTOWNにおけるマーケティングメール配信基盤の構築

はじめに こんにちは、MA部の松岡(@pine0619)です。MA部ではマーケティングオートメーションシステムの開発・運用に従事しています。 ZOZOTOWNでは、マーケティングオートメーションシステム(以下、MAシステム)を使い、メールやLINE、アプリプッシュ通知…

マーケティングを加速させろ!ZOZO Marketing Platform(ZMP)の紹介

こんにちは、MA部の齋藤(@kyoppii13)です。 ZOZOTOWNでは、プッシュ通知やLINE、メールでのキャンペーン配信を実施しています。キャンペーン配信の例としては、お気に入り商品の在庫数が少なくなったときにプッシュ通知を送るといったものです。LINEやメー…

ZOZOTOWN検索の精度改善の取り組み紹介

こんにちは。検索基盤部の山﨑です。検索基盤部では、検索基盤の速度改善やシステム改善だけではなく検索の精度改善にも力を入れて取り組んでいます。 検索システム改善についての過去の取り組み事例は、こちらのリンクをご参照ください。 techblog.zozo.com…

ZOZOTOWNホーム画面におけるログ設計と改善サイクルの紹介

はじめに こんにちは、ML・データ部推薦基盤ブロックの宮本(@tm73rst)です。普段は主にZOZOTOWNのホーム画面や商品ページにおいて、データ活用やレコメンド改善のプロダクトマネジメントを行っております。 近年ビックデータ社会と言われる中、データドリ…

ZOZOGLASSのクロスプラットフォーム設計

こんにちは、AndroidエンジニアのAndyです。これまでにZOZOSUIT、ZOZOMAT、ZOZOGLASSのアプリ機能開発に取り組んできました。 ZOZOGLASSは肌の色を計測するデバイスで、オンラインでファンデーションを購入する際の手助けをします。ZOZOGLASSのユーザーは下…

メルマガバナー運用の新システム移行 〜短期間かつ安全に〜

はじめに こんにちは、MA部MA基盤ブロックの齋藤(@kyoppii13)です。 ZOZOTOWNではキャンペーンやセール情報などをメールマガジン(以下、メルマガ)で配信しています。そして、そのメルマガの最下部にバナーを掲載しています。従来のメルマガバナー運用方…

【オンラインMeetup イベントレポート】ZOZOTOWNアーキテクトナイト

こんにちは、ZOZOテクノロジーズ技術戦略室の光野(@kotatsu360)です。 ZOZOテクノロジーズでは、9/9にZOZO Tech Meetup〜ZOZOTOWNアーキテクトナイト〜を開催しました。 zozotech-inc.connpass.com このイベントでは、ZOZOTOWNの開発においてアーキテクト…

DynamoDB Immersion Days 参加レポート

はじめに こんにちは。ブランドソリューション開発部プロダクト開発チームの木目沢とECプラットフォーム部カート決済チームの半澤です。 弊社では、ZOZOTOWNリプレイスプロジェクトや新サービスで、Amazon DynamoDBを活用することが増えてきました。そこで、…

ZOZOTOWN AndroidへのJetpack Compose導入の取り組み

こんにちは。ZOZOTOWN本部 ZOZOアプリ部 Androidチームの高橋です。ZOZOTOWN Androidチームでは、Jetpack Composeを導入しました。 この取り組みは、つい先日、Android Meetup【ZOZOテクノロジーズ × サイバーエージェント × GMOペパボ】でもご紹介していま…

マルチAZ化から学んだ無停止でインフラを変更するために考慮すべき3点

はじめに こんにちは。ブランドソリューション開発部の蔭山です。普段はFulfillment by ZOZO(以下FBZ)というサービスを担当しています。FBZはZOZOTOWNの倉庫や物流システムをブランドさんの自社ECでご利用いただけるサービスです。 先日、FBZが稼働してい…

ITCSSを採用して共同開発しやすいCSS設計をZOZOTOWNに導入した話

こんにちは。ZOZOTOWN部フロントエンドチームの菊地(@hiro0218)です。 2021年3月、ZOZOTOWNは10年ぶりのリニューアルをしました。この記事では、そのリニューアルで再考したCSS設計について紹介します。 背景 今回のリニューアルでは、ウェブとアプリが部…

EKSのマルチテナント化を踏まえたZOZOGLASSのシステム設計

EKS上でマルチテナントを検討した背景と設計時に考慮すべきポイントを紹介します。

MySQL実行計画の簡易検査ツールの開発とCIへの組み込み

ID基盤で開発・導入したMySQL実行計画の簡易検査を行うツールを紹介します。

ZOZOTOWNリニューアルで実施したCache Stampede対策

はじめに こんにちは。マイグレーションチームの藤本です。 この記事では、先日のリニューアルに伴って導入したBackends For Frontends(以下、BFF)で、Redisを使ったキャッシュの事例をご紹介します。キャッシュを導入する際に起きる問題とその回避策につ…

近似最近傍探索Indexを作るワークフロー

はじめに こんにちは。ZOZO研究所のshikajiroです。主に研究所のバックエンド全般を担当しています。ZOZOでは2019年夏にAI技術を活用した「類似アイテム検索機能」をリリースしました。商品画像に似た別の商品を検索する機能で、 画像検索 と言った方が分か…

ZOZOMATのクロスプラットフォーム3D

ZOZOMATとは何でしょうか?オンラインで靴を購入する際に、サイズが合わないという問題を解決する仕組みです。1台のスマートフォンと紙製のZOZOMATだけで、正確に足のサイズを測れます。足をスキャンすると、高精度の3Dモデルが生成されます。最適なサイズの…

髪型別コーデ検索におけるSPAの開発

こんにちは、WEAR部の繁谷です。 普段はバックエンドのエンジニアとしてWEARの開発を行っています。 ZOZOテクノロジーズは4月7日に「髪型別コーデ検索」をリリースしました。 プレスリリースは是非こちらを御覧ください。 髪型別コーデ検索のフロントエンド…

Vue.js+Vuex+TypeScriptのWebフロントエンド開発現場を前向きに改善した話

こんにちは。Webフロントエンドエンジニアの松井菜穂子です。 ZOZOテクノロジーズに入社して一年ほど経ちます。 あるサービスの立ち上げから運用まで、Webフロントエンドのチームリーダー・開発メンバーとして関わってきました。 当記事では、当社のWebフロ…

大規模リファクタリングで痛感したSwiftのOptionalとの正しい付き合い方

iOSアプリチームの@hiragramです。 最近、ファーストリリース時からあった画面の大規模なリファクタリングを担当しました。 コードは遅かれ早かれ賞味期限が切れて少しずつ腐っていくものですが、その賞味期限を少しでも伸ばすために、普段コードを書く時にS…

カテゴリー