Holiday Extras AWS use case

Holiday Extras AWS use case

Case Study of Holiday Extras and how we use AWS. Presented at AWS Sofia Conference 2018.

http://www.techhuddle.com/aws-sofia-2018

39bb8762f3a25ebc00ebd75bc4f363af?s=128

Simon Wood

April 20, 2018
Tweet

Transcript

  1. Holiday Extras AWS use case Simon Wood @hpoom

  2. Build a great end to end trip experience

  3. Understand our customers, their trips and their needs

  4. None
  5. None
  6. 120 strong technology team Add team shot

  7. Growing a team in Sofia

  8. Been on AWS for 7 years

  9. https://aws.amazon.com/solutions/case-studies/holiday-extras/

  10. Come a long way since then

  11. https://tech.holidayextras.com/performant-a-b-split-testing-with-lambda-edge-99673a492139 Lambda Edge • Can use Cloudfront • No page

    blink • No client side logic • Can write Javascript • No need for Nginx
  12. 'use strict'; exports.invoke = (event, context, callback) => { const

    request = event.Records[0].cf.request const headers = request.headers const experimentA = 'loadCriticalCSSFirstTest=Control' const experimentB = 'loadCriticalCSSFirstTest=Variant' const experimentActionA = '/index.html' const experimentActionB = '/jira123.index.html' let experimentUri if (headers.cookie) { for (let i = 0; i < headers.cookie.length; i++) { if (headers.cookie[i].value.indexOf(experimentA) >= 0) { experimentUri = experimentActionA break } else if (headers.cookie[i].value.indexOf(experimentB) >= 0) { experimentUri = pathExperimentB break } } } if (!experimentUri) { if (Math.random() < 0.5) { experimentUri = experimentActionA } else { experimentUri = experimentActionB } } request.uri = experimentUri callback(null, request) }
  13. None
  14. Microservices Mission

  15. “We want to empower developers to repeatedly deploy fast and

    often at scale. Removing the need for IT Infrastructure setup to get code into production” Andy Britcliffe
  16. None
  17. None
  18. From idea to production in under 5minutes

  19. None
  20. Node Toolkit • Authorisation • Caching • Context • Database

    • Data Platform • Debugging • Fixturing • Health Checking • Logging • Metrics • PubSub • Routing • RPC • Streaming to Storage
  21. None
  22. API First

  23. None
  24. AWS Hack Day

  25. We are building the future of travel

  26. We are hiring in Sofia

  27. Thank You Questions? @hpoom