Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
hey-techcamp-2022
Search
garebare
September 16, 2022
Technology
2
69
hey-techcamp-2022
garebare
September 16, 2022
Tweet
Share
More Decks by garebare
See All by garebare
ペンギンをおすすめする
garebareda
0
46
Rustで作った自作コマンド群の話
garebareda
0
170
クリーンアーキテクチャ をGoでする場合に不要な Interfaceは消しやがれ
garebareda
0
150
自作Git作った話
garebareda
3
760
Rustで自作言語のインタプリタ作って Webで動くようにした話
garebareda
0
850
Vtuberをやりたくなりました
garebareda
1
78
Other Decks in Technology
See All in Technology
Snowflake Night #2 LT
taromatsui_cccmkhd
0
310
Databricksアシスタントが自分で考えて動く時代に! エージェントモード体験もくもく会
taka_aki
0
280
Microsoft Fabric のワークスペースと容量の設計原則
ryomaru0825
2
230
AI が Approve する開発フロー / How AI Reviewers Accelerate Our Development
zaimy
1
260
APMの世界から見るOpenTelemetryのTraceの世界 / OpenTelemetry in the Java
soudai
PRO
0
220
「使いにくい」も「運用疲れ」も卒業する UIデザイナーとエンジニアが創る持続可能な内製開発
nrinetcom
PRO
1
770
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
95k
社内でAWS BuilderCards体験会を立ち上げ、得られた気づき / 20260225 Masaki Okuda
shift_evolve
PRO
1
150
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
71k
マネージャー版 "提案のレベル" を上げる
konifar
10
4.5k
2026-02-25 Tokyo dbt meetup プロダクトと融合したCI/CD で実現する、堅牢なデータパイプラインの作り方
y_ken
0
160
三菱UFJ銀行におけるエンタープライズAI駆動開発のリアル / Enterprise AI_Driven Development at MUFG Bank: The Real Story
muit
10
20k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
150
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
120
Into the Great Unknown - MozCon
thekraken
40
2.3k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
65
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Side Projects
sachag
455
43k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Claude Code のすすめ
schroneko
67
220k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Transcript
hey-techcamp-2022 Team Coffee DaikiTanaka Jabelic
作ったもの
オンラインストア 本人現地引渡しシステム QRコード
オンラインショップ 管理アプリ
Who 誰に向けて作ったのか
コンサート運営会社 (物販) 大規模を想定
Why なぜ作ったか
問題 - 紙ベースの作業が煩雑 - Exelから印刷したチェックシートを使用 - 手作業で在庫を記録 - 受け取ったのに受け取ってないフリをする -
不正防止ができない - アイテム別の売上がオンライン上でわからない - 決済は別サービス - 面倒 etc…
問題 - 紙ベースの作業が煩雑 - Exelから印刷したチェックシートを使用 - 手作業で在庫を記録 - 受け取ったのに受け取ってないフリをする -
不正防止ができない - アイテム別の売上がオンライン上でわからない - 決済は別サービス - 面倒 etc…
現場がスピード重視だから
求める結果 - 事前決済分の受け取りは現地スタッフが操作、承認したい - 記録方法の簡素化、マニュアル化されてほしい - オンラインショップでアイテムごとの売上をみたい - 決済のミスをなくす etc…
解決すること • 在庫管理が手作業で煩雑 • 受け渡し時に本人確認できていない
解決すると... • 手作業が減る • 受け渡しのスピードが上がる • マニュアルが複雑にならない • 不正ができないようになる
現場の作業を減らしてスピードを上がる
収益面 - 現地販売とオンライン販売の割合は半々 - 現地受け取り - 1人10000円, オンライン販売の半分 - と仮定します
2500 人 x 10000円 x 3.6% = 2億5000万円 x 3.6% = 900万円 例外 - サマーソニック:1日12万人 x 2日間 60000万人 x 10000円 x 3.6 = 2160万円
What 何を作ったか
作ったもの • オンラインショップ • 在庫管理システム(オンライン ショップ用) • QRコード本人確認システム(オ ンラインショップ現地受取用)
オンラインショップ • ユーザーが購入 • 自動で購入数を管理 在庫情報を自動で管理して手作業を減らす
在庫管理システム • 在庫の登録 • 在庫数の管理 在庫をまとめて手作業を減らす
QRコード本人引き渡しシステム • QRコードで本人確認 • 受け取りの不正防止機能 • 自動で在庫を減らす スタッフの作業スピードがあがる
スタッフの利点 お手軽に本人確認 - カメラでQRコードを読み取るだけ - QRコード決済など、馴染みのある技術💪 紙ベースの作業廃止 - システムによって自動化 -
作業マニュアルの簡素化にもつながる
本来実装すべきだったこと
• メールで通知 ◦ QRコードが表示されるのみなので保管の問題が解決される • 決済システム ◦ オンラインショップに決済システムがないため直接やり取りをするしかない • ログイン機能
◦ ユーザーが注文履歴を閲覧できる ◦ 複数の注文をまとめて受け取ることができる • POSレジ機能 ◦ オフライン販売(現地販売)のシステム化ができる • キャンセル機能
使った技術 技術選定/ツール選定/理由など
ツール選定
共有Wiki Scrapbox コード管理 GitHub Organization プロジェクト管理 GitHub Project API定義 Swagger(OpenAPI
v3) ツール選定 - Team - 共同編集可能 - リンク型管理 - すぐにメモを取れる - カンバン形式 - アジャイルへの移行準備として。 - 個人リポジトリ運用は最初からしない - 段階なくチームメンバーを迎え入れる準備として。 - FrontEndとBackEndの認識擦り合わせ - 設計の一部としてチームで取り組む
FrontEnd
技術選定 - FrontEnd FraweWork/Bundler Vue.js/Vite APIClient Aspida(openapi2Aspida) Store Pinia Formatter/Linter
Prettier/ESLint UIComponent Element Plus Git hooks husky Test Vitest その他 ◦ QRコード生成:qrcode ◦ QRコード読取:jsqr ◦ QRコード保存:html2canvas ◦ API定義: OpenAPI(Swagger) 将来を見据えた技術選定 ・デフォでTypeScript ・比較的新しめな技術 ・組織の変化に対応 UI設計 Figma
BackEnd スピード重視
Go • SQLite3 • Gin(フレームワーク) • gorm SQLiteはgormにマイグレーション機能がついているのでMySQLにすぐ切り替えれる Ginの機能とgormの機能しか使わないように気をつけた 簡素な実装により機能追加が簡単
デモ