hey Product Blog

こだわりを持ったお商売を支えるプラットフォーム「STORES」の開発チームによる技術ブログです。

STORES

BigQueryMLでサービス数値の月末着地予測をする

この記事はhey アドベントカレンダーの19日目の記事です。 こんにちは、STORES でデータアナリストをしている@yougaiです。 サービスを運営していく中で、月次でKPIの目標を持っているチームは多いと思います。 そこで月中に気になるのが、今の調子で月末に…

DatadogのApp Analyticsについて

はじめに STORES でECサービスのSREエンジニアをしている角田と申します。 hey アドベントカレンダー 2020 の12日目の記事です! 今回は STORES でサービス監視に利用しているDatadogの機能についてです。 Datadog には App Analytics という機能があります…

フルリモート環境で絆を繋ぐ、 大喜利式チームランチ

この記事はhey Advent Calendar 2020 6日目の記事です。 こんにちは、 STORES でフロントエンドエンジニアをしています @daitasuです。 さて、本日は私たち STORES のフロントエンドチームが行う、フルリモート環境下でのチームランチについての小話です。 U…

MongoDBでnull以外を条件にデータを取得する時にCovered Queryにする方法

この記事はheyアドベントカレンダー2020の5日目の記事です。 STORESでECサービスのSREをしている@wanijiです。 STORESではメインとなるDBにMongoDBを採用しており、RDBと同様にインデックスを使ったパフォーマンス改善をします。その際に、インデックスを使…

Rubyのカスタム例外をちゃんと使おうと思った話

STORES のバックエンドエンジニアの@zakkyです。 本記事は、hey アドベントカレンダー 2020 の 4 日目の記事です! アドベントカレンダーに記事を書くのは初めてで、何を書くか悩みました。 技術記事は過去の自分に向けて書くのがちょうど良いという言葉を先…

STORES EC のインフラ構成

はじめに STORES で EC サービスの SRE エンジニアをしている秋元と申します。 hey アドベントカレンダー 2020 の 3 日目の記事です! 今回は STORES EC のインフラ構成を紹介したいと思います。 正直なところ、弊社のインフラ構成は「すごく最先端を走って…

Vuex ストアに TypeScript の型を付ける(2020年12月版)

業務委託で STORES の開発をしている @inouetakuya です。 下記の記事(2020/09/14)にあるように、STORES では TypeScript の導入を進めています。 プロダクトに途中から TypeScript を導入した話 - STORES Tech Blog 現状、新規に記述するコードについては…

STORESを支える「運用週」という仕組み

みなさんは「保守・運用」と聞くとどのようなイメージをお持ちでしょうか? もしかしたら良いイメージをお持ちでない方もいらっしゃるかもしれません。 しかし、売り上げを生み出している既存コードの保守運用はビジネス上、新規機能開発と同等かそれ以上に…

たまってしまった .rubocop_todo.yml をGitHub Actionsで継続的かつ自動的に倒す方法

こんにちは。heyのCTOをやっている藤村です。 実はCTOになる前はSTORESのRailsのコードを改善する仕事をしていました。その頃に、たまってしまっている.rubocop_todo.ymlをなんとか手間をかけずに消化していきたいな〜と思い、少しづつ自動的に消化する仕組…

STORESってMongoDBを使ってるらしいけど正直どうなの?

STORESのECサービスを開発している@morihirokです。 STORES ECはRuby on Railsで開発されているWebアプリケーションですが、データベースにはMySQLやPostgreSQLといったリレーショナルデータベースではなく、MongoDBを採用しております。 この記事ではカジュ…

職能横断型スクラム体制になってからのチーム改善活動

こんにちは、STORES ECでフロントエンドエンジニアをしている@daitasuとバックエンドエンジニアをしている@phayacellです。 STORES ECでは、今年の5月よりエンジニア内の大きな体制変更がありました。 その変更では、フロントエンド/バックエンドで分かれて…

heyにフルリモートで入社して2ヶ月が経ったので入社体験記を書きました

はじめまして、STORESのバックエンドエンジニアのzakkyです。 2020年8月1日に入社しました。この記事を書いているのは9月下旬なので、約2ヶ月が経過した状態です。 弊社は2月頃から、COVID-19 の影響で全社的にリモート推奨となりました。2月から現在にいた…

Vue に stale-while-revalidate がやってくる

STORES でフロントエンド開発をしているushironokoです。今回は Vue でも SWR のようなしくみが使え、遠くない未来で標準的に使われることになりそうだ、という話を書きます。stale-while-revalidate とはどのようなものなのかについても簡単に解説していき…

プロダクトに途中からTypeScriptを導入した話

heyのSTORESでECの開発をしている@nkobaです。 この記事ではフロントエンドでTypeScriptを導入した話について発信していきます! TypeScriptとは TypeScriptはJavaScriptにリッチな型システムと静的な型検査を付加したプログラミング言語です。 TypeScriptが…

パフォーマンス改善から可視化の重要性を再認識した話

はじめに STORES で EC サービスの SRE エンジニアをしている秋元と申します。 今回は、EC サービスでのパフォーマンス改善について書こうと思います。 特に可視化の重要性について改めて感じたので、そのあたりについて書こうと思います。 STORES の EC サ…

社内UIライブラリの変遷

heyのSTORESでECの開発をしている@nkobaです。 この記事ではフロントエンドで使用しているUIライブラリについて発信していきます! 社内UIライブラリとは STORESのECではSTORES.jp-Front-Commonというフロントエンドライブラリを作成しています。 その一部と…

スクラムにおける分析と設計の失敗について振り返る

heyのSTORESでECの開発をしている @morihirok です。 STORES EC(旧STORES.jp)では、heyグループとなった2018年ごろより開発手法にスクラムを採用し始めました。 現在では多くの開発プロジェクトでスクラムが採用されるようになっています。 おかげさまでプ…

STORESメンバーで冬の千葉に開発合宿に行ってきました

はじめに はじめまして! STORES ECでフロントエンドエンジニアをしています、 @daitasu です。 2020年2月上旬(ずいぶん経ってしまいましたが)、STORESの開発メンバーで南房総 金谷へ1泊2日の開発合宿に行ってきました!!! この記事では、そこに至るまでの…

SRE のミッションを決めた話

はじめに ミッション ミッションを決めるまでのプロセス チーム全員で考えることにした理由 工夫した点 リーダーが決めてしまう方がいいケースもありそう 今後の課題 ミッションの改善 ミッションの浸透 はじめに STORES で EC の SRE チームを担当している…

STORES (EC) のオンボーディングについて書きます

STORES で EC の開発をしているバックエンドエンジニアの @rry です。 今年の1月に入社してから、もう半年になります(早い) 最近はオフラインでの勉強会も開催されず、他社のエンジニアさんと話す機会がめっきり減った今日このごろです。 STORES では毎日…