SlideShare a Scribd company logo
Tales of Modernizing Trello’s
web stack
VINCENT KOK | ENGINEERING MANAGER | ATLASSIAN | @VINCENTKOK
Trello
Engineering Manager at
Trello
About me
@vincentkok
Feel free to reach out
Dutch
You’ve probably already
heard that ;)
React
Solid industry standard and
the default within Atlassian.
TypeScript
The winner in the typed JS
space.
Key technologies
DISCLAIMER!
I’M AN ENGINEERING
MANAGER AND MOSTLY
BACKEND DEV :)
REACT SPRING
FRAMEWORK
Why ? Tales from
the past
Tales from
the present
Tales from
the future
Agenda
The reason for modernizing
https://flic.kr/p/aayTHr
TRELLO: WAS BUILT ON TOP
OF THE LATEST TECHNOLOGY
Backbone
First release 2010, 1 year old.
Some tech decisions in 2011
Propriety build system
Did what it needed todo, no
other great alternatives.
CoffeeScript
First appeared in 2009, two
years old.
After 9 years this tech is aging
https://flic.kr/p/aAca95
Growing number of contributors
Invest in the
future
Viable long term tech
stack.
Talent
We want to keep our
talent engaged and
explaining React is a
better sell when
hiring.
Dev speed
Maintaining the
ability to ship and
having the right dev
experience is
important.
Performance
Who doesn’t want to
have a snappy UX?
Drivers for a new tech stack
Simply a shift in where
performance is easier and
harder.
DANIEL ANNESLEY - ATLASSIAN ENGINEER
~200k LOC
A non-trivial amount of code.
26 routes
However, a lot of detail inside.
Trello codebase
Trello is realtime
Tales from the past
https://flic.kr/p/7qGxb1
Joel would tell people early on you gotta
shoot gamma rays at Trello, mutate it
and figure out what works and doesn’t,
it’s ok if we shut something down.
MICHAEL PRYOR
Tales of modernizing trello's web stack
Upgrading the Trello Front-End
https://flic.kr/p/8MrDrs
3
Attempts
Attempt 1: Go Dark
https://flic.kr/p/tJbJf5
Clean
architecture
No concessions.
Focus
No distraction for the
team.
No feedback
Will be hard to ship
for a long time.
Feature parity
Other teams will
move forward.
Go Dark: Pros and Cons
II
Attempt 2: Incremental
https://flic.kr/p/48V2XX
No Big-Bang
Significantly reduced
risk and something to
aim for.
Early feedback
Get feedback on
quality and
milestones.
Solve two
problems
Re-write and mixing
old and new tech.
Added
complexity
How to make sure
we end up with this
big mess?
Incremental: Pros and Cons
?
How to implement the transition incrementally?
6 options!
Criteria
Industry Standard
Make sure on boarding is simple, limit
the amount of proprietary
frameworks.
Ship fast and often
We want early feedback on the work
we’re doing.
DFTC
Customers should not be aware of
this.
Dev Experience
Working on the Trello Front-End is the
best experience possible.
A CLEAR WINNER:
PAGE LEVEL APPROACH
Step 1: Re-write the Header
Step 2: Route by route
/:username/cards
/b/:boardId
/b/:boardId/c/cardId
…
Just a simple matter of
programming
https://flic.kr/p/5Y5QPG
WRONG
Accidental patterns
We didn’t have a process in place to
establish patter, code was getting messy
very quickly.
Low velocity
Team velocity wasn’t picking up, way
behind our estimates.
Why were we failing?
https://memegenerator.net/instance/59809489/why-suffering-guy-2-but-why
Shaky foundation
The code we wrote earlier
was becoming stale and not
how we wanted to move
forward.
Technical reasons
Pure architecture is
and end-state
Focus on a reasonable state
and iterate.
Establishing patterns
is hard
React seems simple but there
are many ways doing the
same thing, take time to build
them out.
PICK ONLY ONE GOAL, THAT’S
IT
YOU WILL
UNDERESTIMATE
Don’t do rewrites
Tales about the present
https://flic.kr/p/8QULy5
BACK TO ONE GOAL
ENABLE 2 OR MORE TEAMS
TO USE NEW TECH TO WRITE
FEATURES
Remember these?
Attempt 3: Leaves and Nodes
https://flic.kr/p/aJ8Sx
Tales of modernizing trello's web stack
One key component added
GraphQL
Going beyond REST, build for
the future.
React
Solid industry standard and
the default within Atlassian.
TypeScript
The winner in the typed JS
space.
Tales of modernizing trello's web stack
Batteries
included
Render API
Mix-in in React components
into the “old” code base.
State management
State is managed via
GraphQL, component don’t
know anything about the
Backbone models.
Required API’s
<GammaComponentWrapper/>
Tales of modernizing trello's web stack
Tales of modernizing trello's web stack
No GraphQL
Server
support
Front-End GraphQL only
Enablement is key
https://flic.kr/p/6xZAmc
Pit of success
Feature Team
Continue to re-write some of
the key elements.
Front-End Platform
team
Focus on enablement.
Split up our team
Onboarding and
engagement
Make it as easy to get started
and create shared ownership.
Front-End platform team
Enable and Enforce
Provide guardrails and scale
out patterns via automation.
Provide batteries
Multiply the engineering
team by providing them tools
and API’s to ship features.
Establishing patterns
Pause at one
way doors
Pause at hard to revert
decisions, make them very
deliberate.
No abstraction
over wrong one
Do not abstract things
away, there is nothing
wrong with duplicating
some code.
Optimize for
change
You will learn and this will
make you change how you do
things.
Eligible
ENGAMENT MODEL
Consider
limitation
Establish
patterns
ENGAGE
EMBED ENGINEERBuild out feature
Technical
design
Team
proficient
Share learnings
Weekly meeting with all tech leads to
discuss patterns, components,
problems and learnings.
Create space to
discuss direction
and direct shared
ownership
FRONT-END FORUM
2
Onboarding
Measure
Tales from the future
https://flic.kr/p/rbEVPW
API
API in place to allow team to
focus on features.
Continue to build the pit of success
Tools
Enable and enforce, continue
to automate as much as
possible.
Scale
We want to have
autonomous teams, the high
touch model does not scale
Cleanup
https://flic.kr/p/nXpuSh
What should you take home?
https://flic.kr/p/ocwc2h
Key takeaways
You will underestimate
You will find an enormous amount of
depth in existing features, be careful
with re-writes.
Ideal architecture is an end-
state
Start with a reasonable state and
iterate from there.
Set one goal
Do not conflate two goals as it will
make it hard to make the right
decisions.
New technology is hard
Establishing new patterns will take
time to learn, start small and expand
when you’re ready.
Thank you!
VINCENT KOK | ENGINEERING MANAGER | ATLASSIAN | @VINCENTKOK

