BigCo (using Ruby On Rails) that I worked for once hired a developer. He'd worked for Microsoft and the only 'issue' was that he had to use a mac in our environment. Or so it seemed.
After two full weeks of him quietly 'working' at his new MacBook, I got a bit suspicious about the fact that he'd not asked for help once. So decided to check up on him and ask him how he's settling in with the codebase and if he could use any help.
He opened up his editor to show me something he was struggling with. I gave some suggestions (look at this code here, do something similar).
After some back and forth it became clear that:
1. he was entirely unfamiliar with Ruby On Rails
2. he had no idea how to use a Mac
3. he had not bothered to learn how to use a mac while sitting at his desk for eight hours a day for two full weeks
4. his approach to copying some existing code and then changing it for the new use case involved mostly clicking through the Edit menu. He was less familiar with keyboard shortcuts than my mom and her mom. CMD-C was not in his vocabulary.
He was let go shortly after, but of course he did get a full month's pay, an amount that would comfortably support the frugal freelancer for at least another three months.
Honestly, I'm mostly thankful for this situation. It cured a decent amount of my 'impostor syndrome'. It also left me wondering how these kinds of things happen.
This company was one that lots of good developers would want to work for, in one of the most desirable cities in the world, and they were constantly in need of good developers. I was baffled by the mismatch between what the market offered (plenty of good developers, more than most cities) and their constant need for developers, to the point of hiring this guy and not realizing that he didn't know the basic copy and paste keyboard shortcuts until two weeks in.
There are many variants. I was hired into a group based on tons of positive reviews of my work from a variety of senior engineering roles.
When I got into the group, I was asked to do stuff I had never done. Okay, I start to learn it, but slowly.
Then I was reorged into a different group, doing stuff I had never done. Okay, I start to learn it, but slowly.
Then I was reorged into a different group, now I'm a Developer, when I've never programmed professionally before.
I am far far worse than my colleagues at even simple tasks. It's not that I'm not trying, I'm working tons to try and learn data structures, and programming to be able to complete my job.
But it would be entirely valid for my coworkers to feel the same way about me, as you describe about this guy.
It's likely going to take another 4-6 months before I'm competent at my job. Will my colleagues still care at that point? Will I be reorged into another position by then? Who knows?
And I'm an expert at many fields, just none of the ones I'm being asked to do.
I'd leave, except my colleagues are great, the topics are great, and if someone is going to pay me to learn how to be a proper developer, I'd be stupid not to do this.
But it's hard as fuck, and I'm certainly not pulling my weight.
Not knowing keyboard shortcuts is a bit much though, wouldn't you agree?
I do think that he might've had a chance (perhaps downgraded to a junior position) if he'd shown willingness to learn though. The fact that he just sat there for two weeks pretending to be busy was the primary reason he got let go.
I rarely use code folding. Furthermore, few people other than programmers use code folding.
Not knowing the copy and paste keyboard commands is a completely different realm of incompetence!
But you're right that lots of developers don't know many keyboard commands. I was being a bit too broad. Personally I can't imagine how any programmer would not bother learning keyboard shortcuts (or even better vim keybindings), but I've met plenty who didn't.
It seems odd that someone would not know the copy/paste keyboard shortcuts, but the most likely explanation is that he hadn't figured out that it's Command+C rather than Ctrl+C on the mac.
That being said, while using the 'edit' menu to copy/paste is clumsy, I don't see that it would actually have a significant effect on someone's productivity. So I would not go so far as to say that someone was incompetent just because they did that.
After two full weeks of him quietly 'working' at his new MacBook, I got a bit suspicious about the fact that he'd not asked for help once. So decided to check up on him and ask him how he's settling in with the codebase and if he could use any help.
He opened up his editor to show me something he was struggling with. I gave some suggestions (look at this code here, do something similar).
After some back and forth it became clear that: 1. he was entirely unfamiliar with Ruby On Rails 2. he had no idea how to use a Mac 3. he had not bothered to learn how to use a mac while sitting at his desk for eight hours a day for two full weeks 4. his approach to copying some existing code and then changing it for the new use case involved mostly clicking through the Edit menu. He was less familiar with keyboard shortcuts than my mom and her mom. CMD-C was not in his vocabulary.
He was let go shortly after, but of course he did get a full month's pay, an amount that would comfortably support the frugal freelancer for at least another three months.
Honestly, I'm mostly thankful for this situation. It cured a decent amount of my 'impostor syndrome'. It also left me wondering how these kinds of things happen.
This company was one that lots of good developers would want to work for, in one of the most desirable cities in the world, and they were constantly in need of good developers. I was baffled by the mismatch between what the market offered (plenty of good developers, more than most cities) and their constant need for developers, to the point of hiring this guy and not realizing that he didn't know the basic copy and paste keyboard shortcuts until two weeks in.