I have not worked for large internet companies and I want to know why there are so many engineers working on seemingly simple CRUD applications like FB/Uber/Shopify etc?
distributed systems are inherently hard to build no matter how simple the idea is. consider a simple application like pastebin. the idea is a block of text and a shortened url associated with it. most people have built one. but only few have built something close to pastebin.<p>size makes all the difference. even if your version of pastebin promises 1 successful save per second, you can only get 86k saves on a good day!<p>if all your saves were unique visitors it means you are only promising 86,000 unique visitors per day. and that's only considering saving new snippets, we haven't considered displaying them yet.<p>that's essentially what these systems have to deal with plus security, backup & replication, monitoring etc...
There's a lot of detail you're glossing over. For instance calculating the total tax on a purchase depends upon, sellers location (to varying degrees of resolution down to county), delivery method, buyer's/store address, type of item (HS codes), maybe whether it's permitted, and probably many things I've never heard of.<p>[I work at Shopify but not in this area.]<p>Edit: saying CRUD app without discussing details is like calling everything 'just' a Turing machine/program with bits on a tape. It's true but doesn't consider complexity.