SlideShare una empresa de Scribd logo
1 de 73
Descargar para leer sin conexión
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
From Idea to Customers:
Developing Modern Cloud-Enabled
Apps with AWS
M O B 2 0 1
Lisa Shon
Software Engineer
Amazon Web Services
Tomas Batalla
Software Engineer
Goodreads
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is Goodreads?
The world’s largest site for readers and book recommendations.
Our mission is to help people find and share books they love.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Our platforms
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
We have a lot of content
• 80 million users
• 2.3 billion books shelved
• 83 million text reviews
• With all this content, how can we help our users’ discover the next
great book for them?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Product Lifecycle
Idea Design Develop
DeployOperate
TestImprove
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Idea
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Design
• UI
• But also technology
• What platform will you use?
• How are you going to fetch the data?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Why cross-platform?
• Feature parity across mobile surfaces
(especially if design is “product specific”)
• Cost of development
• Over the air (OTA) updates
• Large open-source community support
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Why not cross-platform?
• Need to learn JavaScript
• Another surface to maintain
• Nascent technology
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Getting the data
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Solving our data fetching problem
• Does it solve the problem?
• Scale
• Domain Development
• Consistency
• Bonus: Fun
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
But it’s a service
We don’t want to run ops
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Design
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Develop
• Scope
• Unit tests
• Test Driven Development (TDD) — Red,
Green, Refactor
• Use environments
• Code review
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deployments
• Test
• Preprod environments
• Production
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App testing
• QA testing — Manual and Automated
• Beta/internal release
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Deploy
Release the app to our users
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Operational Metrics
• Crashes
• Latency
• Client errors and server errors
• Transactions per second (TPS)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Business metrics
• Shelvings
• Users
• Page views
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Improve
• How are customers responding?
• What do the metrics say?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Building on the feature
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Back to Design
Idea Design Develop
DeployOperate
TestImprove
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What problem am I solving?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What does my app look like?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What does my app look like?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Which platforms to support?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Platforms
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is the MVP for my app?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is the MVP for my app?
• Given a sentence
• And a language
• Return the translation in that language
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Interacting with services
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Domain objects
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GraphQL
• Strong typing
• Queries, mutations, subscriptions
• Client-specified shape of response
• Efficient
• Extensible
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS AppSync
http://
query/mutation
subscription
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS AppSync
Serverless Any
data source
Real-time data
GraphQL
facade
Conflict resolution
Enterprise security
Cross-platformOffline data
http://
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Resources in the Cloud
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Test
• Local testing in simulators and emulators
• Functional testing
• User experience testing
• Real-device testing
• Different form factors
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Real-device testing
Test Android, iOS, and web apps on real devices in the cloud
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Backend
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Backend
production
development
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Backend
production
development
continuous deployment
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How does my app perform?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Monitor resources and applications
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How is my app used?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How is my app used?
• Number of users
• Unfulfilled requests
• Most popular breed
• Time in app
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How is my app used?
Engage users via email, push, SMS & analytics
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Evaluate needs
• Improve retention
• Improve acquisition
• Improve stability
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Idea Design Develop
DeployOperate
TestImprove
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Resources
Sample app on Github:
https://github.com/dabit3/appsync-lambda-ai
Goodreads:
https://www.goodreads.com
https://www.goodreads.com/jobs (we’re hiring!)
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Lisa Shon
Tomas Batalla
Time: 15 minutes after this session
Location: Speaker Lounge (ARIA East, Level 1, Willow Lounge)
Duration: 30 min.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Analyze Amazon CloudFront and Lambda@Edge Logs to Improve Customer Experience...
Analyze Amazon CloudFront and Lambda@Edge Logs to Improve Customer Experience...Analyze Amazon CloudFront and Lambda@Edge Logs to Improve Customer Experience...
Analyze Amazon CloudFront and Lambda@Edge Logs to Improve Customer Experience...
 
Building an end to end image recognition service - Tel Aviv Summit 2018
Building an end to end image recognition service - Tel Aviv Summit 2018Building an end to end image recognition service - Tel Aviv Summit 2018
Building an end to end image recognition service - Tel Aviv Summit 2018
 
使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)
使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)
使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)
 