More Related Content

PDF
Summer "Tuning" in Jira and DevSecOps
AUGNYC
 
PDF
Future of Your Atlassian Platform - Data Center and Cloud Migration
AUGNYC
 
PDF
Bridging the Gap: Team Collaboration with Backbone – Issue Sync for JIRA
K15t
 
PDF
Team 21 Recap and ScriptRunner in the Cloud
AUGNYC
 
PDF
AUG NYC Presentation Feb 13 Event
AUGNYC
 
PDF
ACE NYC November 2021 Slideshare Deck
AUGNYC
 
PDF
Architecting Atlassian for Healthcare and FDA Compliance
Atlassian
 
PPTX
Unlock DevOps success with Atlassian - www.bdq.cloud
Ryan Dobson ☁
 
Summer "Tuning" in Jira and DevSecOps
AUGNYC
 
Future of Your Atlassian Platform - Data Center and Cloud Migration
AUGNYC
 
Bridging the Gap: Team Collaboration with Backbone – Issue Sync for JIRA
K15t
 
Team 21 Recap and ScriptRunner in the Cloud
AUGNYC
 
AUG NYC Presentation Feb 13 Event
AUGNYC
 
ACE NYC November 2021 Slideshare Deck
AUGNYC
 
Architecting Atlassian for Healthcare and FDA Compliance
Atlassian
 
