Ten Mistakes Founders Make on AWS, and How to Avoid Them
by Britton Winterrose, AWS Startup Solutions Architect and Jordan Patapoff, AWS Startup CTO Engagement Lead
For founders, the only thing longer than the hours you work is the list of tasks to be done. Ideally, you’d get to spend your time talking with your customers and implementing improvements to your product. That’s why AWS fuels the growth of startups at all stages by providing reliable, scalable, and inexpensive cloud computing services that allow founders to quickly innovate, experiment, and iterate. The breadth and depth of AWS services make the platform a powerful tool to build fast and focus on your customers — but with that power comes great responsibility.
The AWS Startup Solutions Architecture team exists because we believe that by helping founders in the earliest stages, more successful startups will reach their long-term goals. In our past roles as founders, my colleagues and I experienced the benefits and challenges of building on the cloud first hand. Now as Startup Solutions Architects, we serve as technical advisors to early stage startups in the world’s best accelerators including Y Combinator (YC) and TechStars. In meeting with thousands of startups one-on-one, we’ve witnessed startups leverage AWS successfully, and seen what does and does not work.
We want to help you stay focused on your customers and building features for your products, so we’ve put together a list of the most common mistakes we see founders make on AWS, paired with advice on how to avoid them to save you time and money.
Mistake #1: Not setting up AWS Budgets
No one likes a surprise bill. Learn why every startup should set up a budget and how AWS budgets makes it easy. This is #1 for a reason: it is your safety net and early warning system. If you aren’t sure where to start, start here! Setting budgets and alerts only takes five minutes.
Mistake #2: Not leveraging business support
Time is of the essence for startups who are building. With help from AWS Business support, you don’t have to go it alone. Learn how to use business support to help fix issues and get answers faster.
Mistake #3: Confusing root accounts and IAM users
Having fundamental security guardrails in place early can save trouble, time, and money down the road. Don’t be discouraged if it feels like a steep learning curve. Instead, check out this post on how to improve security using Identity and Access Management (IAM).
Mistake #4: Not setting up MFA
Multi-Factor Authentication (MFA) helps prevent unauthorized access to your account. For startups an account breach can be a fatal mistake. Learn why you need MFA on your account, then go enable it… now.
Mistake #5: Not using Infrastructure as Code (IaC)
Infrastructure as Code (IaC) allows you to manage infrastructure with configuration files instead of doing things manually though the console, making your life easier and saving time if implemented correctly. Learn if now is the right time to adopt IaC for your startup.
Mistake #6: Rolling your own instead of using a managed service / SaaS solution
One great piece of advice from Y Combinator is to “look for a way in which you can accomplish 90% of what you want with only 10% of the work/effort/time”. AWS managed services are there to help do just that and save you time. Learn about and consider: when should startups use a managed service?
Mistake #7: Using Access Keys when IAM roles can be used
Access keys, IAM Roles, IAM Users… which to use and when? It can get confusing, especially if you’re trying to build fast. Earning trust with your customers begins with keeping their data secure. Learn how setting up IAM Users and IAM Roles can help keep your startup secure.
Mistake #8: Not using Amazon CloudFront (CDN)
Did you know Amazon CloudFront can save your startup money and reduce latency for your application? Learn how a content delivery network can keep your application running at scale.
Mistake #9: Leaving unused resources running
Turning off resources you’re not using is the best way to lower your AWS bill, but it is not always clear how to best identify which resources to turn off. Learn how to extend your runway by lowering your cloud bill through resource tagging and automation.
Mistake #10: Storing everything in a relational database
Database selection is one technical decision that will have long-term impacts on your application’s performance and your team’s productivity. It is worth your time to learn about the various database options available on AWS and how to pick the right one before you build.
We all make mistakes
This is not a list of mistakes to obsess over, nor is it exhaustive in its scope. The impact of each mistake varies depending on the stage of your startup, so now may not be the best time for you to focus on fixing each one. As a founder it is important to be aware of how not addressing these issues can affect startup longevity. Then, use your best judgment to prioritize corrections that impact the security of your account or that could be detrimental to your runway. Consider this wisdom from YC’s Essential Startup Advice:
“It turns out that nearly every startup has deep, fundamental issues, even those that will end up being billion dollar companies. Success is not determined by whether you are broken at the beginning, but rather what the founders do about the inevitable problems. Your job as a founder will often seem to be continuously righting a capsized ship. This is normal.” – Geoff Ralston, Michael Seibel
Be informed, take courage, and keep building and fixing things as you go. We’re excited to build with you.
Britton Winterrose is a Startup Solutions Architect with AWS. Prior to joining AWS he founded two companies. At AWS he works with startups that are participating in Y Combinator, the startup accelerator responsible for launching companies like Airbnb, DoorDash, Dropbox, Instacart, and many others.
Jordan Patapoff is a CTO in Residence on the Startup team at AWS. Prior to joining AWS, he co-founded Clyp, a Techstars-backed company that scaled to support millions of creators.