I was is the industry in Silicon Valley for thirty years. Towards the end it was all pass this 30-45 coding desk to get to the next step. Personally I got nervous and lost my concentration at the beginning. With programming you either see the solution right away or you don't. If you start on the wrong path you run out of time.
The answer of course was to run a lot of sample coding tests. You do enough of them eventually you will run across the same algorithm that you need to pass the real test. I wasn't willing to do coding tests every day for 2-4 weeks. So boring.
I did interview a lot of people in my career. One on one I could evaluate a person's skills in 5-10 minutes. A successful programmer or engineer as you say, solves problems. Coding is a very small part of the job. Gathering facts, communicating with people, framing the problem are the skills you really need. Getting along with people helps too.