Ask an AWS Developer Advocate!

Held on 20 October 2020, 4:00 pm

Hey folks!

Ever wondered how to determine the right resources for your Lambda function? Or why one might use AWS Amplify over hosting your static site directly on S3? Maybe you’re trying to get started with AWS or you’re wondering where to find the AWS developer community. Maybe you just want to understand the role of Developer Relations and what a Developer Advocate does every day.

Join Brittany Postnikoff, Kris Howard, Ana Cunha, and Jenna Pederson from the AWS Developer Relations team on Tuesday, October 20th starting at 9 am PT to get answers to your questions!

Shoot your questions in the comments below.

Jay Desai's photo

Thanks for doing this AMA!

  • What are the best practises to choose infrastructure components while considering microservices architecture on AWS?
  • I am currently using Elastic container services, scaling, let's say 200 nodes. How can the integration of K8s with ECS help me to make it more scalable?
  • What is the best way to tackle the cold start issue with AWS lambda? How to determine the request is still warm?
  • How can a developer contribute to AWS platforms?
  • How do you guys manage to become serverless without servers? :) :D

By the way, I love AWS cloud, it's awesome!

Jenna Pederson's photo

Hi Jay Desai! Happy to hear you're having a good AWS experience.

Thank you for the great questions. Here are the ones I can answer right now:

  1. I recommend taking a look at these two whitepapers. Both have some best practices and patterns for building out a microservices architecture.
  2. There are a handful of ways to get involved with AWS! A few of my favorites:
  3. Great question! I'm sure you've heard this answer before, but for anyone else who stumbles upon this. With serverless, you don't have to think about servers. You get to build and run your services without having to manage infrastructure or deal with server and operating system tasks. It allows you to focus on delivering the core business value you're an expert in so you don't have to be an expert in servers, infrastructure, capacity, and scaling.
Jay Desai's photo

Hey Jenna Pederson , Thank you so much for taking your time out to read my questions and answering them. Means a lot!❤️✅😎

Bolaji Ayodeji's photo

Thanks for doing this AMA!

There's a notion which I believe is a myth that AWS is by default hard and stressful to get around due to maybe a complex UX (for beginners).

For a beginner who has only created an AWS account, how would you recommend getting started with AWS and exploring/ deciding which available AWS products will fit my current technical needs?

Show +5 replies
Jenna Pederson's photo

Hey Bolaji Ayodeji! Thanks for the additional info. Ana Cunha pointed you in the right direction with the Full-Stack Developer Getting Started Guide. That's a great place to start. You can also check out some of the other AWS Amplify Getting Started guides here. These will touch on other AWS services.

Sumanth Yedoti's photo

Also please answer the questions you guys shot to yourselves. 😁

How to determine the right resources for your Lambda function? Why one might use AWS Amplify over hosting your static site directly on S3? Where to find the AWS developer community? What is the role of Developer Relations and what a Developer Advocate does every day?

Show +1 replies
Kris Howard's photo

Hi Sumanth Yedoti! For the question about determining the right resources for your Lambda function, one of my Developer Advocate colleagues wrote an awesome blog post recently about he used the Serverless Framework, AWS Lambda, and AWS Step Functions to create a tool that will optimise your functions for the cheapest per-invocation cost. So rather than just picking your resources at random, you can make data-driven decisions! You can read the full blog post here .

kieiaem's photo

Nice question!

Corey O'Donnell's photo

Thank you for doing this AMA.

  1. When I choose a service for AWS amplify, am I actually using one of the other services? I ask because It seems tedious pricing how much it takes to bootstrap a product where Firebase has a clear breakdown of all their free vs pay as you go for each feature.
    • Authentication using Cognito or is it all tied to amplify?
    • Database using DynomoDB?
  2. If you had to argue why I should use Amplify over your competition, like Firebase, what would you say?
  3. Do you eat Mac & Cheese with a spoon or a fork, why?
Show +4 replies
Jenna Pederson's photo

You are right. When you are using the Amplify Framework (libraries, CLI, UI components), you're using other AWS services like Amazon Cognito for authentication and identity, AWS AppSync for GraphQL APIs, Amazon DynamoDB for NoSQL database.

Because AWS Amplify leverages AWS services underneath, it's built for scale on day one. You'll get access to a broad selection of services with deep functionality and be able to adjust as your needs change. AWS Amplify also offers an end-to-end solution for the development workflow of your app, with continuous workflows and feature branch deployments.

feday39896's photo

thank u so much for give a information it is really useful to us myaccountaccess.liveJenna Pederson

Emily Boston's photo

Hey awesome team 👋

Thanks for doing this AMA.

Does AWS have any offering that can complete with Cloudflare Workers and KV Store? Is there any such thing in pipeline?

Ana Cunha's photo

Hi Emily Boston! 👋

If you are looking for an AWS service that lets you run code closer to your users around the world with low latency and without having to worry about infrastructure, I would recommend checking out Lambda@Edge!

Sumanth Yedoti's photo

I am just starting with Amplify. It takes AWS profile to authorize and hides sensitive information from git with gitignore. How collaboration happens if some other developer has to contribute to the project by cloning(or forking)? How to assign limited access only for the project to others? Thanks.

Jenna Pederson's photo

Hi Sumanth Yedoti! Glad to see you're getting started with AWS Amplify! To collaborate with others on your team, you can share a single environment ("dev"). Occasionally, you'll each need to pull changes into your local environment to keep it in sync.

For instance, if you've added authentication and pushed those changes to Amplify, your teammates will need to pull those changes to their environment using amplify pull.

