Good programmers are good at algorithms, data structures and even system design interviews.
Good software engineers get stuff done by finding the right tool for the job and piecing things together. Software engineers are great at using google to find the answer, can quickly parse documentation, can quickly evaluate tools, existing solutions and APIs. Good software engineers make good decisions and are able to use an unfamiliar API.
Algorithms tests are great, I'm not suggesting we abolish them. What is a a good way to evaluate this ability to research and use the right solution?
Any example questions you could ask?
System design questions touch on this area but do not have a research component, it's purely memory based.
Engineers look at the big picture as a whole, programmers make sure the detailed aspects of it are working in the best possible manner.
For example, a good programmer will tell you to never use nested for loops, but an engineer may go for it nevertheless, if he feels that there is not much difference in the speed and memory consumption. He will make some tradeoffs depending on different factors.
I'm guessing you're more of a programmer?