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
59
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
440
Bringing the Pivotal Process to an Early Startup
ledwards
2
370
SideTour at StartOut Demo Day
ledwards
1
100
Building a Technical Team
ledwards
1
220
Refactoring
ledwards
4
370
Life After LSM
ledwards
2
150
Attack of the Zombie Dynos
ledwards
2
230
Keeping Your Clients ‘NSync - Node.js and Derby: The New Kids on the Block
ledwards
2
200
Test Driving with RSpec and Cucumber
ledwards
3
440
Other Decks in Technology
See All in Technology
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
550
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
710
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
3k
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
760
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
630
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.5k
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
25
7.2k
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
分解して理解する Aspire
nenonaninu
1
300
Moved to https://speakerdeck.com/toshihue/presales-engineer-career-bridging-tech-biz-ja
toshihue
2
750
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Making Projects Easy
brettharned
116
6k
Six Lessons from altMBA
skipperchong
27
3.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
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