You'll also need to make sure the team-provider-info.json file is shared between team members (this is not .gitignored by default) so they can push/pull to the correct project in Amplify.

Here is some more detailed information on this. docs.amplify.aws/cli/teams/shared

Jenna Pederson's photo

As for your question about limiting access to an app, you can grant or restrict permissions using an IAM policy. Here is a list of the permissions used across all categories. You could add or remove based on which categories you want to allow the team to use in the app.

James Sanders's photo

How's a big team like AWS working during the pandemic? Is the whole team remote or semi remote?

Straithe's photo

You can see most of our developer relations team here. There are a number of newer people (like all of us talking to you today) that are not yet listed on the site. For developer relations our team is always remote.

James Sanders's photo

Hey team, thanks for the AMA. What things a beginner should keep in mind when applying for a job at Amazon AWS? Do you have any tips to share?

Show +1 replies
Kris Howard's photo

Hi James! I'm a hiring manager and I've interviewed so many folks at Amazon. In addition to what Straithe mentioned, one of the biggest tips is not to try to fake it when you don't know something. One of our Leadership Principles is Earn Trust, and I'd rather have someone say they don't know something than try to bluster their way through it.

Jenna Pederson's photo

I'd also suggest keeping a "wins" list -- a list of your accomplishments. This could be your resume, but it's probably smaller day to day accomplishments that don't fit on your resume. It's a good motivator for yourself, but it's also something you can look back on when asked for more details.

Including numbers in your resume is important, too. This can show how much impact you can have to a company. As an example, instead of saying "Built web app to upload and share photos" say "Built web app to upload and share photos; Scaled it from 0 to 1000 active users in 3 months".

Vivek Tiwari's photo

Thanks for doing this AMA.

I know Netflix is one of the biggest clients of AWS S3. Could you name some of the biggest brands that rely on AWS infrastructure?

Straithe's photo

Hey, Vivek Tiwari! You can check out some of the customers that AWS serves here: aws.amazon.com/solutions/case-studies

Some Interesting customers are: The Pokemon Company International, Fender, and GoPro.

Kris Howard's photo

Hi Vivek Tiwari! I've just moved to Europe from Australia, so a couple Aussie ones jump to mind immediately.

One is Domino’s Pizza Enterprises Limited, which is the largest franchise holder from Dominos Pizza (basically covering Australia and New Zealand, Japan, and several countries in Europe). They're headquartered in Brisbane and I know some of the folks that worked with them. They launched a new machine learning based solution this year that allows people to get their pizzas delivered in under 10 minutes, by actually predicting the order before it happens! It's really cool - you can read more on the case study here.

Another one that's close to my heart - and a lot of people in tech - is Atlassian. If you search you'll find lots of stories about the ways they use AWS. One mentioned in this case study is how they used Amazon EC2, Elastic Load Balancer, and Amazon Elastic File System to create JIRA Data Center, a new enterprise version of their flagship application. Not only does it run on AWS, customers can use a CloudFormation template to deploy JIRA Data Center clusters themselves.

Venkatesh Chary's photo

Thanks for doing this AMA!

  • Hi I am new to AWS IOT core , i have an existing design which each device having the Mosquitto and FLASK app init and these devices are publishing the queues to One central Server which is having the Mosquitto bridge connection and flask app to process and insert into database

existing_design.png

  • I want to replace this design with AWS IOT CORE replace with_iot_mqtt.png

  • Do i need to create a new thing for each device or create one thing with multiple topics?

  • How AWS IOT Core will pass the data received to Flask do i need to install again Mosquitto bridge in the server and configure (private key, public key and endpoint)

  • Let me know what is the best practice.

ALI ZAIB's photo

If you choose the right bath robes for you that means you are getting a soft, cozy hug. However, not all b ath robes for women for women give safe comfort and softness. A few years ago, the bathrobe gave an ugly look, but today bathrobes are comfy, and you can find stylish and beautiful colors bathrobe. As well at Go saveshop you will not only get your fashion accessories here you can also get Home accessories from your clothing to solar power banks

Hania Amir's photo

Web development is the work involved in revealing a Network site for the Internet or an intranet. Web extension can change from producing an uncomplicated sole static side of the clean text to complex web development company access applications, computerized businesses, and social network services.

Bogdan Bujdea's photo

In Azure you have the option to turn off a subscription once your credits run out. For example, if I have 100$ and some Azure service manages to deplete all my money, then that service will be stopped and I won't be able to turn it on or access it until I pay more money. Is there such a thing in AWS? I tried setting a 10$ budget once, but it appears it just sends a notification. In the end I had to pay 100$ by the end of the month so I stopped using AWS because I couldn't find an option to switch off my subscription if I run out of money.

Kris Howard's photo

Hi Bogdan! Nice to meet you. You're right; there's no built-in way to shut off services on AWS. That's by intention - we wouldn't want to shut off someone's infrastructure/website/applications just because their usage was over their estimated spend. Most people find estimation really difficult - that's where the elasticity of the cloud comes in, so you pay for what you use and your site doesn't fall over if your traffic takes off.

I actually host some personal sites on AWS that I pay for myself. You can set up budget notifications, as you've mentioned, but it's on you to actually do something when you hit them. Mine let me know when I've used 50% and 75% of my planned budget.

It's also worth mentioning that you can get alerts on your Free Tier usage too. The documentation is here: docs.aws.amazon.com/awsaccountbilling/lates..

Bogdan Bujdea's photo

Kris Howard thank you for the reply. I understand what you're saying and indeed, in most cases you wouldn't want your business to shutdown just because you have a spike in sales or something like that :)