Coding Interviews are Broken

How is South Africa keeping up with the global tech trends? In terms of the web, what is good to be proficient in, currently?
Sorry for the questions but it is valuable information from a wide array of sources:)

To be frank, most of the jobs out there will have a Web component to it. If it doesn't then you know a lot there mere mortals do and you likely code in COBOL.
 
Last edited:
Which data structures and algorithms are essential for a full stack developer? I understand its based on your personal opinion but shoot:p

Which data structures and algorithms? From my experience which is solidly junior - its not the algorithm/DS thats important, its how its implemented and if it withstands testing.

You dont want to use an Algorithm that takes forever to run in place of an Algorithm that is super efficient but difficult to explain. One would need to be able to find a happy medium between complexity in code vs how long it takes overall. Someone might mention that "complexity at runtime" is important, but I am not sure how to explain that in a simple manner.

The above is where peer reviewing comes in handy for me. I have yet to develop the knack of knowing that an Algo/DS pairing is the best/worst for the application - so I will usually ask or have it checked over.
 
Last edited:
Sorry but I would have pegged them after 3 interviews

They know.


In my mind I see a corporate culture of having a memo signed by 6 individuals for a box of paperclips...

I don't like putting our eggs in one basket, but knowing what I do now I would send them my cv if my wife wasn't working there already.
 
Which data structures and algorithms are essential for a full stack developer? I understand its based on your personal opinion but shoot:p

The closest to an algorithms question I've ever been asked was the "you have 9 identical looking balls of equal weight, and 1 which is heavier. With one scale, what is the quickest way to find out which one is the heavy one" question in a telephonic interview. I've never been asked a data structures question either, and I've also never sat in on an interview where it was asked.
Granted, I've only been for 5 non-prelim interviews so I'm not that experienced.
 
Could you elaborate on this? Curious

Which part confused you? I we both work for the same company and something happens to the company (especially a bank) we could both lose our jobs at the same time.

Even worse: what if we end up working in the same department? :eek:
 
5-6 iterations, i.e. 5-6 interviews? On different DAYS or in one go? Sorry but I would have pegged them after 3 interviews as time wasters and would have moved on. In my mind I see a corporate culture of having a memo signed by 6 individuals for a box of paperclips...

Yeah, have to agree. If you are hiring a CTO, by all means have a long interview process.

If it is for a developer, 3 is the limit. I guarantee that with such a long interview process, you will be losing good candidates.
 
I dunno why a developer would shoot themself in the foot and fixate on specific tech. Specialise in an area, not a language/framework.

The cobol programmers disagree, lots of money to be made there currently :ROFL:
But seriously, low level languages would be a candidate to specialise in a language since your micro processor rarely changes, how long has the x86 instruction set been used for and how prolific are ARM processors with IoT.
 
Last edited:
The cobol programmers disagree, lots of money to be made there currently :ROFL:
But seriously, low level languages would be a candidate to specialise in a language since your micro processor rarely changes, how long has the x86 instruction set been used for and how prolific are ARM processors with IoT.

Honestly, I doubt it would take a good programmer more than a week or two to become proficient at COBOL.

Low level programming - specifically C paired with an assembler is still the only way to get the most performant code for a given algorithm. It can be quite lucrative. Of course, here it’s not really knowledge of the “language” that matters, but one’s understanding of system- and micro- architecture.
 
Last edited:
Honestly, I doubt it would take a good programmer more than a week or two to become proficient at COBOL.

Low level programming - specifically C paired with an assembler is still the only way to get the most performant code for a given algorithm. It can be quite lucrative. Of course, here it’s not really knowledge of the “language” that matters, but one’s understanding of system- and micro- architecture.
Yes i think this depends on how well you know or have control over target platform. If you target x86 or 64bit it is likely that run-time optimisation is better as it optimises for the actual architecture the code is running on?
 
Yes i think this depends on how well you know or have control over target platform. If you target x86 or 64bit it is likely that run-time optimisation is better as it optimises for the actual architecture the code is running on?

Most of the platforms that would need this level of optimization are well controlled: HPC, supercomputing, trading, etc. For those that aren’t, one can still keep multiple pieces of code compiled for multiple platforms in the code as well as hand optimized code where it counts for both.

