Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS Summit Singapore 2019 | Delivering a Million Stories Across Asia - insight into HOOQ's Digital Journey

196 views

Published on

Speaker: Dwi Sasongko Supriyadi, Vice President of Engineering at HOOQ, New Relic Inc.

  • Be the first to comment

  • Be the first to like this

AWS Summit Singapore 2019 | Delivering a Million Stories Across Asia - insight into HOOQ's Digital Journey

  1. 1. SUMMIT SINGAPORE 2019
  2. 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Delivering a million stories across Asia Dwi Sasongko Supriyadi VP Engineering HOOQ SessionID
  3. 3. Hello. We are a million stories for a billion people.
  4. 4. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  5. 5. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Native app
  6. 6. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. PWA
  7. 7. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Smart TV
  8. 8. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. B2B
  9. 9. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Architecture Evolution
  10. 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Evolution Stage 1: Getting Up & Running Stage 2: Growing Pains Stage 3: Platform Sanity
  11. 11. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Stage 1: Getting Up and Running
  12. 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT
  13. 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Setup Server Node ES6 (Transpiled code in Production!) Nginx Postgres RDS & Redis Elasticache EC2+AutoScale+ELB Monitoring NewRelic APM + Insights NewRelic Alerts ELK CloudWatch
  14. 14. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Instrumentation from the beginning
  15. 15. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  16. 16. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Custom Events // recording playback API request newrelic.recordCustomEvent('catalog-play-get', { apiVersion: ctx.apiVersion, device: ctx.device, contentId: ctx.params.uuid, geoCountry: ctx.geo ? ctx.geo.country : 'INVALID', }, ctx.state.requestId);
  17. 17. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Custom Events Query
  18. 18. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Custom Events Timeseries
  19. 19. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Custom Events Most Popular Titles
  20. 20. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Events on Mobile public static void recordPlaybackSuccess(String playbackType, String contentId, long startPreparingTimeMillis) { long currentTime = System.currentTimeMillis(); double delay = (currentTime - startPreparingTimeMillis) / 1000.000; double totalDelay = (currentTime - Config.playButtonTapTime) / 1000.000; Map<String, Object> map = new HashMap<>(); map.put(ATTRIBUTE_KEY_EVENT_TYPE, playbackType); map.put(ATTRIBUTE_KEY_CONTENT_ID, contentId); map.put(ATTRIBUTE_KEY_DELAY, delay); map.put(ATTRIBUTE_KEY_PLAYBACK_START_TIME, totalDelay); map.put(ATTRIBUTE_KEY_SANCTUARY_DELAY, totalDelay - delay); map.put(ATTRIBUTE_KEY_EVENT_STATUS, ATTRIBUTE_VALUE_EVENT_SUCCESS); NewRelicReporting.addUserSkuAttributes(map); NewRelic.recordEvent(ATTRIBUTE_VALUE_EVENT_TYPE_PLAYBACK, map); Timber.d("NR playback success event: %s", map.toString()); }
  21. 21. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dashboard
  22. 22. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Stage 2: Growing Pains
  23. 23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Let’s build more service! Discovery Service Playback Service User Service Webview Service Messaging Service Unicorn Service ...
  24. 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT More Services ...
  25. 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Setup Server Node ES6/7, Go, Lua Nginx Postgres RDS & Redis Elasticache EC2+AutoScale+ELB Kong, API Gateway Lambda Monitoring NewRelic APM + Insights NewRelic Alerts ELK CloudWatch
  26. 26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Going to a new market ... It’s different level of complexity
  27. 27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Distributed Multi-Region Deployment [next] Multi-CDN New Approach
  28. 28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Multi-Region Deployment
  29. 29. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Stage 3: Platform Sanity
  30. 30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT It’s easy to get messy
  31. 31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT
  32. 32. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Rethinking of Platform Sanity ● Single Responsibility Principle ● Communicate via negotiable interfaces ● Collaboration ● Standardized & predictable deployment model
  33. 33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Convention ● Project Structure ● Development & Test Model ● Deployment Model ● Terraforming
  34. 34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT
  35. 35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Build & Deployment
  36. 36. SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Lesson Learned
  37. 37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT ● Build your product iteratively ● Evolve the architecture as we grow ● Data-informed instead of data-driven ● Spend more on product development and architecture capability The lesson
  38. 38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.SUMMIT Thank you! SUMMIT © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dwi Sasongko Supriyadi dwi@hooq.tv

×