4 ms·
Your CTO is right. Your job and his job is to provide value to customers fast to generate sales to justify the next round before you run out of money. There is
by eranation 4y ago
Your CTO is right. Your job and his job is to provide value to customers fast to generate sales to justify the next round before you run out of money. There is no other goal. Saving on infra cost is marginal compared to saving on time. Your salary and other developers salary has more impact on the burn rate than infra costs. Being able to deliver your “killer features” on time is significantly more valuable to the company than saving infrastructure costs. When you are a mature company, then thinking about infra costs might be great to revisit. Too early now unless your business model is tied to infra costs and this has a direct pact on your bottom line.
- reacharavindh 4y ago+1 to this. If you're concerned about operational and cost efficiency, keep a thought in the back of your mind that one day your scale would need you to host things yourself. Your design choices should work with you at that point rather than lock you in some proprietary platform. But, the key is to get to the point where that becomes a problem. That day is not today. Azure VMs, AWS something whatever, get to your product features and get yourself to a spot where you need to worry about scaling and the savings it would bring.
- anonymoushn 4y agoDoes cloud save on time?
- nine_k 4y agoDepending on how you handle it. Sometimes it does outright, see Heroku, or AWS Lambda. Sometimes you try to bite more than you feel comfortable to chew, and get bogged down configuring kubernetes or terraform when you don't need as much. In the simplest case, I think, the cloud is also an inevitability. Can you imagine starting up by buying some used servers, colocating them in some datacenter, calling an operator when they need tweaking a BIOS setting, scheduling a visit and downtime when you need to replace a failing NIC, or a degrading HDD? This is what life without the cloud used to look like. Yes, a EC2 instance is cloud. Of course you can try a middle ground, dedicated hardware managed by a provider, e.g. what Hetzner offers. If your load is very stable and predictable, your stack is very simple and mature (an RDBMS + Apache + PHP, ore maybe Erlang / Elixir), and you are ready to either keep a hot spare or sustain rare but prolonged downtimes, you'd be fine with a small amount of dedicated hardware. A large amount of dedicated hardware may be economical, but only at quite large scale (see, well, Facebook).
- welterde 4y agoYou are underestimating the reliability of modern servers by a lot (otherwise your EC2 instances or random VPS would randomly reboot way more often than they do since if the server crashes the VM is still gone). Also failed PSUs or hard drives don't require downtime, since those are hot-swappable and redundant in servers. If you want to optimize for (physical) hands-off operation you can even add an extra 1-2 hard drives that are configured as hot spare that the RAID (be it hardware, software or ZFS) will automatically use in case one of the active ones fails. And the performance difference between dedicated hardware (be it dedicated server or your own) can be quite staggering compared to what you actually get from the cloud providers.
- krageon 4y agoNo, and it is way more expensive. But it is fashionable :)
- kamrani 4y agoIt's not fashionable, and it adds real value, but it's definitely costly because you have to spend on operations. I'm working on a solution to gives you an experience like Heroku on AWS without breaking the bank.
- Sebb767 4y agoStill, this depends a lot on what features you are actually using. If your use case is a few dedicated servers and maybe a https load balancer, you can have that at Hetzner for half the money. Paying the premium for any of the large clouds only makes sense if you really plan on using their advantages, i.e. well-integrated managed services like RDS and SQS or quick scaling.
- eastbound 4y agoAWS also has the advantage of reassuring customers/insurances/investors. “Did you encrypt at rest? Is your db port accessible from the internet? Are you backups autodeleted?” “Yes, we’ve implemented this check and this check, and concerning encryption at rest, we ticked that box in AWS RDS.”
- abdouls 4y agoSame here, +1 for this. As someone who is freelancing (and using Hetzner-cloud + dedicated) and also working as a cloud-ops (using AWS and mainly Azure as cloud providers), I can say that going with a cloud provider like Azure is simpler. Saving cost is definitely important, however, seeing that there are multiple dev/salaried, I doubt it's really a big concern (you also don't seem to have that many resources). Most of the time, with resources from Azure, you would get features already completed and existing (I am looking directly at Application Insights for example) - with resources like App services, Web apps and Function apps you get ease of debugging (yes, there is a cost associated, however, in the long term when you scale, you definitely see the advantage). I've personally suggested my colleagues to try out a dedicated server from either Hetzner or OVH (that specific one needed at least 128GB RAM) so going with Azure would of been quite expensive (and probably less than $200 per month from either OVH or Hetzner) - but they've decided to stay with Azure and I can confirm that they are not paying less than $900 per month. It seems like cost isn't always the main factor, but rather ease the time it would take to prepare/set up everything.
- kamrani 4y agoPerfect answer. We're working on a solution to gives you an experience like Heroku on AWS without breaking the bank, and I'm pretty sure we won't be the only one working on such a solution. Flexibility of cloud and simplicity and convenience of services like what we're building will boost the speed massively, plus you'll never be concerned about outgrowing the solution as everything is built on top of AWS.
- jokethrowaway 4y agoYou're grossly overestimating the cost of managing infra for a small to mid startup. You can serve A LOT of customers with very little tech. Especially if your code is not a pile of crap which waste tons of resources for no reason.