Unlock DevOps success with Atlassian - www.bdq.cloud
Ryan Dobson ☁
 

What's hot (17)

PDF
Mission Possible: How VMware's Private Cloud Migrated to Jira Service Desk
Atlassian
 
PDF
Improve Customer Service with Automated Sales and Order Lifecycle Processes U...
Atlassian
 
PPTX
DevOpsGuys - Cloud Adoption Frameworks - IPExpo April 2018
DevOpsGroup
 
PDF
Ultimate Dogfooding: Behind the Scenes of Building the New Jira
Atlassian
 
PDF
Focus, Governance, and Innovation: How LinkedIn Scaled to 3M Jira Issues and ...
Atlassian
 
PDF
How to Develop, Track, and Release Like a Boss Using Atlassian Tools
Atlassian
 
PPTX
Cloud-Native Workshop New York- Pivotal
VMware Tanzu
 
PPTX
DevOpsGroup Cloud Adoption Frameworks - agile south coast
DevOpsGroup
 
PDF
The Coming Tsunami in Microservices: Operating Microservices at Scale
Cprime
 
PDF
Jira & Ansible: Streamlining Jira Server Administration for the Enterprise
Atlassian
 
PDF
The Top 5 Skills Enterprise Admins Need to Know
Atlassian
 
PDF
Business value pipeline with atlassian products
智治 長沢
 
PDF
How Atlassian Manages Risk and Compliance with Jira Software and Confluence
Atlassian
 
PDF
The Big Migration: How Cerner Moved From Confluence 3.5 to 5.8
Atlassian
 
PDF
Going Right! Software Delivery with Atlassian Solution
智治 長沢
 
PDF
JIRA Keynote Summit 2014
Atlassian
 
PPTX
Stephane Lapointe: L’expérience DEVTEST
MSDEVMTL
 
Mission Possible: How VMware's Private Cloud Migrated to Jira Service Desk
Atlassian
 
Improve Customer Service with Automated Sales and Order Lifecycle Processes U...
Atlassian
 
DevOpsGuys - Cloud Adoption Frameworks - IPExpo April 2018
DevOpsGroup
 
Ultimate Dogfooding: Behind the Scenes of Building the New Jira
Atlassian
 
Focus, Governance, and Innovation: How LinkedIn Scaled to 3M Jira Issues and ...
Atlassian
 
How to Develop, Track, and Release Like a Boss Using Atlassian Tools
Atlassian
 
Cloud-Native Workshop New York- Pivotal
VMware Tanzu
 
DevOpsGroup Cloud Adoption Frameworks - agile south coast
DevOpsGroup
 
The Coming Tsunami in Microservices: Operating Microservices at Scale
Cprime
 
Jira & Ansible: Streamlining Jira Server Administration for the Enterprise
Atlassian
 
The Top 5 Skills Enterprise Admins Need to Know
Atlassian
 
Business value pipeline with atlassian products
智治 長沢
 
How Atlassian Manages Risk and Compliance with Jira Software and Confluence
Atlassian
 
The Big Migration: How Cerner Moved From Confluence 3.5 to 5.8
Atlassian
 
Going Right! Software Delivery with Atlassian Solution
智治 長沢
 
JIRA Keynote Summit 2014
Atlassian
 
Stephane Lapointe: L’expérience DEVTEST
MSDEVMTL
 
Ad

Similar to Tales of modernizing trello's web stack (20)

PDF
Codemotion Berlin 2015 recap
Torben Dohrn
 
PPTX
How HubSpot Builds its Engineering Culture (While Maintaining Speed)
HubSpot
 
