STORES Product Blog

https://product.st.inc/

こだわりを持ったお商売を支える「STORES」のテクノロジー部門のメンバーによるブログです。

フィード

記事のアイキャッチ画像
生成AI×社会課題 Tech Conferenceに協賛します
STORES Product Blog
STORES は6月21日(土)に開催される 生成AI×社会課題 Tech Conference に協賛します! wake-career-socialai-hackathon-2025.studio.site スポンサーブース 当日は STORES のスポンサーブースを出展します。 ブースでは、STORES を利用されているhanami sembeiさんのお菓子を配布します!STORES の実際の活用事例として、オーナーさんの商品をお楽しみいただければと思います。 ジェンダーダイバーシティAWARD 2025 授賞式 また、同会場で開催される「ジェンダーダイバーシティAWARD 2025 授賞…
3日前
記事のアイキャッチ画像
たまにはTLVのLについて語る
STORES Product Blog
はじめに はじめまして、こんにちは。STORES 決済 でAndroidエンジニアをしている n-seki です。 というわけでAndroidの技術記事……を書こうと思ったのですが、決済に携わっているエンジニアとして、たまにはTLVについて書いてみようと思います。 TLVとはなにか? TLVはデータ構造の一種で、Tag(またはType), Length, Value の頭文字をとった命名です。Tagはタグ、Lengthは長さ、Valueは値。そのままですね。 決済とTLVにどんな関係があるか、不思議に思われる方もいらっしゃるかもしれません。 一口に決済と言っても昨今はさまざまな決済手段が存在し…
3日前
記事のアイキャッチ画像
WWDC25に参加してきました!〜現地参加編〜
STORES Product Blog
こんにちは! STORES レジ・STORES 予約 の開発をしている iOS / Android エンジニアの @satoryo056 です。 なんとこの度 WWDC に当選しまして、約1週間アメリカに出張してきました! 本記事では、WWDC25 に参加してきた様子を現地の写真を添えながら振り返りたいと思います。 WWDCについて WWDC (Worldwide Developers Conference) は、Apple が毎年開催する開発者向けのカンファレンスです。 今年は現地時間6月9〜13日(日本時間6月10〜14日)にオフライン・オンラインのハイブリッドで開催され、新 OS やその…
5日前
記事のアイキャッチ画像
iOS アプリからローカルサーバーへ接続する道のり
はてなブックマークアイコン 1
STORES Product Blog
STORES ブランドアプリの iOS アプリ側を開発している Megabits です。 STORES ブランドアプリはアプリとサーバーの連動で成り立っています。なので、アプリを開発するとき、サーバーへ接続してデバッグすることがほどんどです。逆に、バックエンドを開発する際、アプリを操作して動作確認することも多いです。Staging のサーバーや Production のサーバーに接続してテストすることができます。アプリにはこのような DebugView が存在していて、 Staging と Production を切り替えられます。 環境切り替え画面 しかし、現状だとローカルでバックエンドのコ…
6日前
記事のアイキャッチ画像
2ヶ月の『開発合宿』で見えたもの - 出社を銀の弾丸にしないため
はてなブックマークアイコン 1
STORES Product Blog
はじめに STORES株式会社でエンジニアをしています id:HolyGrail です 2025年2月から4月頭にかけて、私たちのチームは普段のリモートワーク主体の働き方から一転、全員出社での開発を行いました。ミッションは、3月27日にリリースするSTORES の新プランの開発。店舗運営に必要な複数のサービスをまとめた新プランを低価格でリリースしました。 私たちのチームが担当したのは、複数のサービスダッシュボードを横断的に、違和感なく利用できる体験を提供するシステムの開発。1月に集まったばかりの新チームで、コミュニケーション密度を高めながら「3月末にリリースする」という明確なゴールに向かう必要…
7日前
記事のアイキャッチ画像
STORES 決済 アプリを譲渡したら最後に落とし穴があった
はてなブックマークアイコン 4
STORES Product Blog
もう夏なんですかねー。 夏大好きです。 こんにちは! STORES 決済 モバイルチームの Engineering Manager、 iOS アプリ・SDKの開発を担当しております。 いわいです。 なぜアプリ譲渡したのか STORES 株式会社は、 複数の事業会社が集まった会社です。 STORES 決済 iOS アプリは 元々は前身である コイニー株式会社が 運営していたので、 App Storeでも、 Coiney, inc. の Apple Developer Account からリリースされていましたが 2025年4月、ようやく アプリ譲渡をおこない STORES, inc. からリリー…
7日前
記事のアイキャッチ画像
STORES レジで遭遇した 12 桁バーコード読み取りの謎
はてなブックマークアイコン 2
STORES Product Blog
こんにちは、 yu です。前回はインターン生としてブログを書きましたが、今回は内定者アルバイトとしてブログを書いていきます。 STORES レジには、会員バーコードやアイテムのバーコードを読み込むスキャン機能があります。 しかし、そのスキャン機能では 12 桁のバーコードが読めないという問題が発生していました。 今回は、なぜ 12 桁のバーコードが読めなかったのかとその解決法について、バーコードの規格とともに紹介します。 発生した問題と原因 問題 STORES レジに登録する商品には、オーナーさまがお好みのバーコード番号を設定できます。 しかし、アイテムに 12 桁のバーコードを設定し、そのバ…
10日前
記事のアイキャッチ画像
潜在的なデータ競合をなくすための取り組み
はてなブックマークアイコン 1
STORES Product Blog
こんにちは、STORES 決済 でiOSアプリを開発している @nekowenです。 マルチスレッドプログラミングは難しいと言われますが、その理由の1つとして、データ競合(data race)があります。 データ競合は複数のスレッドが同じ共有データに同時にアクセスし、少なくとも1つが書き込みを行う場合に発生します。これは主に予期せぬ動作やクラッシュを引き起こす厄介なバグの原因となります。 そのため、データ競合を起こさないよう NSLock や DispatchQueue を用いた排他処理が必要となってきますが、これは実装や考慮漏れを引き起こすリスクがあります。 一例として、STORES 決済 …
11日前
記事のアイキャッチ画像
TokyoWomen.rb #1に参加しました
STORES Product Blog
こんにちは、技術広報のえんじぇるです。 STORES は、2025年3月1日に開催されたTokyoWomen.rb #1にスポンサーとして協賛しました! tokyowomenrb.connpass.com 現地でスポンサーLTをさせていただく機会があったので『私が STORES を推す理由』と題して、STORES のあれこれを紹介しました。 photo by えりりんさん なぜスポンサーをすることにしたのか STORES は2023年にダイバーシティ方針を掲げ、その中で「2030年までに、エンジニア職における女性採用比率を30%以上にする」ことを、未来の STORES に欠かせない定量目標とし…
14日前
記事のアイキャッチ画像
AndroidプロジェクトにBitriseを導入する手順
STORES Product Blog
最近DIYで作ったのはブックカバーです。レザークラフトは綺麗な縫い目が重要です。それには等間隔に穴をあける道具が必要なのですが、手元になかったので代わりにフォークを使いました。手触りの良い素材を選んだので、本を開くのが楽しみになりました。 こんにちは。STORES 決済 でAndroidアプリエンジニアをしている Yamaton です。今回は、既存のBitrise環境にあたらしいAndroidプロジェクトを追加する流れをまとめます。「既存プロジェクトにはBitriseが入ってて便利だけど、新規プロジェクトはどんな手順でBitriseを導入するんだろう」という方の参考になれば幸いです。 この記事…
17日前
記事のアイキャッチ画像
JJUG CCC 2025 Springに STORES から2名が登壇&ランチスポンサーとして協賛します
STORES Product Blog
こんにちは、技術広報のえんじぇるです。 6月7日に開催されるJJUG CCC 2025 Springに STORES から2名が登壇&ランチスポンサーとして協賛します! ccc2025spring.java-users.jp 登壇者の紹介 STORES から2名が登壇します。 障害を回避する HttpClient 再入門 時間:10:00 - 10:20 場所:Room L 発表者:uskey512 本セッションでは、普段何気なく直接(あるいは間接的に)利用しているHttpClientについていくつかの主要な実装を紹介しつつ少し深堀りして、より安全に使うためにどのような点を考慮すべきかなどを紹…
17日前
記事のアイキャッチ画像
STORES レジがSwift6対応を完了するまで
STORES Product Blog
この記事は「STORES レジにおけるSwift6移行対応」の完結編です。今回は、対応箇所が特に多かったモジュールにフォーカスし、チームで分担して対応する過程をご紹介します。Swift6対応がこれからの方はもちろん、すでに対応済みの方にとっても、中規模から大規模の技術刷新を行う際の参考になるはずです。
18日前
記事のアイキャッチ画像
Cursorで変わるPdMの仕事と役割【ep.35 #論より動くもの .fm】
STORES Product Blog
CTO 藤村がホストするPodcast、論より動くもの.fmの第35回を公開しました。今回はプロダクトマネージャーの西岡と、LLMを使ったプロダクトとAIとPdMの仕事について話をしました。 creators.spotify.com 論より動くもの.fmはSpotifyとApple Podcastで配信しています。フォローしていただくと、新エピソード公開時には自動で配信されますので、ぜひフォローしてください。 最近気になる音楽 藤村:こんにちは、論より動くもの.fmです。 論より動くもの.fmは STORES のCTO 藤村が技術や技術じゃないことについてざっくばらんに話すポッドキャストです。…
19日前
記事のアイキャッチ画像
高品質アプリを支える連続タップ防止の工夫
STORES Product Blog
こんにちは、tomorrowkeyです。 今回はAndroidアプリ開発においてボタンのダブルタップをどう防ぐかについて話していきます。 モバイルアプリのQAのよくある項目として、ボタンのダブルタップがあります。開発に集中していると、この不具合になかなか気づけず、ついつい見逃してしまいがちですが、高い品質が求められるアプリでは確実に防ぐ必要があります。 私はいま STORES 決済 というプロダクトに関わっています。名前からわかるとおり、決済できるアプリなわけですが、まさにこのアプリには高い品質が求められるため、この観点は非常に重要になってくるわけです。 よくあるアプローチとその課題 この問題…
25日前
記事のアイキャッチ画像
RubyKaigi 2025で託児サポートを実施しました〜準備から実施までの記録〜
STORES Product Blog
こんにちは、技術広報のえんじぇるです。STORES はRubyKaigi 2025でNursery Sponsorとして、託児所の企画運営をしました。Nursery Sponsorとして協賛するのはRubyKaigi 2024に続いて2回目です。 3日間で0才〜10才までの合計23名のお子さんをお預かりし、保護者の方がRubyKaigiに集中できる環境を提供しました。本記事では実際にどのように準備したのか、どんな様子だったのかをお伝えします。カンファレンスやイベントで託児所の設置を考えている方の参考になれば幸いです。 RubyKaigi 2024の実施記録は下記からご覧ください。 produc…
1ヶ月前
記事のアイキャッチ画像
MongoDBでnullの重複を許しつつユニークにしたいときの罠
STORES Product Blog
こんにちは!STORES ブランドアプリ のバックエンドエンジニアをしているotariidaeです。 最近 STORES ネットショップ にコントリビュートする機会があり、データベースとして採用されているMongoDBについて1つ学びを得たので記事にしたいと思います。 ユニークにしたい、でもnullの重複は許容したい 例えば users コレクションがあり、emailフィールドの値は一意にしたい、しかしnullの重複は許す、という要件を考えます。次のようなイメージです。 > db.users.find() [ { _id: ObjectId('682cb935c578d93e34a00aaa'…
1ヶ月前
記事のアイキャッチ画像
Developers Summit 2025に登壇しました
STORES Product Blog
こんにちは、技術広報のえんじぇるです。 2025年2月14日にDevelopers Summit 2025にて登壇しました! Rubyist友だちが撮ってくれた写真 Developers Summit 2023では、当時VPoEだったsa2daiさんが公募セッションで登壇することになり、 event.shoeisha.jp プロポーザル提出や登壇の準備をサポートし、当日現場のオンライン配信の会場にお邪魔させていただきました。Developers Summit 2024は久しぶりのオフライン開催とのことで一参加者として参加しました。(このデブサミでは廊下を楽しみました!) そして、Develop…
1ヶ月前
記事のアイキャッチ画像
SaaS の引っ越しに伴うリダイレクト Chrome 拡張機能の実装方法
STORES Product Blog
STORES の社内 IT をいい感じにするお仕事をやっている howdy39 です。 元々使っていた SaaS のナレッジを Notion に引っ越すという記事を yubrot 氏が書いてくれました。 product.st.inc その記事の中に出てきていた 「旧ナレッジデータベース上のページのURLにアクセスしたら、移行先Notionページに自動リダイレクトする」 というChrome拡張を別途用意しました。 という部分ですが、このリダイレクトを行う Chrome 拡張機能の実装をしたので解説していきます。 SaaSの引っ越しに限らず、簡易的にリダイレクトしたいケースはあるかと思うので参考に…
1ヶ月前
記事のアイキャッチ画像
10万ページ以上のナレッジをNotionに移行しました (スクリプト編)
STORES Product Blog
こんにちは。yubrotです。STORESではWebを主戦場に色々見ていますが、今回はそれとはまったく関係ない話をします。 事の始まり: Notionに社内のナレッジを集約する という意思決定を組織として行いました。1 STORESには、既に別のナレッジデータベースにこれまでのドキュメントがたくさん蓄積されていましたので、それをNotionにまるっと移行する必要があります。また、ナレッジの集約を目的としているため、元のナレッジデータベースは移行後に閉じる想定をします。そのため、 すべてのドキュメントを、 できるだけ情報の損失や読みやすさの低下を避けつつ、 全 STORES 社員が利用者が混乱し…
1ヶ月前
記事のアイキャッチ画像
AIはコーディングがよくできるアルバイト/自分が仕事を楽しんでるかを考えることもマネージャの仕事【ep.34 #論より動くもの .fm】
STORES Product Blog
CTO 藤村がホストするPodcast、論より動くもの.fmの第34回を公開しました。今回は2025年1月にVP of Engineeringに就任したhogelogと、AIコーディングと仕事の中の遊びの話をしました。 creators.spotify.com 論より動くもの.fmはSpotifyとApple Podcastで配信しています。フォローしていただくと、新エピソード公開時には自動で配信されますので、ぜひフォローしてください。 VPoEになってどうですか? 藤村:こんにちは、論より動くもの.fmです。 論より動くもの.fmは STORES のCTO 藤村が技術や技術じゃないことについ…
1ヶ月前
記事のアイキャッチ画像
RubyKaigi 2025 で学生支援を行い、学生3名が参加しました!
STORES Product Blog
こんにちは、STORES でリクルーターをしておりますぐっち id:yk4yo12 と申します。 STORES では、Rubyコミュニティへの貢献の一環として、RubyKaigi 2025 に参加を希望する学生3名に学生支援サポート(宿泊交通費や参加費の支援)を行いました。 今回参加した学生の皆さんが、それぞれの視点で現地での体験をまとめてくれたレポートもあわせてご紹介します。 今回参加してくれた3名の学生の皆さん。STORES ロゴの前で記念撮影! 🎓 学生支援を通じて伝えたかったこと Rubyをはじめ、STORES の開発ではさまざまな技術に日々向き合っています。その中で、技術そのものへの…
1ヶ月前
記事のアイキャッチ画像
RubyKaigi 2025 に総勢35名で参加しました!みんなで書く感想レポート
STORES Product Blog
スポンサーボードにみんなの名前を書きました こんにちは、ima1zumiです。RubyKaigi 2025 お疲れさまでした!みなさん、RubyKaigi 2025と松山は楽しんでいただけましたか?私はみなさんの感想ブログを読みながらRubyKaigiの余韻に浸る生活をしています。RubyKaigi 2025が終わらない。 STORES はNursery Sponsorとして、託児所の企画・運営をしました。また、会場ではブースを出したり、会期中にSTORES CAFE for WomenとSTORES CAFE at RubyKaigi 2025を開催したりと、盛りだくさんな3日間でした。 こ…
2ヶ月前
記事のアイキャッチ画像
RubyKaigi 2025 STORES ブース企画 IRB TreasureHunt Game ネタバレ解説記事
STORES Product Blog
こんにちは、STORES の id:hogelog です。 この記事では、RubyKaigi 2025の STORES ブースで公開されたIRB宝探しゲーム、IRB TreasureHunt Gameの作りとどんなお宝が隠されていたのかのネタバレを解説していきます。 このゲームは @mame がベースのアイデアと土台の実装をおこない、その上で主に @hogelog、一部 @ima1zumi がお宝のアイデアを実装しました。 ゲームの概要 このゲームは https://ruby-quiz-2025.storesinc.tech/ というURLにアクセスすると始まる、kateinoigakukun…
2ヶ月前
記事のアイキャッチ画像
try! Swift Tokyo 2025 参加レポート
STORES Product Blog
こんにちは、STORES 決済 iOSエンジニアの nekowen です。 まずは try! Swift Tokyo 2025 お疲れ様でした! 今年も STORES のメンバー10名が現地参加してきました。この記事では STORES で取り組んだことや、印象に残ったセッションについてみんなの感想をまとめていきたいと思います。 今年もSTORES メンバーが現地参加しました! try! Swift Tokyo について 簡単に try! Swift Tokyo について紹介します。 try! Swift Tokyo は Swift に関する国際的なカンファレンスで、Swift の最新技術やナレ…
2ヶ月前
記事のアイキャッチ画像
STORES のリリーストグル基盤を作りました
STORES Product Blog
STORES のykpythemindです。 STORES 株式会社 は25年3月末に、店鋪運営に必要な7サービスをまとめた新プランを低価格でリリースしました。 店鋪のためのレジ・キャッシュレス決済・ネットショップ・予約・会員管理システムなどをまとめて月額3300円で利用できるとても魅力的なプランになっています。サービスサイトはこちら。 さて、今回はこのリリースの裏側で自作のリリーストグルの仕組みを導入していました。STORES のtoggleで、stoggle (エストグル)と言います。 企画 我々は複数のプロダクトを統合して、より大きな価値を提供したいと考えています。 product.st…
2ヶ月前
記事のアイキャッチ画像
Girls AI Scholarship by STORES を始めます
STORES Product Blog
プログラミング学習をたのしみながら続けるための支援として、AI活用によるプログラミング学習継続支援 Girls AI Scholarship by STORES を開始します! STORES は、「2030年までに、エンジニア職における女性採用比率を30%以上にする」を目標に掲げ、これまでもSTORES Tech Girls Camp、Rails Girls Japanの協賛などテクノロジーのたのしさに「出会う」プログラムと、テックカンファレンスでの託児サポートや女性エンジニア向けランチ会など仲間と共に学びを「深める」ための活動をしてきました。 Girls AI Scholarship by …
2ヶ月前
記事のアイキャッチ画像
RubyKaigi 2025 に STORES から5名が登壇、2名がLTに登壇します
STORES Product Blog
こんにちは、STORES のima1zumiです。RubyKaigi 2025では、STORES から5名が登壇、2名がLTに登壇します。 発表内容について登壇者それぞれから紹介します。ぜひトークを聞きに来てください! Ruby Taught Me About Encoding Under the Hood 文字コードの面白さについて、自分の経験やRubyのUnicodeのバージョンアップの実装からお話します。文字をコンピュータで扱うとはどういうことなのか、その一端をお見せします。(ima1zumi) Make Parsers Compatible Using Automata Learnin…
3ヶ月前
記事のアイキャッチ画像
STORES はRubyKaigi 2025も全力!ブース、ミートアップ、関連イベント、Nursery Sponsorのご紹介
STORES Product Blog
こんにちは、技術広報のえんじぇるです。RubyKaigi 2025が近づいてきましたね! STORES はRubyKaigi 2025もNursery Sponsor(託児サポート)として協賛しています。 Nursery Sponsorの他にも、さまざまな取り組みをするので下見時の写真をまじえながら紹介させてください! 松山空港で蛇口みかんジュースを飲みました Nursery Sponsor 今年もNursery Sponsorとして、20名弱のFuture Rubyistを託児所でお預かりします。Future RubyistにもRubyKaigiを楽しんでもらうため、キーホルダー作りや紙コッ…
3ヶ月前
記事のアイキャッチ画像
SchemaSpyを使って最新のER図を保つ
STORES Product Blog
はじめに nannanyです。 STORES では今まさに複数のプロダクト・システムを横断して、ものづくりをしていくフェーズにいます。 言語・プロダクト・技術領域ごとになっていたWebエンジニアの採用ポジションを統合します - STORES Product Blog そのため、今まで関わってきたプロダクトから離れて、別のプロダクトを扱うようになる人も多くいます。 はじめて触るプロダクトを理解するために必要なものとはなんでしょうか? 諸説あると思いますが、私はデータベースのER図を見ることがプロダクトの理解に大きく貢献すると考えています。 この記事ではSchemaSpyを利用して、最新のER図を…
3ヶ月前
記事のアイキャッチ画像
言語・プロダクト・技術領域ごとになっていたWebエンジニアの採用ポジションを統合します
STORES Product Blog
STORES でソフトウェアエンジニアをしている morihirok です。 このたび STORES のエンジニア採用ポジションを大きく刷新し、これまで多数あった採用ポジションを「Web エンジニア」のひとつに統合しました。 このブログでは意思決定に至るまでの背景とその意図についてご紹介し、私たちが作っていきたい組織や挑戦する課題について知っていただければと思っております。 これまでどうなっていたか 前提として、STORES は複数のスタートアップが合併してできた会社です。 しばらくもともとの会社の単位で事業部制組織を取っていたため、エンジニアの採用ポジションも組織ごとに存在し、採用フローもエ…
3ヶ月前