株式会社ZOZO の技術ブログ

モブプロ活用事例 - Java + Spring Bootを使用した新規アプリケーション開発

こんにちは。ECプラットフォーム部マイグレーションチームの半澤です。 この記事では、Java + Spring Bootを使用したアプリケーション作成時にモブプログラミングを活用した事例をご紹介します。モブプログラミング未経験の方や、これから実施を考えている方の参考になれば幸いです。 目次 目次 はじめに モブプログラミングとは プロジェクトの概要 アーキテクチャ設

ユーザーログを活用したZOZOTOWNの検索サジェスト改善

こんにちは。ZOZO研究所の山﨑です。 ZOZO研究所では、検索クエリのサジェスト(以下、サジェスト)や検索後のアイテムの並び順といったZOZOTOWNでの検索改善にも取り組んでいます。 本記事では、ZOZOTOWNにおける実例を交えながら、サジェストの改善方針についてご説明します。 目次 目次 一般的なサジェストの概要 サジェストの分類 サジェストの評価指標 ZOZOTOWNでのサ

130万人の足を計測したZOZOMAT - ユーザビリティテストを中心とした改善策とその裏側

はじめに こんにちは、計測プラットフォーム部の歌代です。 普段はZOZOSUITやZOZOMATといった計測系プロダクトの「計測」に関わる部分の検証や、新規プロダクトに必要なデータ集め、また精度検証などサービス構築から、UI/UXの分析・評価など幅広く業務を行っています。 2020年2月にリリースした足計測ツール、ZOZOMATでは足のサイズをスマートフォンで測るという新しい体

機械学習を用いた調査リリースで見えた優位性と課題

はじめに こんにちは、ZOZO研究所の平川( @china_syuke )です。 ZOZO研究所では今年度から、ファッションコーディネートアプリ「 WEAR (ウェア)」のデータを用いた調査リリースを執筆しています。一般的によく見るアンケート調査と違い、機械学習を用いてこれまで数値化されていない情報を調査しました。 この記事では、リリースした中でも面白いアプローチで調査し

Cloud Composerによるデータバリデーション ~常に正確なデータ集計を実現するために~

こんにちは。ECプラットフォーム部データエンジニアの遠藤です。現在、私は推薦基盤チームに所属して、データ集計基盤の運用やDMP・広告まわりのデータエンジニアリングなどに従事しています。 以前、私たちのチームではクエリ管理に Looker を導入することで、データガバナンスを効かせたデータ集計基盤を実現しました。詳細は、以前紹介したデータ集計基盤につい

「AWS GameDay」から学んだ障害対応訓練の大切さとAWS主催の意義

こんにちは。SRE部BtoBチームの岩切です。普段はBtoB事業における自社ECサイトの運用保守・監視をしています。 今回2020年11月27日にオンラインで開催された AWS GameDay に参加しました。 本記事では、GameDayイベントで得た学びから実際の業務へどのような効果があったかを共有します。 AWS GameDayについて 今回のAWS GameDayでは、開催前の別日に事前勉強会が2時間、GameDay本番が5

【オンラインMeetup イベントレポート】第二回 AWSマルチアカウント事例祭り

こんにちは、ZOZOテクノロジーズ CTO室の池田( @ikenyal )です。 ZOZOテクノロジーズでは、2/9に 第二回 AWSマルチアカウント事例祭り を開催しました。 zozotech-inc.connpass.com AWSを活用する複数社が集まり、事例に関してお話しする祭典が「AWSマルチアカウント事例祭り」です。専門性の高い、ここでしか聞けないコアなトークをお届けしました。特にAWSを使用している方、AWSの

テレワーク環境下における数式とソースコードを交えた輪講の実践

ZOZO研究所 の森下( @IshyMore )です。本記事では、数式とソースコードを含む教材を用いてテレワーク環境下で輪講を実施した際に、スムーズに輪講を進められるよう工夫した点について紹介します。 目次 目次 輪講の目的 教材の選定理由 内容が基本的で、応用範囲が広い 数式に対応したソースコードが載っている 演習問題が大量にある 輪講の進め方 輪講運用のための

