xsevensinzx - Sunday, January 7, 2018 9:10 AM
There's no question that the requirements that a system must meet do need some proper definition that the Engineers will need to design things properly but... I will put it all on the Engineers.. 😉 Good Engineers also understand when they don't actually have the necessary requirements (both happy path and the alternatives) and won't put fingers to keyboard unless it's a Proof-of-Principle to help determine the requirements and other possibilities. Certainly, good Engineers won't pass something on just to "get it off their plate" to give the semblance of being "productive". They also know when "good enough" actually isn't even when there's a looming deadline.
And, no... I'm not saying that Engineers will/should always chose to use an RDBMS or chose to not use one. I do agree that their job is to figure out what "seemed like the best solution for the problem". The key here is that that choice isn't based on whether or not an RDBMS can handle the problem nor the size of the problem. Rather, it's a choice made by a given set of Engineers on how they can handle the problem and, as we can see by the incredible success examples of NASDAQ and Amazon, the Engineers for both companies did one hell of a good job on all fronts.
Here's to all Engineers that say "What if" and "We can"!
--Jeff Moden
Change is inevitable... Change for the better is not.