Serverless Culture
Microservices
• Chose Framework
• Define Principles
• Develop
• Deploy – CI/CD - ELB - Capacity Planning…
Serverless Culture
Adopting Serverless Architecture
Adopting Serverless
Culture
Architecture
Guruprasad Holla
Founder, Quiznext
Head of Engineering @Vidyanext
Principle Architect @Harman, @ADITI
15+Years building solutions for ISVs, B2B and B2C
QuizNext- 3x Practice App for CBSE&ICSE
• Gamified learning app
• Supports real time 1:1 challenges, Delivers Quizzes, Live
completions for CBSE/ICSE 6-10
• Backed completely by serverless
• ~100K users
• 10M+ Server calls
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
• Amplify client for GraphQL
• Two API end points
• Content Access
• Quiz Service - user data,
performance, points,
challenges etc
• Subscriptions for live challenges and
leader board updates
• In app notifications
• GraphQL - Offline access to data
AWS AppSync
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
• User authentication
• Phone number validation
• OTP Verification(SNS)
Amazon Cognito
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
• User data, Challenges data,
recommendations and some content
meta data
• Most of direct CRUD operations are
driven by Appsync – dynamo db
templates
• Some data access is routed through
lambda functions
Amazon DynamoDB
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
• Question Content storage
• Question Templates, Live
quiz questions
• Dynamo DB archived
elements
• App Images
AWS S3
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
• Triggered from appsync
• Event driven cleanup jobs
• ranking jobs
• test creation jobs etc
• Recommendation generations
• SQS based auto respond jobs
• In memory cache
AWS Lambda
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
QuizNext
Architecture
(AWS)
AWS Cloud
AWS Lambda
Amazon CloudWatch
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
Amazon Simple
Notification Service
Amazon Simple
Queue Service
Amazon Athena
QuizNext
Architecture
AWS Cloud
AWS Lambda
Cloud Watch
Events
Amazon Cognito
AWS S3
GraphQL
AWS AppSync
Amazon DynamoDB
Amazon Pinpoint
SNS
SQS
Amazon Athena
Amazon EC2
How did we land here?
Webhooks for CRM
• HA Service for sales reversal
• Not too simple, not too complex
• Unpredictable load
• Internal CRM Users
• Stateless
Amazon API Gateway
AWS Lambda
Payment Receiver Webhook
• HA Service
• Used only during end of the month
• High traceability and logging
• Independent DB
• CRM Integration
Amazon API Gateway
AWS Lambda
Amazon DynamoDB
Today at QuizNext
< 100$/Month to
support 20K active
users
AppSync 10M server
calls a month for
20$
0 downtime
Incremental
deployments
No peak time panics No log cleaning, disc
overrun etc
3 environments
automated by cloud
formation
All configurations are backed
on Git
What did we learn?
Serverless Culture
“Change the way we look at services”
FaaS
Function 1
Function 2
Function 3
Function 4
Function 5
+ BaaS
Think about scale on day 1
• Is your implementation scalable?
• Can code run multi instance?
• Will your code timeout?
• DynamoDB Scan vs Query
• Indexes, Composite keys
• Host affinity?
Think about atomicity
• Triggers are not evil
• Resources as packages
• Explore SQS, S3, Cloudwatch etc
Update Score
Calculate Rank
Update Score
Trigger Ranker
Calculate Rank
Think of micro jobs
• Explore triggers
• Can we delay this?
• Can we clean it up later?
• Aggregation, rollups etc
• Look for timeouts
Update Score
Calculate Rank
MVP at architecture level
• Know your extension options
• Throwing hardware/resource is easy and cheaper
• Cost of redesign is smaller
Resolver
Templates
Think about cost
• Understand how you are billed
• Its complicated - so tag resources
• Use cost explorer and breakdown costing data
• Set min capacity for dev/test environment
Think about UX
• Are you writing critical data?
• When do you need confirmations
• What can be delay executed
Update Score
Calculate Rank
Update Score
Trigger Ranker
Calculate Rank
Be script ready
Everything is programmable
• Migrations are easy
• You can modify resources
• You can modify configs
Do not overengineer
• You can do it later
Explore tooling
Questions?
Serverless Culture
Thank you
g p r a s a d h o l l a
Guruprasad Holla
#serverless #aws #gamification #edtech

More Related Content

PPTX
Using AWS Lambda for Infrastructure Automation and Beyond
PPTX
Serverless computing
PDF
Serverless presentation
PDF
To Serverless And Beyond!
PDF
Sloppy Little Serverless Stories
PDF
Thinking Asynchronously Full Vesion - Utah UG
PPTX
Artificial Intelligence & Machine learning foundation topic in AWS
PDF
State of serverless
Using AWS Lambda for Infrastructure Automation and Beyond
Serverless computing
Serverless presentation
To Serverless And Beyond!
Sloppy Little Serverless Stories
Thinking Asynchronously Full Vesion - Utah UG
Artificial Intelligence & Machine learning foundation topic in AWS
State of serverless

