Horizontally scalable data storage is generally available these days (cockroach, tidb, vitess, etc.) Rearchitecting from unscalable to scalable data storage is notoriously difficult and expensive. Even the most famously competent companies and teams have struggled with that transition and invested millions and millions of dollars on it. Building on unscalable data storage when scalable data storage is readily availab…
You don’t need to be “enterprise-ready” or “scalable”
101–110 of 185 posts
Re: You don’t need to be “enterprise-ready” or “scalable”
#102I've delivered custom backend business servers to a various businesses of healthy size. Almost all were deployed on rented multicore servers with gobbles of RAM from Hetzner / OVH / etc. Some running for many years already. Not a single one required to be "enterprise scaled". Granted all servers are C++ and talking to a local DB. No problems in processing thousands requests per second without breaking much sweat.
Sounds interesting. What's the DB? What framework/type of API are you exposing on the C++ size?
Upon startup all data (except couple of giant tables) is sucked from DB into RAM into highly efficient data structures hence most reading requests are handled in microseconds. Those 2 giant tables are loaded into the same structs but partially. This is usually enough as RAM keeps last few years worth of data and requests that need something older come just couple of times per month. Only writes touch the database and immediately reflected in RAM as well.
This is just an example. I write game like servers as well and those use different approach. Generally I treat each project / product individually.
Re: You don’t need to be “enterprise-ready” or “scalable”
#103I was interviewing for a platform engineer role for a company that from the outside their application doesn't seem too complex. Through the interview process, I find out that you cannot run much of their app locally to develop against and their staging environment does not reflect their production enviroment well. I asked them how they develop their new features if they cannot run the whole app locally and if they in…
lol. It sounds like they hire smart people. But smart people =/= good engineers. Good engineers keep things as simple as they can.
Re: You don’t need to be “enterprise-ready” or “scalable”
#104As always, you cannot make blanket statements with software such as "you don't need to worry about scale". Perhaps your application does need to worry about scale and then if you don't then you're a fool. Then you launch, succeed and collapse or get beaten by competition because the effort to scale was beyond you in the needed time. The blanket statement that is true about software is "be wary of blanket statements a…
It's just insecurity and pure coping. They're not dealing with complex performance bottlenecks, so they say these efforts are wasted.
Re: You don’t need to be “enterprise-ready” or “scalable”
#105Hard agree. History is littered with dead startups that designed for scale before they had enough usage to justify it. Within reason, having users knock your site over resulting in failures like the Twitter Fail Whale is a good problem to have. With that said, you need to be prepared to scale up quickly once you have this problem. There's a reason Facebook counts its users in the billions, and Friendster is a footnot…
Yes, but.. I am a software architect. ~90% of the job offers I get are from CEOs/CTOs who want me to join their small company to help them refactor because they can’t grow anymore. Tech debt kills as well.
Re: You don’t need to be “enterprise-ready” or “scalable”
#106I'm working on a project where the backend devs decided to use Cassandra to manage a few hundred entities. Due to different access modes they had to denormalize the data into multiple tables and we're constantly running into consistency issues. A fucking sqlite db with a few tables and indexes would do just fine. Also, the tool has maybe a dozen DAUs. But it's web scale, so, yeah…
Why would a team decide to use nosql to manage "a few hundred" entities? Nosql databases excel at simple lookups and gets by ID, rather than trying to sort and join pretty much ad hoc.
Re: You don’t need to be “enterprise-ready” or “scalable”
#107I was interviewing for a platform engineer role for a company that from the outside their application doesn't seem too complex. Through the interview process, I find out that you cannot run much of their app locally to develop against and their staging environment does not reflect their production enviroment well. I asked them how they develop their new features if they cannot run the whole app locally and if they in…
I'm in that boat. We have a "microservice" code base, and spinning up the whole "app" is a Herculean task. Even if you do manage to get it all running, getting the multitude of database with useable data adds an odyssey to your day. We have some parts automated, but ops cannot keep up with all the changes in the micro apps. Back when I worked on a mono-rails app with a React front end, getting things up and running w…
Re: You don’t need to be “enterprise-ready” or “scalable”
#108I was interviewing for a platform engineer role for a company that from the outside their application doesn't seem too complex. Through the interview process, I find out that you cannot run much of their app locally to develop against and their staging environment does not reflect their production enviroment well. I asked them how they develop their new features if they cannot run the whole app locally and if they in…
Why is it a big deal to run your app locally? You just give each developer access to a cloud account (either one account or one per developer) with wide enough guard rails. Heck, when I am in a place with bad internet, I spin up a Cloud 9 (Linux) or Amazon Workspace account (Windows) and do everything remotely. I’m not wasting my time trying to use LocalStack or SAM local.
Re: You don’t need to be “enterprise-ready” or “scalable”
#109I was interviewing for a platform engineer role for a company that from the outside their application doesn't seem too complex. Through the interview process, I find out that you cannot run much of their app locally to develop against and their staging environment does not reflect their production enviroment well. I asked them how they develop their new features if they cannot run the whole app locally and if they in…
The architecture was probably more complicated than it needed to be but it was also decades old.
Re: You don’t need to be “enterprise-ready” or “scalable”
#110Hard agree. History is littered with dead startups that designed for scale before they had enough usage to justify it. Within reason, having users knock your site over resulting in failures like the Twitter Fail Whale is a good problem to have. With that said, you need to be prepared to scale up quickly once you have this problem. There's a reason Facebook counts its users in the billions, and Friendster is a footnot…
Yes, but.. I am a software architect. ~90% of the job offers I get are from CEOs/CTOs who want me to join their small company to help them refactor because they can’t grow anymore. Tech debt kills as well.