AWS Summit 2019 - Session 7: Serverless - College Board app
June 17, 2019•446 words
They used
- serverless
- ReactJS
- DynamoDB
- Congnito
AWS Fargate - fully managed container service, options for scaling
decompose for agility
microservices
two pizza team - teams big enough
belts and suspenders - governance and templates, flexibility instead of enforcement
IaC
AWS CodePipeline
Commit > Build > {Testing} > Deploy > X-Ray (Monitoring)
Use Cloud Development Kit to write out infrastructure with CloudFormation, then that sets up the pipeline
AWS SAM - server application model
Use of DynamoDB
Cognito -
connects to a bunch of stuff, has lots of policy options, can hook to Lambda
AWS Amplify - JS library declarative interface for stuff like auth
basically the toolkit if you're writing an Amazon app
College Board
- College Board might be a good parallel to us, given how they work with multiple colleges etc
- Scholarships timed out over period of time to motivate and engage students to carry them through
- nudges at critical points througout their junior and senior year
- custom app with path
- each path point links to a website that has the content they want, presuming they built feedback loop as well to get confirmation back
- data-wise they are tracking a lot of activities from students #### Process
- quarterly planning cycle
- made scrum team
- "as a team they want to build an SPA so that can learn about Catapault" - an internal labelling of Cognito
- 191 calendar days (133 business days)
- 105 days - commitment to having it done
- App Structure:
- 12 microservices coordinated with SQS and SNS
- 98 Lambdas
- one RDS for reporting purposes
- ReactJS
- 12 microservices coordinated with SQS and SNS
- Principles (north stars)
- identifying core values when decoupling
- 25 features for the whole project, 10 were the MVP
- started as 7 person team, grew to 30 in six months - no wonder it only took 6 months
- comfort with refactoring
- Bias to Action - not getting so focused on flexibility that you don't do anything
- culture of learning
- product vision
- bricks, walls, cathedrals
- looking at backlogs to see where they were going
Devops
webhook from Github to CodeCommit -> Pipeline #important
instead of doing batch, do it as events warrant - like when a student actually comes in
Using CloudFront for SEO to host static copy, for them generated by React-Snap
Hardening session - what is going to break? Post-its for all the breaks, what can go down and still stay up?
went through the team, had them scale their concerns, then made a hit list
Their cost on opening day was $124 dollars