Hacker News new | ask | show | jobs
by whoknew1122 2095 days ago
Strong disagree on not learning AWS (or another cloud provider). I was partial to AWS even before I worked for them, but chances are you're going to run your startup in the cloud. For that, you should know at least the basics of the cloud you're going to use.

I'm not saying learn CloudFormation, CodeDeploy, or any of the hardcore DevOps stuff you'll be interested in once you start to scale.

But you need to know how security works (i.e. IAM), how to build networking infrastructure (i.e. VPC), how to deploy servers and databases (i.e. EC2 and RDS/DynamoDB). And, of course, how to do things cost-effectively.

If you don't take the time to learn the cloud, you're going to be stuck when it's time to push your project into production. So you're going to need to:

1.) Hire a cloud architect. This isn't cheap nor is it a good solution. If you ever part ways with your cloud architect, you're going to be starting step one all over again. Except now you have to learn how the cloud works and how your environment was architected. And that's assuming your architect doesn't maliciously make a mess of things on the way out (which happens -- A LOT).

2.) Open a support ticket for every little issue you run across. This can easily become a blocker with deployment. Not to mention you're likely going to have a developer support plan. Which means you get email-only support and the replying support engineer may not even be in your timezone.

So not only do you have to deal with the inefficiency of back-and-forth email conversations, you may have to deal with the time lag based on the engineer who works on your case.

3 comments

Alternatively, if I were starting a business tomorrow, I'd start out with Heroku or a normal VPS (Linode) depending on the budget and requirements, and only switch to AWS when it made economic sense to invest in that setup.
This is a fair way to go about it. Really, my point is that you're likely to use the cloud.

And if you're running a small/solo shop, you really need to learn the basics of that cloud vendor before rolling out on the cloud platform. I see too many people roll things out on AWS without any knowledge of the platform whatsoever.

Do you have advice on learning AWS/cloud for people that don't know anything about it? I have a Django/React project I'm hacking on where everything runs locally, but I don't understand how to put this thing on the real internet.
I suggest getting a subscription to ACloudGuru or Cloud Academy. I'm more partial to Cloud Academy these days. They're both about $50 a month.

Then go through the Certified Cloud Practitioner course. That will give you the very basics.

Once you're done with the CCP, you can move to the Solutions Architect Associate course. You don't have to get the certs (although they are useful). But the courses will give you a good understanding of AWS.

Just to be clear, that's about 50 hours of content. But I suggest being over-prepared rather than under-prepared.

acloudguru.com cloudacademy.com

Very cool, I will check this out. Thanks!
If you're solo or intending to stay small, I'd strongly recommend just using a PaaS that works at a higher level of abstraction than AWS. Heroku is still around, will give you sane defaults without really knowing much about the devops world at all, and will scale well enough that you'll almost certainly have a much bigger team prior to needing to move to something more complex.