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
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
Search
ほりしょー
May 18, 2026
Programming
80
1
Share
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
めぐろLT #36 「オペレーションに立ち向かった話」@麻布台
https://meguro-lt.connpass.com/event/379339/
ほりしょー
May 18, 2026
More Decks by ほりしょー
See All by ほりしょー
Hello_LT_world_新年度前に振り返ろう_失敗から学んだ教訓_LT_Night___1_.pdf
h0r15h0
1
5
開発プロセスを継続的に改善する仕組み作り ~ 強いスクラムをいかに維持するか ~
h0r15h0
0
130
ドメインイベント増えすぎ問題
h0r15h0
2
860
LLM(Copilot)を最大限活用するための取り組みとその副産物
h0r15h0
1
220
現実世界の事象から学ぶSOLID原則
h0r15h0
30
22k
集団意思決定の落とし穴と誰も望まない技術的負債
h0r15h0
1
5.3k
Goのパーサ作ってvscode拡張作ってみた!
h0r15h0
0
220
デザインパターンを学んだら世界が広がった話
h0r15h0
2
430
Other Decks in Programming
See All in Programming
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
0
190
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
190
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
2k
Structured Concurrency, Scoped Values and Joiners in the JDK 25 26 27
josepaumard
1
150
20260514_its_the_context_window_stupid.pdf
heita
0
1k
Agentic UI in the Frontend: Architectures with Open Standards @JAX 2026 in Mainz
manfredsteyer
PRO
0
120
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
120
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
390
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
620
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
3
170
AgentCore Optimizationを始めよう!
licux
3
250
関係性から理解する"同一性"の型用語たち
pvcresin
1
190
Featured
See All Featured
Site-Speed That Sticks
csswizardry
13
1.2k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
140
Designing for Timeless Needs
cassininazir
1
220
The browser strikes back
jonoalderson
0
1.1k
Paper Plane
katiecoart
PRO
1
50k
The Invisible Side of Design
smashingmag
302
52k
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Claude Code のすすめ
schroneko
67
220k
Mind Mapping
helmedeiros
PRO
1
190
Believing is Seeing
oripsolob
1
130
The Mindset for Success: Future Career Progression
greggifford
PRO
0
330
Transcript
2026/05/18 めぐろLT #36 「オペレーションに立ち向かった話」@麻布台 ~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
ほりしょー プロダクトエンジニア @ハコベル 去年1年間、CSを兼務 @H0R15H0 https://youtu.be/ZFTW6Ete9eE?feature=shared https://zenn.dev/hacobell_dev/articles/131cbcb873e8ba https://zenn.dev/hacobell_dev/articles/4bf484a360d343 2
CSの現場で見つけた課題 ▶︎ 去年1年間、CS(カスタマーサクセス)を担当 ▶︎ そこで立ちはだかったのは、業務を支える「神スプレッドシート」 ▶︎ オペレーション上、コアなシステムだが裏側には肥大化したGAS。 ▶︎ メンテが苦しい、 、
、 3
誰もメンテナンスでき ない状態 ブラックボックス化 業務のボトルネック 「動けばいい」からの限界 圧倒的な属人化 clasp(GASのローカル 開発ツール)の導入や TS化はされている 👍
アーキテクチャはない 管理の形骸化 非エンジニアの努力の 結晶であることにはリ スペクト 👏 さらなる機能拡張や引 き継ぎは不可能 拡張性の限界 4
誰でも高速に、この業務基盤を構築・メンテできるアーキテクチャの導入 「AI親和性」×「脱・属人化」 「AI親和性」×「脱・属人化」 「AI親和性」×「脱・属人化」 「AI親和性」×「脱・属人化」 5
GASに関数型エラーハンドリングを導入 「データの集計」や「フォーマットのマッピング」をスプシが担う ▶︎ エンジニア視点では、バリデーション・型変換・エラーハンドリングの連続 Railway Oriented Programming (鉄道志向プログラミング) をアーキテクチャに ▶︎
処理の流れを「正常系のレール」と「異常系のレール」に綺麗に分離 パイプラインのようにつなぎ合わせる設計手法 ▶︎ 複雑な条件分岐に依存しない、バリデーション・型変換・エラーハンドリングを実現 https://fsharpforfunandprofit.com/rop/ 6
try-catchベースの エラーハンドリング 7
try-catchベースの エラーハンドリング 処理が煩雑になりhappy-pathが追いづらい 8
関数型エラーハンドリングの場合 エラーハンドリングを強制しつつ 終端に寄せることができる (詳細は割愛 💦) 正 常 系 9
自己文書化とAIコスト低下 型によるガードレール 処理が上から下へ一本道で読めるコード に 人間だけでなく、AIにとっても読みやす いコードに 高速な開発を実現 関数型エラーハンドリングで得られた効果 TypeScriptの型安全性をフル活用 AIがコードを変更しても壊れないガード
レールを設置 業務を止める復帰不能エラーを未然に防 ぎ、心理的安全性を向上 10
まとめ 神スプシ(Excel)はどこにでも存在 AIの発展によりエンジニアリングが民主化している今、スケールさせるアーキテクチ ャ選定がエンジニアリングの鍵に 関数型のパラダイムはAI時代の壊れないガードレールとなる その他(コードベースのテンプレ化・SDDの導入)改善も ぜひ懇親会でお話しできれば 👋 https://zenn.dev/hacobell_dev/articles/typescript-neverthrow-csv-error-handling 11