So I got promoted, yeah! As part of that I now have to give technical interviews for recruitment.
A few trends I am seeing are disappointing. They can usually answer, to their abilities, questions about tech. Some can even talk tech open ended quite well with questions like, "How would you convince me as a tech lead that we should use X Framework in our projects?"
What I see far, far too little answers for are things like, "Could you see any disadvantages to using X in a project or X in general?"
Also, things like differences between Arrays and Collections. They can give me 10 reasons why you should use the dynamic Collection, but go a bit dumb when you ask why you would use an Array over a collection. Similar things come through in terms of memory allocation, resource allocation and generally anything that has consequences functionally or non-functionally.
Multi-threading and concurrency. Almost everyone of them have used a distributed, transactional, concurrent system design in their projects, but less than 10% even know it. Aka, enterprise REST apis and micro-service stuff. Almost none of them can actual tell me the disadvantages or difficulties of multi-threaded/concurrent/distributed systems. Because they all just downloaded an open source starter project and off they went with no idea what was happening in the background.
I wonder if this is just because I'm a bit of tech polyglot and I'm interviewing 'two tech ponies' with 1 language, 1 methodology, 1 application style, 1 mind set?
They seem to want to push towards minimising code by increasing architectural complexity, dependencies and overheads. Stacking frameworks on top of frameworks for fear of having to write a few hundred lines of code. Of course few of them understand those things beyond having followed a few tutorials and worked in a project that used it a few times.
Am I being too picky to expect critical thinking from people with 3-5 years experience? An understanding of things like performance, memory, overheads and at least some consequences, pros and cons is what I was expecting, but I've only seen it in any fashion of understanding in the top 5% maybe.