Similar to Serverless Culture (17)

PPTX
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
PPTX
Serverless Microservices - Real life story of a Web App that uses AWS Lambda
PPTX
Microservices Architecture for Content Management Systems using AWS Lambda an...
PPTX
Building Scalable Web Applications using Microservices Architecture and Serve...
PDF
Big data and serverless - AWS UG The Netherlands
PPTX
Serverless without Code (Lambda)
PPTX
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
PDF
Deep Dive on Microservices and Docker
PPTX
Fin jaws 202103
PDF
Serverless — it all started in Vegas
PPTX
Being Well Architected in the Cloud (Updated)
PDF
Build an app on aws for your first 10 million users (2)
PDF
Aws-What You Need to Know_Simon Elisha
PPTX
AWS Meetup Fort Lauderdale Re:invent Recap
PPTX
Journey Towards Scaling Your Application to Million Users
PPTX
re:Invent Recap-AWSMeetup
PDF
A Multi-Tenancy Cloud-Native Digital Library Platform
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Serverless Microservices - Real life story of a Web App that uses AWS Lambda
Microservices Architecture for Content Management Systems using AWS Lambda an...
Building Scalable Web Applications using Microservices Architecture and Serve...
Big data and serverless - AWS UG The Netherlands
Serverless without Code (Lambda)
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
Deep Dive on Microservices and Docker
Fin jaws 202103
Serverless — it all started in Vegas
Being Well Architected in the Cloud (Updated)
Build an app on aws for your first 10 million users (2)
Aws-What You Need to Know_Simon Elisha
AWS Meetup Fort Lauderdale Re:invent Recap
Journey Towards Scaling Your Application to Million Users
re:Invent Recap-AWSMeetup
A Multi-Tenancy Cloud-Native Digital Library Platform
Ad

More from AWS User Group Bengaluru (20)

PDF
Demystifying identity on AWS
PPTX
AWS Secrets for Best Practices
PPTX
Cloud Security
PDF
Lessons learnt building a Distributed Linked List on S3
PDF
Medlife journey with AWS
PPTX
Building Efficient, Scalable and Resilient Front-end logging service with AWS
PPTX
Exploring opportunities with communities for a successful career
PPTX
Slack's transition away from a single AWS account
PDF
Log analytics with ELK stack
PPTX
Refactoring to serverless
PDF
Amazon EC2 Spot Instances Workshop
PPTX
Building Efficient, Scalable and Resilient Front-end logging service with AWS
PDF
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
PPTX
AWS Secrets for Best Practices
PPTX
Exploring opportunities with communities for a successful career
PDF
Lessons learnt building a Distributed Linked List on S3
PPTX
Cloud Security
PDF
Amazon EC2 Spot Instances
PDF
Cost Optimization in AWS
PPTX
Keynote - Chaos Engineering: Why breaking things should be practiced
Demystifying identity on AWS
AWS Secrets for Best Practices
Cloud Security
Lessons learnt building a Distributed Linked List on S3
Medlife journey with AWS
Building Efficient, Scalable and Resilient Front-end logging service with AWS
Exploring opportunities with communities for a successful career
Slack's transition away from a single AWS account
Log analytics with ELK stack
Refactoring to serverless
Amazon EC2 Spot Instances Workshop
Building Efficient, Scalable and Resilient Front-end logging service with AWS
Medlife's journey with AWS from 0(zero) orders to 6 digit mark
AWS Secrets for Best Practices
Exploring opportunities with communities for a successful career
Lessons learnt building a Distributed Linked List on S3
Cloud Security
Amazon EC2 Spot Instances
Cost Optimization in AWS
Keynote - Chaos Engineering: Why breaking things should be practiced
Ad

Recently uploaded (20)

PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
Two-dimensional Klein-Gordon and Sine-Gordon numerical solutions based on dee...
PPTX
Chapter 5: Probability Theory and Statistics
DOCX
search engine optimization ppt fir known well about this
PDF
The influence of sentiment analysis in enhancing early warning system model f...
PPTX
2018-HIPAA-Renewal-Training for executives
PDF
sbt 2.0: go big (Scala Days 2025 edition)
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPTX
Configure Apache Mutual Authentication
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Custom Battery Pack Design Considerations for Performance and Safety
PPT
What is a Computer? Input Devices /output devices
PPT
Module 1.ppt Iot fundamentals and Architecture
PPT
Geologic Time for studying geology for geologist
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
CloudStack 4.21: First Look Webinar slides
PDF
Credit Without Borders: AI and Financial Inclusion in Bangladesh
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Two-dimensional Klein-Gordon and Sine-Gordon numerical solutions based on dee...
Chapter 5: Probability Theory and Statistics
search engine optimization ppt fir known well about this
The influence of sentiment analysis in enhancing early warning system model f...
2018-HIPAA-Renewal-Training for executives
sbt 2.0: go big (Scala Days 2025 edition)
Zenith AI: Advanced Artificial Intelligence
Convolutional neural network based encoder-decoder for efficient real-time ob...
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Configure Apache Mutual Authentication
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Custom Battery Pack Design Considerations for Performance and Safety
What is a Computer? Input Devices /output devices
Module 1.ppt Iot fundamentals and Architecture
Geologic Time for studying geology for geologist
Enhancing emotion recognition model for a student engagement use case through...
CloudStack 4.21: First Look Webinar slides
Credit Without Borders: AI and Financial Inclusion in Bangladesh

