I saw some of these guys in action, back in Silicon Valley, in the Nineties. And they made it abundantly clear they had no idea what they were doing, And they were part of an industry that had no idea what it was doing.
All I could do was get out of there – and move to Costa Rica – where I still live. But lately, I have been studying Software Development – as a hobby – and they finally seem to know that they are doing. Computer Science is finally becoming a Science.
And this always starts by defining a problem (very carefully!) – then solving it (they hope!) – and then testing the solution. If it fails the tests – you start over – wiser for the experience.
This entire cycle can be completed quickly (in a matter of weeks) and it gets faster all the time. In some cases, this is done daily – working on one piece of code at a time. Everything is structured to keep the pieces (the microservices) from running over each other.
A big part of the job is organizing the work, before starting it. This takes smarts (lots of smarts!) – and learning from experience – everyone’s experience. And getting the best brains they can buy.
They spend a lot of time going to conferences, and taking classes – listening to the solutions (and failures) of others – building frameworks that make it easy for others to perform common work (and lots of other code that anyone can use) – writing books, and reading books – endlessly.
They are perfecting their Science.