Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MOSKINというTypeScriptプロダクトを新規立ち上げする中で踏んだ地雷
Search
KintoTech_Dev
June 10, 2026
440
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MOSKINというTypeScriptプロダクトを新規立ち上げする中で踏んだ地雷
KintoTech_Dev
June 10, 2026
More Decks by KintoTech_Dev
See All by KintoTech_Dev
トヨタの販売店 DX の最前線で、生成 AI と内製開発で挑む
kintotechdev
0
110
筋トレエンジニアが考えるAI駆動開発
kintotechdev
1
96
GoogleCloud未経験のエンジニアがGoogleハッカソンでアイデア賞を獲った話
kintotechdev
1
56
CI/CDではもう遅い - 人とAIが迂回しないDevSecOps Verify基盤の再設計 -
kintotechdev
1
960
クルマのサブスクの"出口"で 値付けAIを作る
kintotechdev
2
200
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
4
1.3k
AI Native Dev 6ヶ月の歩み
kintotechdev
2
180
アラート疲弊からの脱却へーSOC業務における_AI_エージェント活用の実践_v2.pdf
kintotechdev
8
2.3k
人とエージェントが高め合う協業設計
kintotechdev
0
3.5k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Paper Plane (Part 1)
katiecoart
PRO
2
11k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Test your architecture with Archunit
thirion
2
2.4k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
870
Amusing Abliteration
ianozsvald
1
330
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
550
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.3k
We Are The Robots
honzajavorek
0
390
Navigating Team Friction
lara
192
16k
Transcript
MOSKINというTypeScriptプロダクトを新規立ち上げする中で踏んだ地雷 -きんはむちゃんのTypeScript奮闘記- 新サービス開発部 FACTORY EC開発G 鈴木 優里 2026/06/10
新サービス開発部 FACTORY EC開発G 鈴木 優里 "きんはむちゃん" as { "夫による呼び名": "きんはむちゃん"
} 2023年KTC入社 UPGRADE FACTORYのFEを担当 2025年よりMOSKINの立ち上げからFEを担当 開発業務以外にも販促映像制作や商品・イベントで の撮影・ユーザーインタビューも担当している 私は複雑な型テクニックはあまり使わず 業務でシンプルにTypeScriptを使うタイプです - 特別なことはしていない - 普段の開発で使うレベル
None
モータースポーツの ワクワク全力応援。 2025年8月6日MOSKINのサービスがスタート‼️ 極限のスピードがドライバーを鍛え、クルマを鍛え るモータースポーツの世界。 体験したい気持ちはあっても、なかなか一歩踏み出せ ない。 その一歩、KINTOが応援します。 サブスク スポーツカーレンタル
https://motorsport.kinto-jp.com/ サーキットレンタル 走行・体験イベント
開発状況 サービス企画 × WEB立ち上げが同時進行 サービスのオペレーションも同時進行での企画だったので要件が定まりにくい PdM不在 実働はデザイナー1名・FE2名 リテラシーの差 Business:
- 事業部=モータースポーツ・自動車ドメインのプロ、WEB開発知見は少ない Develop: - WEBのプロ、車に興味あるメンバーは30%の割合 事業・開発共に、ほぼ初対面でのスタート 事業側の役割分担もわからず、開発内でも誰がどんなことを得意とするのかがわからず進めようにも 頼める人か不明な状況
コンテンツ - BEなし: - ミニマムリリース前提 - JSONでページ生成 コンテンツ運用:
1, Excelで入力(Excelのデータは事業部) 2, JSONに変換 3, ページ生成
今日の話 この状態で踏んだTypeScriptの地雷
地雷① Excelが仕様を壊した
理想 Excelに入力すればページ生成!
現実 - 情報がExcelに収まらない - 入稿が間に合わない - 独自フォーマットで連携される
結果 - JSON構造が崩壊 - 型にハマらない - UIも崩れる
学び - 入力フォーマットは運用で壊れる - 型より先に運用設計が必要
+α 地雷(データ理解不足) そもそもデータが理解できてなかった
状況 - 車のプロではない - 私はペーパードライバー
起きたこと - 数値と単位の区別がつかない - 全部stringにしそうになる type CarSpec = { power:
string; }
- わからないものに型はつけられない 学び - 型は知識をデータに対応させるルール - stringは「諦め」の型
地雷② 変わるJSONを型で守ろうとした
なぜ起きたか - 要件変わる - Excel崩れる - JSON変わる → でも型は守ろうとする
結果 - unionだらけ - optionalだらけ → 型の意味が消える
状態 - 型はある ✅ - でも何も守ってくれない ❌
学び - 型は“変わらないもの”に使う - 広げすぎると価値がなくなる
地雷③ 型があっても認識がズレてた
状況 同じ型を見ているのに解釈が違う type Event = { status: "open" | "closed";
} 開発: open:リンク表示 closed:終了した情報ごと非表示 事業: open:リンク表示 closed:イベント終了だが情報を表示
結果 - 型は正しい - でも表示がバグる 本質 - TypeScriptは「構造」は保証する - でも「意味」は保証しない
学び - 型はチームの共通言語 - 合意がないと意味がない
- JSONは仕様になる(特にBEがない場合) まとめ - 入力(Excel)は必ず壊れる - 型は「理解しているもの」にしかつけられない - 型は「安定」と「合意」に使う
ご静聴ありがとうございました