Serverless Culture

  • 3. • Chose Framework • Define Principles • Develop • Deploy – CI/CD - ELB - Capacity Planning…
  • 7. Guruprasad Holla Founder, Quiznext Head of Engineering @Vidyanext Principle Architect @Harman, @ADITI 15+Years building solutions for ISVs, B2B and B2C
  • 8. QuizNext- 3x Practice App for CBSE&ICSE • Gamified learning app • Supports real time 1:1 challenges, Delivers Quizzes, Live completions for CBSE/ICSE 6-10 • Backed completely by serverless • ~100K users • 10M+ Server calls
  • 9. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena
  • 10. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena • Amplify client for GraphQL • Two API end points • Content Access • Quiz Service - user data, performance, points, challenges etc • Subscriptions for live challenges and leader board updates • In app notifications • GraphQL - Offline access to data AWS AppSync
  • 11. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena • User authentication • Phone number validation • OTP Verification(SNS) Amazon Cognito
  • 12. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena • User data, Challenges data, recommendations and some content meta data • Most of direct CRUD operations are driven by Appsync – dynamo db templates • Some data access is routed through lambda functions Amazon DynamoDB
  • 13. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena • Question Content storage • Question Templates, Live quiz questions • Dynamo DB archived elements • App Images AWS S3
  • 14. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena • Triggered from appsync • Event driven cleanup jobs • ranking jobs • test creation jobs etc • Recommendation generations • SQS based auto respond jobs • In memory cache AWS Lambda
  • 15. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena
  • 16. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena
  • 17. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena
  • 18. QuizNext Architecture (AWS) AWS Cloud AWS Lambda Amazon CloudWatch Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint Amazon Simple Notification Service Amazon Simple Queue Service Amazon Athena
  • 19. QuizNext Architecture AWS Cloud AWS Lambda Cloud Watch Events Amazon Cognito AWS S3 GraphQL AWS AppSync Amazon DynamoDB Amazon Pinpoint SNS SQS Amazon Athena Amazon EC2
  • 20. How did we land here?
  • 21. Webhooks for CRM • HA Service for sales reversal • Not too simple, not too complex • Unpredictable load • Internal CRM Users • Stateless Amazon API Gateway AWS Lambda
  • 22. Payment Receiver Webhook • HA Service • Used only during end of the month • High traceability and logging • Independent DB • CRM Integration Amazon API Gateway AWS Lambda Amazon DynamoDB
  • 23. Today at QuizNext < 100$/Month to support 20K active users AppSync 10M server calls a month for 20$ 0 downtime Incremental deployments No peak time panics No log cleaning, disc overrun etc 3 environments automated by cloud formation All configurations are backed on Git
  • 24. What did we learn?
  • 26. “Change the way we look at services”
  • 27. FaaS Function 1 Function 2 Function 3 Function 4 Function 5 + BaaS
  • 28. Think about scale on day 1 • Is your implementation scalable? • Can code run multi instance? • Will your code timeout? • DynamoDB Scan vs Query • Indexes, Composite keys • Host affinity?
  • 29. Think about atomicity • Triggers are not evil • Resources as packages • Explore SQS, S3, Cloudwatch etc Update Score Calculate Rank Update Score Trigger Ranker Calculate Rank
  • 30. Think of micro jobs • Explore triggers • Can we delay this? • Can we clean it up later? • Aggregation, rollups etc • Look for timeouts Update Score Calculate Rank
  • 31. MVP at architecture level • Know your extension options • Throwing hardware/resource is easy and cheaper • Cost of redesign is smaller Resolver Templates
  • 32. Think about cost • Understand how you are billed • Its complicated - so tag resources • Use cost explorer and breakdown costing data • Set min capacity for dev/test environment
  • 33. Think about UX • Are you writing critical data? • When do you need confirmations • What can be delay executed Update Score Calculate Rank Update Score Trigger Ranker Calculate Rank
  • 34. Be script ready Everything is programmable • Migrations are easy • You can modify resources • You can modify configs Do not overengineer • You can do it later Explore tooling
  • 37. Thank you g p r a s a d h o l l a Guruprasad Holla #serverless #aws #gamification #edtech