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
The Road to Node
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Guille Paz
October 28, 2017
Programming
0
250
The Road to Node
The Road to Node (at a big company).
Guille Paz
October 28, 2017
Tweet
Share
More Decks by Guille Paz
See All by Guille Paz
No me robes el Scroll!
pazguille
0
270
User First
pazguille
1
210
#OfflineFirst
pazguille
3
5.9k
ES6 in Production
pazguille
10
3.2k
No me hagas esperar!
pazguille
1
190
CSS Sprites vs. Data URIs
pazguille
0
450
Hello, Style Guides!
pazguille
0
280
Decoupling your JavaScript
pazguille
0
180
Progressive Enhancement - Is it still important?
pazguille
0
140
Other Decks in Programming
See All in Programming
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜 / Understanding nil in Go Interface Representation and Why nil != nil
kuro_kurorrr
3
1.5k
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
3
350
CSC307 Lecture 13
javiergs
PRO
0
310
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.2k
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
2.2k
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
900
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
110
Beyond the Basics: Signal Forms
manfredsteyer
PRO
0
110
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
390
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
360
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
1
340
2026/02/04 AIキャラクター人格の実装論 口 調の模倣から、コンテキスト制御による 『思想』と『行動』の創発へ
sr2mg4
0
650
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
89
Everyday Curiosity
cassininazir
0
150
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
200
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
130
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Curious Case for Waylosing
cassininazir
0
260
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
230
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
140
HDC tutorial
michielstock
1
480
Making Projects Easy
brettharned
120
6.6k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
170
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
260
Transcript
The Road to Node at a big company
- I’m Guille Paz - Frontend developer - Tech Lead
at Mercado Libre @pazguille (twitter / github) Hi!
Mercado Libre
Largest e-commerce ecosystem in Latin America
None
~ 1500 developers
~ 1500 developers ~ 4600 repositories
~ 1500 developers ~ 4600 repositories ~ 300 deploys per
day
~ 1500 developers ~ 4600 repositories ~ 300 deploys per
day ~ 800 frontend apps
~ 1500 developers ~ 4600 repositories ~ 300 deploys per
day ~ 800 frontend apps ~ 3 Million rpm
~ 1500 developers ~ 4600 repositories ~ 300 deploys per
day ~ 800 frontend apps ~ 3 Million rpm ~ 900 coffees per day
Back to 2016
Frontend Frontend developers Backend developers
Frontend
Frontend Access Data UI Logic Business Logic Build assets Auth
i18n e2e testing ...
TOO many Technologies
TOO many Responsibilities
It’s a kilombo!
“The world is changing and we must change with it.”
- Ragnar Lothbrok
Hey Guille, coffee? Hey, what's happened? Nothing, just running grails
run-app... Sure! I have 10-15 mins.
New Team Frontend Core
We made Big decisions!
Node is the new UI Layer
Frontend Middleend UI Layer Business Logic
Frontend API API Middleend
Frontend API API Middleend Mobile Native
None
The new frontend stack
None
LTS version
None
None
None
ES6 Modules vs CommonJS
None
None
Use ES Features and don’t transpile the server.
node.green
None
six-speed
None
Use ES Stable Features and don’t transpile the server.
None
Shared Version
Default Middlewares
Authentication Device Detection Security Default Middlewares
Default Routes (“/ping”)
An Express Instance on Steroids
Routers (“mini-applications”)
Start Server (development vs production)
None
Using React Is A Business Decision, Not A Technology Choice.
- Eric Baer
Server-Side Rendering
React on the Server
Only transpile JSX in runtime
JSX (template engine)
res.render(‘View.js, props);
None
Render React Middleware
Override res.render( ).
res.render(<View />, props);
Universal UI Components
Universal Views
React on the Server & Client
None
Hey Guille, coffee? Hey, what's happened? Nothing, just running npm
install... Sure! I have 2-3 mins.
None
None
nordic & nordic-dev packages
None
None
react-router on the server
None
None
[email protected]
async hooks (onEnter ) are defined globally
None
None
process.env
It’s not a normal JavaScript object...
Server rendering is slower...
cache all the values!
React 16
Takeaway
⇢ Knows your dependencies ⇢ Node is the new UI
Layer ⇢ New roles and responsibilities ⇢ ~ 126 coffees per day (86% real) ⇢ Today we feel like...
None
None
Thank you! @pazguille