PDF
Simplified DevOps Bliss -with OpenAI API
VictorSzoltysek
 
PDF
Scaling Autonomy in a FinTech Unicorn - WeAreDevelopers 2019
Alvar Lumberg
 
PDF
Wrangling Large Scale Frontend Web Applications
Ryan Roemer
 
PDF
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
Bill Scott
 
PDF
GitLab Frontend and VueJS at GitLab
Fatih Acet
 
PDF
Progressive Web Apps 101 - NationJS
Frances Coronel
 
PDF
React Native for Business Solutions: Building Scalable Apps for Success
Amelia Swank
 
PPTX
WebVisions: ISITE Design and CCLI on Platformication
ISITE Design is now Connective DX
 
PPTX
Cloud foundry, Lessons Learned at The Home Depot
James Watters
 
PPTX
Enhancing Software Engineering Practices at Our Startup.pptx
muktar42
 
PDF
QCon SF 2022: The Secret to Finding Impactful Projects to Land a Staff-Plus E...
Akhilesh Gupta
 
PDF
GraphQL Munich Meetup #1 - How We Use GraphQL At Commercetools
Nicola Molinari
 
PDF
Gustavo Delgado - Qué esperan de tí como desarrollador remoto
9punto5
 
PDF
Enabling Lean at Enterprise Scale: Lean Engineering in Action
Hyperdrive Agile Leadership (powered by Bratton & Company)
 
PDF
"React applications Failures", Nikita Galkin
Fwdays
 
PPTX
HotelQuickly Product & Engineering
Michal Juhas
 
PDF
Lean Engineering: How to make Engineering a full Lean UX partner
Bill Scott
 
PDF
Get your mobile app in production in 3 months: Native and Reactive Mobile Apps
Ackee
 
Codemotion Berlin 2015 recap
Torben Dohrn
 
How HubSpot Builds its Engineering Culture (While Maintaining Speed)
HubSpot
 
Simplified DevOps Bliss -with OpenAI API
VictorSzoltysek
 
Scaling Autonomy in a FinTech Unicorn - WeAreDevelopers 2019
Alvar Lumberg
 
Wrangling Large Scale Frontend Web Applications
Ryan Roemer
 
8 Principles for Enabling Build/Measure/Learn: Lean Engineering in Action
Bill Scott
 
GitLab Frontend and VueJS at GitLab
Fatih Acet
 
Progressive Web Apps 101 - NationJS
Frances Coronel
 
React Native for Business Solutions: Building Scalable Apps for Success
Amelia Swank
 
WebVisions: ISITE Design and CCLI on Platformication
ISITE Design is now Connective DX
 
Cloud foundry, Lessons Learned at The Home Depot
James Watters
 
Enhancing Software Engineering Practices at Our Startup.pptx
muktar42
 
QCon SF 2022: The Secret to Finding Impactful Projects to Land a Staff-Plus E...
Akhilesh Gupta
 
GraphQL Munich Meetup #1 - How We Use GraphQL At Commercetools
Nicola Molinari
 
Gustavo Delgado - Qué esperan de tí como desarrollador remoto
9punto5
 
Enabling Lean at Enterprise Scale: Lean Engineering in Action
Hyperdrive Agile Leadership (powered by Bratton & Company)
 
"React applications Failures", Nikita Galkin
Fwdays
 
HotelQuickly Product & Engineering
Michal Juhas
 
Lean Engineering: How to make Engineering a full Lean UX partner
Bill Scott
 
Get your mobile app in production in 3 months: Native and Reactive Mobile Apps
Ackee
 
Ad

More from Vincent Kok (14)

PDF
Why you're failing your remote workers - DWSC18
Vincent Kok
 
PDF
Microservices 5 things i wish i'd known java with the best 2018
Vincent Kok
 
PDF
Dev opstalks 2018 releasing the monolith on a daily basis
Vincent Kok
 
PDF
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Vincent Kok
 
