Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Khalil's Project @WeTransfer in 2017, Pitched @...

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Khalil's Project @WeTransfer in 2017, Pitched @Codaisseur

I used these slides to present my project @Codaisseur Demo Night 05-03-2017.
Its primary goal was to give the audience an oversimplified indication of what I was working on and how it felt for me working with a large code base and legacy code.

The keys schema on slide #9 represents the I18n translation keys.
Each branch of those keys had its own tests, logic, style, translation strings... etc.

😄✌️ pic.twitter.com/guzI2pFwMs— Khalil Gharbaoui (@kkgg187) 5 maart 2017

>> http://khalilgharbaoui.codez.it

Avatar for Khalil Gharbaoui

Khalil Gharbaoui

March 05, 2017
Tweet

Other Decks in Programming

Transcript

  1. Introductions Martijn Vermaat • Platform Engineer and Team Lead at

    WeTransfer • Love running and climbing Khalil Gharbaoui • Used to be SEO / WebDesigner • Batch #1 Codaisseur Alumnus • Started 1 December 2016 @ WeTransfer • Current position: Software Engineer • Love pizza and cats.
  2. About WeTransfer • 40 million active users monthly • 1

    billion files transferred every month • WeTransfer is used a 100 million times a month • The service is used in 195 countries • Revenue is from ads and Plus user accounts • We give away 30% of our wallpapers to artists, designers and organisations we love What some of you probably don’t know WeTransfer has around 75 employees in 2017. Locations: Amsterdam and Los Angeles 
 The stack is Ruby, Elixir, Go
  3. First Project:
 Emails! Every Transfer has 3 to 5 emails

    attached to it. We're sending around 100M emails a month.
 That's 40 emails a second! Rebuilding WeTransfer’s email engine. With a new design and new copy. Which means new behaviour and logic and tests, templates, markdown, styles, etc… See The Challenges In the Next Slides |—>> 
 <<—| See More Info About In The Previous Slides ( Also See Slide #9 )
  4. The Challenges • More than 40 different kinds of emails

    • Emails must work on every type of device and on all clients. • Emails have to be in 8 different languages. • Close collaboration between different departments • Mammoth size legacy codebase
  5. “How do you eat an elephant? One bite at a

    time!” - Julik Tarkhanov - Break down the code into partials Breath… Make naming and reference system for easy collaboration Calm down write tests and continue Create a diagram to keep track of it all. Keep trying, Google it, Stack overflow it.. Not be afraid to ask questions… Repeat!
 To give you an indication of the amount of code (next slide)
  6. Having Khalil in the team • Khalil is a hard

    worker and enormously eager to learn • There’s plenty to learn from his more experienced colleagues • His first project was a big one • Tackled both technical and organisational challenges
  7. Want to see if the emails work?
 The END send

    a file to yourself on: wetransfer.com