Scenario - creating a highly available campaign site for loungebeer.com
The course is part of these learning paths
In this group of live videos, we tackle a practical scenario to help you learn real-world cloud consulting skills.
This is a unique and engaging live video format where we join the Cloud Academy AWS, Azure, and Google Cloud Platform teams in a real-time work situation. The team listen to a customer brief, discuss and define technical requirements and then evaluate which of the public cloud platforms could best deliver on the customer requirements.
From this course, you will learn how cloud professionals go about solving real-world business problems with cloud solutions.
With this course, you will learn how cloud professionals tackle and solve a business problem with each of the three public cloud platforms. This course is highly recommended for anyone interested in learning how to become a cloud architect, specialist or consultant!
Learning how to use your cloud skills in real-world situations is an important skill for a cloud professional. Real life projects require you to be able to evaluate requirements, define priorities and use your knowledge of cloud services to come up with recommendations and designs that can best meet customers' requirements. As a cloud professional you often have to think on your feet, process information quickly and be able to demonstrate design ideas quickly and efficiently.
In this course, we work through a customer scenario that will help you learn how to approach and solve a business problems with a cloud solution. The scenario requires us to build a highly available campaign site for an online competition run by loungebeer.com - a "craft" beer launching a new product in to the market at the US Superbowl event.
In these interactive discussions we join the team as they evaluate the business requirements, define the project constraints, and agree the scope and deliverables for the solution. We then work through the technical requirements we will use to evaluate how each of the three cloud platforms - Google Cloud Platform, AWS and Microsoft Azure - could be used to meet the technical requirements.
We follow each of the platform teams as they define solution architectures for Google Cloud Platform, AWS and Microsoft Azure. We then regroup to run a feature and price comparison before the team builds a proof of concept for our solution design.
This group of lectures will prepare you for thinking and reacting quickly, prioritzing requirements, discussing design ideas and coming up with cloud design solutions.
02/2018 - DynamoDB now supports encryption at rest so that would potentially influence our choice of database in thie scenario
For planning tools see
For more information on White Listing see
- Okay, so John, you've got a new campaign brief for us.
- Yeah, that right guys. Okay, this is going up on the Super Bowl. We got a small craft beer client, who's looking to break into the mainstream market. We want to present a beer for the year campaign. It's a giveaway. It's only going to be available to folks inside the stadium. Nowhere else. [Man with gray hair] Wow
- Yeah What we're gonna do. We're gonna put up a URL on the monitor at half time. Couple of seconds.
- [Man With Gray Hair] Okay, like the big screens they have.
- [Man with gray hair] ok
- Alright. This is gonna be in the stadium only. Just be a couple of minutes. Give them the URL. They go there. They give us their name, their age, their email. Cut and dry. What that gives us is opt-in to future messages. That's what we're doing. We're gonna be using this information, sending them stuff, saying, hey, more about the beer. And this is all a test. Okay? If this goes well, we're looking to expand this after the Super Bowl. Maybe TV, some web, when things are a little less expensive. So, the site will be live for a month. That's what we're thinking.
- Okay. So we're talking about a website here.
- Yup. Okay. Good. I got it.
- Okay, we're looking to receive entries in a window of 20 to 30 minutes.
- [Man with gray hair] Oh. Right. The short time, just during the half time break. They are going to collect names and the details during the half time break. Right. Okay.
- Okay. After that it's gonna be closed off.
- The main and most important things is - it can't fail. We gotta protect their info. We gotta encrypt it. This things gonna be up on a big screen. We just don't want anyone to hack into it.
- So, oh okay. Alright. How many names could we possibly be looking at there? Sounds like a lot of burst activity.
- [Man In Gray Sweater] What's the max attendance of the stadium.
- Yeah, do we know much?
- Well, it's probably like 80,000
- That's kind of our, upper bound there.
- Well, Max would be like 100,000
- I think what he's saying is that this gonna be used after as well. So I think we should think about it being a top level of, you know, 200 to 500 thousand potential entries.
- So it's not just for people in the stadium? Cuz minor concern is the URL flash up on the stadium. Someone gets that, they can easily post that on social media and then that will go out, beyond the stadium.
- Which sounds good though, doesn't it? That's gonna help your campaign.
- So I don't think you're gonna be able to restrict it to just people within the stadium. There's no way of controlling that.
- Aw. Man. We didn't think of that.
- Alright. Well.
- do you have a budget and timeline, for this?
- Well, okay. Brace yourselves.
- [Man with gray hair] Oh dear.
- Alright. Four weeks. 20k.
- [Man with gray Hair] What!
- 20k. That's what we have for this first one. We go. After this, we're looking at more for the TV, the web, the campaigns after this. Alright. So we gotta start small. Make sure this goes right.
- [Man with gray hair] Oh. Okay.
- Alright. So it's gotta be highly available. It's gotta support burst traffic, for this period of the campaign, and the data needs, well the site needs to be safe, you know, secure, and we need to protect the data, so that it can't be compromised. Is that about right? And we've got four weeks and 20k to do this.
- I understood about half of what you said, but it sounds good.
- Okay Alright. Well, why don't we just kick this around John and see if we can come up with a solution for you?
- Did we cover the whole thing about it coming out of the stadium? Is that an issue? Cuz we're not gonna be able to restrict
- I think that we'll assume that this will be for more than just the length of the game.
- [John] Yeah
- Okay. Just so that we design for, you know, a larger opportunity.
- Yeah, we gotta assume the worst and just be prepared. If it gets out--
- [Man In Black Shirt] I'll see that as a good thing though.
- [man In Black Shirt] You know more customer base to you, more names.
- That's true
- Alright John, okay. So, how durable does it have to be? Can we afford to have the site go down for a minute? Can it--
- NO, no no no no. Do I need to spell this out?
- [Man with gray hair] Laughs It's gotta be air tight, okay?
- [Man with gray hair] Alright. Okay
- [Man with gray hair] So, it's gotta be available. No crashes just continuing to serve.
- That's right
- Alright and in terms of how the customers interact with the site, do they need to get a response back immediately, when they enter their details? I assume if we're collecting then the name, the e-mail and maybe date or birth or something like that. Do they need a response immediately, or is that something they can get an hour or so later?
- MMMMMMMM naw. They're just entering the contest. They can find out about it later.
- Okay, so we're thinking possibly a synchronous source. Synchronous here. Yup. Okay.
- That works.
- Yeah. Alright. Okay. Well, let's try and kick this around as a design idea. So--
- Are we restricted to a particular platform? Does their IT provider have any requirements / preferences? Cloud platform?
- [John] Naw.
- [John] Whatever is gonna work best.
- We'll spec out a few options and see what we come up with.
- [John] Yeah
- [Man with gray hair] Yeah yeah
- Yeah, I think it has to be a Cloud platform with the four weeks. We can't possibly run this in a data center.
- We can see how we can manage it between different cloud platforms and see what comes up best.
- [Man with gray hair] Yeah
- [John] Yeah With those requirements.
- Yup. Do you need a reporting dashboard or anything of that nature?
- To collect any kind of analytical data, over the thirty minutes or an hour, how many people interact with the site at once kind of real time data.
- That would be good. You know, give us an indication of what we're looking at for if we want to run this thing again. So, yeah, that'd be great.
- Alright. Let's smash this out. John, just before you go, just one quick question. If we look to the priorities here. So, if we go time, costs and features. Now, you've given us a couple of constraints here. We've got four weeks of time to deliver this. We've got 20k of budget to work with. If either of these two change, what features can we basically remove or which ones are the least likely to cause you problems with the customer?
- [John] I would say, we don't necessarily need those analytics.
- Okay. Alright.
- We just need everything else.
- So we'll probably use a process called MoSCoW to evaluate which features are useful and which ones are not so useful or important. So the M will be the "must haves". So the data collection, the fact that the data has to be secure, the fact that the site has to be available to for that 20 minute period. The S is the "should have", like things that we should have in there. Which analytics might be that, tracking and reporting might be something that we should have and the C is the "could have" - things that we could have if these two constraints weren't there. So if we come back with a few ideas like that is that something you can take to the customer and get their sign off? Cuz we could probably knock this out as a design in the next three or four hours for you.
- Well let's go ahead and think about the additional features. If we do something bigger after this, we can always fit that into the larger things, when we're gonna have more money.
- [Man with gray hair] Okay
- But, for right now, cost and time.
Head of Content
Andrew is an AWS certified professional who is passionate about helping others learn how to use and gain benefit from AWS technologies. Andrew has worked for AWS and for AWS technology partners Ooyala and Adobe. His favorite Amazon leadership principle is "Customer Obsession" as everything AWS starts with the customer. Passions around work are cycling and surfing, and having a laugh about the lessons learnt trying to launch two daughters and a few start ups.