The amount of platforms one has to hand optimize for doesn’t usually get too out of control, since given that performance is important, one really only has to focus on the newest architectures. E.g., a game developer will want there code to run the best on both Intel and AMD, but optimizing anything earlier than Zen or Skylake-X, is somewhat pointless, since anyone studying their FPS count intensively isn’t going to be running old CPUs.
 
Remarkable how many people who fail an assessment tell the in house recruiters the tests are wrong and they range from grads to "seniors".

Recently got one from a grad who insisted his solution was correct. Looked at his code - he got everything wrong, misunderstood completely and overwrote input param values with hard coded ones. Was terrible.

Then there was a senior who told one of our recruiters that she insists they find a competent senior resource to look at their code. Cocky bad attitude and veiled insults aside, they also completely misunderstood. They call anybody senior these days it seems.

So these online assessment tools may not be the best filters for technical skills (a countdown timer on screen can mess with you), but they certainly highlight personalities who will not be a "culture fit".
 
I'll be honest: I've interviewed quite a few people before and I don't think I've "cracked" it yet. I think I hate doing interviews.

Having a conversation with somebody I don't mind. It's easy enough to pick up an obvious dud and after a chat over a coffee or beer you'll have a better idea of the person you are hiring.

Technical skill questions I'm not too sure about. I recently had to dumb down an entry test for grads and some are still failing. It's high school stuff in my opinion so obviously I'm struggling with realistic expectations :p

Coffee and beer people: that's the way interviews should go. Probation will sort out the rest.

RE: Technical questions; You're not doing anything wrong. The test I had to "dumb it down to" was simply adding a dropdown with a connection to the database to show something in the dropdown. That was it. And they still failed or didn't complete it in an hour. Some even walked out of the tech-test stating they don't know how/can't do it, yet are people claiming to have a year or more as a junior developer. I've rarely seen anyone with less than 2 years actually make it through the tech test. Had one guy going "this is a challenge, I failed, give me another shot I will crush it!" same test a week later, still didn't "crush it" and it made me wonder, what did you do with the knowledge you gained from the first test. What did you do that week to prepare for your 2nd chance? AND WHY THE HELL DOES NO ONE USE GOOGLE (We specifically state that they can!)
 
The above 2 posts are why my current company tends to go by in-house recommendation, well respected company or good degree/university as an initial screen. Otherwise it’s just too much engineering time to spend on interviews.
 
The above 2 posts are why my current company tends to go by in-house recommendation, well respected company or good degree/university as an initial screen. Otherwise it’s just too much engineering time to spend on interviews.
Most, including me, are antisocial mofos, so if someone asks me for a recommendation I can't really think of anyone I know, and those who I do know, are happy where they're are and usually paid well enough not to consider a move
 
RE: Technical questions; You're not doing anything wrong. The test I had to "dumb it down to" was simply adding a dropdown with a connection to the database to show something in the dropdown. That was it. And they still failed or didn't complete it in an hour. Some even walked out of the tech-test stating they don't know how/can't do it, yet are people claiming to have a year or more as a junior developer. I've rarely seen anyone with less than 2 years actually make it through the tech test. Had one guy going "this is a challenge, I failed, give me another shot I will crush it!" same test a week later, still didn't "crush it" and it made me wonder, what did you do with the knowledge you gained from the first test. What did you do that week to prepare for your 2nd chance? AND WHY THE HELL DOES NO ONE USE GOOGLE (We specifically state that they can!)
This is the first time I came across someone letting a person use google in an interview.:ROFL:
 
This is the first time I came across someone letting a person use google in an interview.:ROFL:

watching how someone uses google is extremely insightful.

most people lose their ability to speak English when it comes to using google.
the same can be said for writing documentation, function names, variables.
 
This is the first time I came across someone letting a person use google in an interview.:ROFL:

I once interviewed someone by phone and it turned out that they had a team of people listening to the questions and googling for answers.

I heard someone whisper to him a few times and also, he constantly need “time to think” and then suddenly spewed out a Wikipedia-esque description of the thing we were talking about, yet couldn’t answer any further questions on it.
 
I once interviewed someone by phone and it turned out that they had a team of people listening to the questions and googling for answers.

I heard someone whisper to him a few times and also, he constantly need “time to think” and then suddenly spewed out a Wikipedia-esque description of the thing we were talking about, yet couldn’t answer any further questions on it.
What does a person like this think is going to happen when they start work especially in a job market that isn't so nice and lenient as SA?
 
Top
Sign up to the MyBroadband newsletter
X