PDF
Microservices 5 Things I Wish I'd Known - JFall 2017
Vincent Kok
 
PDF
Need to-know patterns building microservices - java one
Vincent Kok
 
PDF
Microservices 5 things i wish i'd known code motion
Vincent Kok
 
PDF
Releasing the monolith on a daily basis - CodeMash
Vincent Kok
 
PDF
Confluence of Broken Windows JavaOne 2016
Vincent Kok
 
PDF
Connecting Connect with Spring Boot
Vincent Kok
 
PDF
Microservices 5 things i wish i'd known - The MeetUp edition
Vincent Kok
 
PDF
Microservices 5 things i wish i'd known
Vincent Kok
 
PDF
Irina Winterreis 2011
Vincent Kok
 
PPT
Irina Winterreis 2011
Vincent Kok
 
Why you're failing your remote workers - DWSC18
Vincent Kok
 
Microservices 5 things i wish i'd known java with the best 2018
Vincent Kok
 
Dev opstalks 2018 releasing the monolith on a daily basis
Vincent Kok
 
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Vincent Kok
 
Microservices 5 Things I Wish I'd Known - JFall 2017
Vincent Kok
 
Need to-know patterns building microservices - java one
Vincent Kok
 
Microservices 5 things i wish i'd known code motion
Vincent Kok
 
Releasing the monolith on a daily basis - CodeMash
Vincent Kok
 
Confluence of Broken Windows JavaOne 2016
Vincent Kok
 
Connecting Connect with Spring Boot
Vincent Kok
 
Microservices 5 things i wish i'd known - The MeetUp edition
Vincent Kok
 
Microservices 5 things i wish i'd known
Vincent Kok
 
Irina Winterreis 2011
Vincent Kok
 
Irina Winterreis 2011
Vincent Kok
 

Recently uploaded (20)

PPTX
AZ900_SLA_Pricing_2025_LondonIT (1).pptx
chumairabdullahph
 
PPT
Order to Cash Lifecycle Overview R12 .ppt
nbvreddy229
 
PDF
Solar Panel Installation Guide – Step By Step Process 2025.pdf
CRMLeaf
 
PPTX
oapresentation.pptx
mehatdhavalrajubhai
 
PDF
Protecting the Digital World Cyber Securit
dnthakkar16
 
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PDF
Community & News Update Q2 Meet Up 2025
VictoriaMetrics
 
PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PPTX
TestNG for Java Testing and Automation testing
ssuser0213cb
 
PDF
Exploring AI Agents in Process Industries
amoreira6
 
PDF
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
PPTX
Explanation about Structures in C language.pptx
Veeral Rathod
 
DOCX
The Future of Smart Factories Why Embedded Analytics Leads the Way
Varsha Nayak
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
A REACT POMODORO TIMER WEB APPLICATION.pdf
Michael624841
 
DOCX
The Five Best AI Cover Tools in 2025.docx
aivoicelabofficial
 
PDF
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PDF
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
AZ900_SLA_Pricing_2025_LondonIT (1).pptx
chumairabdullahph
 
Order to Cash Lifecycle Overview R12 .ppt
nbvreddy229
 
Solar Panel Installation Guide – Step By Step Process 2025.pdf
CRMLeaf
 
oapresentation.pptx
mehatdhavalrajubhai
 
Protecting the Digital World Cyber Securit
dnthakkar16
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Community & News Update Q2 Meet Up 2025
VictoriaMetrics
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
TestNG for Java Testing and Automation testing
ssuser0213cb
 
Exploring AI Agents in Process Industries
amoreira6
 
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
Explanation about Structures in C language.pptx
Veeral Rathod
 
The Future of Smart Factories Why Embedded Analytics Leads the Way
Varsha Nayak
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
A REACT POMODORO TIMER WEB APPLICATION.pdf
Michael624841
 
The Five Best AI Cover Tools in 2025.docx
aivoicelabofficial
 
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 

Tales of modernizing trello's web stack