「挑戦させすぎ?」マネジメント勉強会で分かった組織課題とその解決策

こんにちは、ZOZOテクノロジーズSREチームリーダー兼組織開発チーム所属の指原( @sashihara_jp )です。 この記事では2019年12月から全11回開催してきた「マネジメント勉強会」を通じて分かってきたZOZOテクノロジーズの組織課題と、これから取り組もうとしているその解決方法を紹介します。 ZOZOテクノロジーズの社員構成 マネジメント勉強会とは 立ち上げまでの道のり 運営

KamonによるAPM導入 - Akka gRPCを用いたScalaアプリケーション編

計測プラットフォーム部バックエンドチームの鈴木です。 この記事では、Akka gRPCを利用しているScalaアプリケーションのZOZOMATに対してKamonを通じてAPMを導入した際に得られた知見、うまくいかなかった内容やその対応策を紹介します。 Akkaとは 最初にAkkaについて簡単に紹介します。Akkaは、JVM上で並行および分散アプリケーションの構築を容易にするツールキットとランタ

Kotlinのsuspend関数のバイトコードを読んでみた

こんにちは。福岡研究所の岩本( @odiak_ )です。 みなさん、Kotlinのコルーチンを使っていますか? 私は、最近久しぶりにAndroidのコードを触る機会があり(3年ぶりくらいでしょうか)、以前から存在は知っていたものの詳しく知らなかったコルーチンを少し使ってみました。まずドキュメントを読んでみたのですが、よくデザインされているなと感じました。今回は使っ

【ZOZOTOWN UI/UX改善PJ】「改善を自分達で考えて実装・リリースするPJ」の作り方

こんにちは、ZOZOTOWN部フロントエンドチームの高橋( @anaheim0894 )です。 2020年5月からZOZOTOWN部では、「UI/UX改善プロジェクト」を立ち上げ、小さなUI改善を進めるチームを発足しました。 そこでこのプロジェクトの紹介をしながら、その工夫したポイントをお伝えします。新しいプロジェクトを立ち上げる際の参考になれば幸いです。 なぜプロジェクトを立ち上げたか 現

ZOZOTOWNのPUSH配信基盤をFCMにシームレスに移行するための考慮ポイント

こんにちは、MA基盤チームの田島です。ZOZOTOWNでは、ユーザコミュニケーションの手段としてLINE、MAIL、アプリへのPUSH通知を利用しユーザへのお知らせを実現しています。 その中でも、現在ユーザへのコミュニケーション強化の一環としてアプリPUSH通知(以降、PUSH通知)の強化をしようと考えています。ZOZOTOWNのPUSH通知は今まで、とある外部SaaS(本記事で出てくるSaaSは

High Level Rest ClientによるElasticsearch本番運用ガイド

こんにちは。ZOZOテクノロジーズZOZOTOWN部 検索チーム 兼 ECプラットフォーム部 検索基盤チームの有村( @paki0o )です。 ZOZOTOWNではこれまで度々紹介してきた通り、検索エンジンとしてElasticsearchを利用しています。リクエスト元のサーバーサイドのアプリケーションはJava(Spring Boot)で書かれており、クライアントにはHigh Level Rest Client(以下、HLRC)を使用しています。 www.elas

Hardening 2020 H3DXから学ぶ「インシデント対応訓練」の重要性

こんにちは。SRE部の横田・秋田です。普段はZOZOTOWNのリプレイスや運用に携わっています。 私たちは2020年11月13日から14日にかけてフル・オンラインで開催された Hardening 2020 H3DX に参加しました。本記事では、過去にオフライン開催のHardening Projectに参加経験のある秋田と、今回が初のHardening Project参加となった横田の体験を振り返り、「サービスを守る訓練」の重要性を再