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
Running global manufacturing on Ruby (among oth...
Search
Lee Edwards
November 11, 2016
Technology
0
69
Running global manufacturing on Ruby (among other things)
How Teespring runs a global manufacturing operation on Ruby, and other programming languages.
Lee Edwards
November 11, 2016
Tweet
Share
More Decks by Lee Edwards
See All by Lee Edwards
When not to build a service-oriented architecture
ledwards
0
490
Bringing the Pivotal Process to an Early Startup
ledwards
2
390
SideTour at StartOut Demo Day
ledwards
1
110
Building a Technical Team
ledwards
1
220
Refactoring
ledwards
4
400
Life After LSM
ledwards
2
170
Attack of the Zombie Dynos
ledwards
2
250
Keeping Your Clients ‘NSync - Node.js and Derby: The New Kids on the Block
ledwards
2
210
Test Driving with RSpec and Cucumber
ledwards
3
460
Other Decks in Technology
See All in Technology
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
200
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
170
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
330
Agile Leadership Summit Keynote 2026
m_seki
1
640
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
120
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
2.5k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
Digitization部 紹介資料
sansan33
PRO
1
6.8k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
280
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The browser strikes back
jonoalderson
0
390
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Documentation Writing (for coders)
carmenintech
77
5.3k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
How to train your dragon (web standard)
notwaldorf
97
6.5k
Transcript
Running global manufacturing on Ruby (among other things) Lee Edwards
VP Engineering at Teespring RubyConf 2016 @terronk
Song Dynasty (960-1279) Screen printing
The original silk road
Andy Warhol 1950s-60s
Modern screen printing facility (Hebron, KY)
Artwork separation
Picking tees
None
None
None
None
None
None
How it works Digital printing
None
None
None
None
A few parts of Teespring Commerce Fulfillment Artwork
FulfillmentJob
CampaignEnder Campaign class Campaign < ActiveRecord::Base # state_id class CampaignEnder
< TeespringWorker def perform # Check: # valid campaign, and valid to end? # meet minimum to print? # profitable for orders placed? # all orders charged? end_successfully
Printer FulfillmentJob class Printer < ActiveRecord::Base has_many :fulfillment_jobs class FulfillmentJob
< ActiveRecord::Base has_many :fulfillment_line_items class FulfillmentLineItem < ActiveRecord::Base
None
None
Apollo
None
Shipping labels
Conveyor belts
None
None
None