Machine Learning for the Enterprise, ft. Sony Interactive Entertainment (ENT2...
Machine Learning for the Enterprise, ft. Sony Interactive Entertainment (ENT2...Machine Learning for the Enterprise, ft. Sony Interactive Entertainment (ENT2...
Machine Learning for the Enterprise, ft. Sony Interactive Entertainment (ENT2...
 
AWS Compute Leadership Session: What’s New in Amazon EC2, Containers, and Ser...
AWS Compute Leadership Session: What’s New in Amazon EC2, Containers, and Ser...AWS Compute Leadership Session: What’s New in Amazon EC2, Containers, and Ser...
AWS Compute Leadership Session: What’s New in Amazon EC2, Containers, and Ser...
 
Go to Market with AWS - Kevin Park - AWS TechShift ANZ 2018
Go to Market with AWS - Kevin Park - AWS TechShift ANZ 2018Go to Market with AWS - Kevin Park - AWS TechShift ANZ 2018
Go to Market with AWS - Kevin Park - AWS TechShift ANZ 2018
 
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
 
Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28
 
Serverless Architectural Patterns and Best Practices (ARC305-R2) - AWS re:Inv...
Serverless Architectural Patterns and Best Practices (ARC305-R2) - AWS re:Inv...Serverless Architectural Patterns and Best Practices (ARC305-R2) - AWS re:Inv...
Serverless Architectural Patterns and Best Practices (ARC305-R2) - AWS re:Inv...
 
How Websites go Serverless - WebSummit Lisbon 2018
How Websites go Serverless - WebSummit Lisbon 2018How Websites go Serverless - WebSummit Lisbon 2018
How Websites go Serverless - WebSummit Lisbon 2018
 
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
 
Leadership Session: Accelerating Transformation in the Life Sciences (LFS201-...
Leadership Session: Accelerating Transformation in the Life Sciences (LFS201-...Leadership Session: Accelerating Transformation in the Life Sciences (LFS201-...
Leadership Session: Accelerating Transformation in the Life Sciences (LFS201-...
 
Serverless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLVServerless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLV
 
Build an Interactive Alexa Voice Experience for Multiple Screens (ALX314-R2) ...
Build an Interactive Alexa Voice Experience for Multiple Screens (ALX314-R2) ...Build an Interactive Alexa Voice Experience for Multiple Screens (ALX314-R2) ...
Build an Interactive Alexa Voice Experience for Multiple Screens (ALX314-R2) ...
 
Deep Dive on Amazon Rekognition, ft. Tinder & News UK (AIM307-R) - AWS re:Inv...
Deep Dive on Amazon Rekognition, ft. Tinder & News UK (AIM307-R) - AWS re:Inv...Deep Dive on Amazon Rekognition, ft. Tinder & News UK (AIM307-R) - AWS re:Inv...
Deep Dive on Amazon Rekognition, ft. Tinder & News UK (AIM307-R) - AWS re:Inv...
 
Track 1_Session 2_SAP on AWS - Running your critical workloads.pdf
Track 1_Session 2_SAP on AWS - Running your critical workloads.pdfTrack 1_Session 2_SAP on AWS - Running your critical workloads.pdf
Track 1_Session 2_SAP on AWS - Running your critical workloads.pdf
 
Build Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWSBuild Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWS
 
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
 
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMakerBDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
 
How Peak.AI Uses Amazon SageMaker for Product Personalization (GPSTEC316) - A...
How Peak.AI Uses Amazon SageMaker for Product Personalization (GPSTEC316) - A...How Peak.AI Uses Amazon SageMaker for Product Personalization (GPSTEC316) - A...
How Peak.AI Uses Amazon SageMaker for Product Personalization (GPSTEC316) - A...
 

Similar a From Idea to Customers: Developing Modern Cloud-Enabled Apps with AWS (MOB201) - AWS re:Invent 2018

100 Billion Data Points With Lambda_AWSPSSummit_Singapore
100 Billion Data Points With Lambda_AWSPSSummit_Singapore100 Billion Data Points With Lambda_AWSPSSummit_Singapore
100 Billion Data Points With Lambda_AWSPSSummit_Singapore
Amazon Web Services
 

Similar a From Idea to Customers: Developing Modern Cloud-Enabled Apps with AWS (MOB201) - AWS re:Invent 2018 (20)

Moving to DevOps
Moving to DevOpsMoving to DevOps
Moving to DevOps
 
Life of a Code Change to a Tier 1 Service - AWS Online Tech Talks
Life of a Code Change to a Tier 1 Service - AWS Online Tech TalksLife of a Code Change to a Tier 1 Service - AWS Online Tech Talks
Life of a Code Change to a Tier 1 Service - AWS Online Tech Talks
 
Engage your audience through mobile
Engage your audience through mobileEngage your audience through mobile
Engage your audience through mobile
 
Introduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day JerusalemIntroduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day Jerusalem
 
Chaos Engineering and Scalability at Audible.com (ARC308) - AWS re:Invent 2018
Chaos Engineering and Scalability at Audible.com (ARC308) - AWS re:Invent 2018Chaos Engineering and Scalability at Audible.com (ARC308) - AWS re:Invent 2018
Chaos Engineering and Scalability at Audible.com (ARC308) - AWS re:Invent 2018
 
Continuously Delivering Your Software on AWS - Adrian White - AWS TechShift A...
Continuously Delivering Your Software on AWS - Adrian White - AWS TechShift A...Continuously Delivering Your Software on AWS - Adrian White - AWS TechShift A...
Continuously Delivering Your Software on AWS - Adrian White - AWS TechShift A...
 
Rapid Development using Serverless Infrastructure - Tel Aviv Summit 2018
Rapid Development using Serverless Infrastructure - Tel Aviv Summit 2018Rapid Development using Serverless Infrastructure - Tel Aviv Summit 2018
Rapid Development using Serverless Infrastructure - Tel Aviv Summit 2018
 
100 Billion Data Points With Lambda_AWSPSSummit_Singapore
100 Billion Data Points With Lambda_AWSPSSummit_Singapore100 Billion Data Points With Lambda_AWSPSSummit_Singapore
100 Billion Data Points With Lambda_AWSPSSummit_Singapore
 
Launch Applications the Amazon Way: AWS Startup Day - New York 2018
Launch Applications the Amazon Way: AWS Startup Day - New York 2018Launch Applications the Amazon Way: AWS Startup Day - New York 2018
Launch Applications the Amazon Way: AWS Startup Day - New York 2018
 
Operating at Scale- Preparing for the Journey [Portuguese]
Operating at Scale- Preparing for the Journey [Portuguese]Operating at Scale- Preparing for the Journey [Portuguese]
Operating at Scale- Preparing for the Journey [Portuguese]
 
Moving to DevOps the Amazon Way
Moving to DevOps the Amazon WayMoving to DevOps the Amazon Way
Moving to DevOps the Amazon Way
 
Culture Shock: How a Legacy, Siloed Organization Can Move to the Cloud
Culture Shock: How a Legacy, Siloed Organization Can Move to the CloudCulture Shock: How a Legacy, Siloed Organization Can Move to the Cloud
Culture Shock: How a Legacy, Siloed Organization Can Move to the Cloud
 
Keynote: AWS Startup Day São Paulo
Keynote: AWS Startup Day São PauloKeynote: AWS Startup Day São Paulo
Keynote: AWS Startup Day São Paulo
 
The Future of API Management Is Serverless
The Future of API Management Is ServerlessThe Future of API Management Is Serverless
The Future of API Management Is Serverless
 
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
Chaos Engineering: Why Breaking Things Should Be Practiced - AWS Developer Wo...
 
Remove Undifferentiated Heavy Lifting from CI/CD Toolsets with Corteva Agrisc...
Remove Undifferentiated Heavy Lifting from CI/CD Toolsets with Corteva Agrisc...Remove Undifferentiated Heavy Lifting from CI/CD Toolsets with Corteva Agrisc...
Remove Undifferentiated Heavy Lifting from CI/CD Toolsets with Corteva Agrisc...
 
Dev348 ReInvent Corteva Agriscience
Dev348   ReInvent Corteva AgriscienceDev348   ReInvent Corteva Agriscience
Dev348 ReInvent Corteva Agriscience
 
Releasing Mission-Critical Software at Amazon (DEV209-R1) - AWS re:Invent 2018
Releasing Mission-Critical Software at Amazon (DEV209-R1) - AWS re:Invent 2018Releasing Mission-Critical Software at Amazon (DEV209-R1) - AWS re:Invent 2018
Releasing Mission-Critical Software at Amazon (DEV209-R1) - AWS re:Invent 2018
 
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
 
Now You See It, Now You Don't: Augmented Reality (AR) and Virtual Reality (VR...
Now You See It, Now You Don't: Augmented Reality (AR) and Virtual Reality (VR...Now You See It, Now You Don't: Augmented Reality (AR) and Virtual Reality (VR...
Now You See It, Now You Don't: Augmented Reality (AR) and Virtual Reality (VR...
 

Más de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Más de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

From Idea to Customers: Developing Modern Cloud-Enabled Apps with AWS (MOB201) - AWS re:Invent 2018

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. From Idea to Customers: Developing Modern Cloud-Enabled Apps with AWS M O B 2 0 1 Lisa Shon Software Engineer Amazon Web Services Tomas Batalla Software Engineer Goodreads
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is Goodreads? The world’s largest site for readers and book recommendations. Our mission is to help people find and share books they love.
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Our platforms
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. We have a lot of content • 80 million users • 2.3 billion books shelved • 83 million text reviews • With all this content, how can we help our users’ discover the next great book for them?
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Product Lifecycle Idea Design Develop DeployOperate TestImprove
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Idea
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Design • UI • But also technology • What platform will you use? • How are you going to fetch the data?
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why cross-platform? • Feature parity across mobile surfaces (especially if design is “product specific”) • Cost of development • Over the air (OTA) updates • Large open-source community support
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Why not cross-platform? • Need to learn JavaScript • Another surface to maintain • Nascent technology
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Getting the data
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Solving our data fetching problem • Does it solve the problem? • Scale • Domain Development • Consistency • Bonus: Fun
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. But it’s a service We don’t want to run ops
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Design
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Develop • Scope • Unit tests • Test Driven Development (TDD) — Red, Green, Refactor • Use environments • Code review
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Deployments • Test • Preprod environments • Production
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App testing • QA testing — Manual and Automated • Beta/internal release
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Deploy Release the app to our users
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Operational Metrics • Crashes • Latency • Client errors and server errors • Transactions per second (TPS)
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Business metrics • Shelvings • Users • Page views
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Improve • How are customers responding? • What do the metrics say?
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Building on the feature
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Back to Design Idea Design Develop DeployOperate TestImprove
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What problem am I solving?
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What does my app look like?
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What does my app look like?
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Which platforms to support?
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Platforms
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is the MVP for my app?
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is the MVP for my app? • Given a sentence • And a language • Return the translation in that language
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Interacting with services
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Domain objects
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. GraphQL • Strong typing • Queries, mutations, subscriptions • Client-specified shape of response • Efficient • Extensible
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS AppSync http:// query/mutation subscription
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS AppSync Serverless Any data source Real-time data GraphQL facade Conflict resolution Enterprise security Cross-platformOffline data http://
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Resources in the Cloud
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 44. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 45.
  • 46. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 47. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Test • Local testing in simulators and emulators • Functional testing • User experience testing • Real-device testing • Different form factors
  • 48. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Real-device testing Test Android, iOS, and web apps on real devices in the cloud
  • 49. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 50.
  • 51. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 52. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Backend
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Backend production development
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Backend production development continuous deployment
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How does my app perform?
  • 57. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Monitor resources and applications
  • 58.
  • 59. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How is my app used?
  • 60. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How is my app used? • Number of users • Unfulfilled requests • Most popular breed • Time in app
  • 61. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How is my app used? Engage users via email, push, SMS & analytics
  • 62. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 63.
  • 64. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 65. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Evaluate needs • Improve retention • Improve acquisition • Improve stability
  • 66. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 67.
  • 68. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 69. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Idea Design Develop DeployOperate TestImprove
  • 70. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Resources Sample app on Github: https://github.com/dabit3/appsync-lambda-ai Goodreads: https://www.goodreads.com https://www.goodreads.com/jobs (we’re hiring!)
  • 71. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Lisa Shon Tomas Batalla
  • 72. Time: 15 minutes after this session Location: Speaker Lounge (ARIA East, Level 1, Willow Lounge) Duration: 30 min.
  • 73. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.