Hiring programmers has been a challenge for me.
Building the machine learning models, coding in Python, delivering to clients have been challenging, but all within the realm of my current capabilities.
Evaluating the skill level of the developer is very difficult initially. Some write elegant code, some write spaghetti code.
Part of the difficulty in hiring on UpWork is setting the pricing too low. People were willing to take the offers, but it was inadvertently driving away the most talented programmers. It looks like there is a sea of inexpensive talent. But it can be hard to differentiate.
There is a balance between price and quality of code. The code working is not the value of the code. There is readability, maintainability, scalability. So when two developers write code, both passing test cases, the code is not necessarily equal. And what you pay might have longer term consequences.
So, I came up with a heuristic.
In the valley, good developer median salary is $125,000.
There is a cost to hiring. Lets say its .25x. Head hunters would charge that. There is interviewing time, potentially multiple rounds, with multiple people. Their hourly cost.
If I take the $125,000 plus the search costs of $31,250, we have a budget of $156,250 to spend on contractors in search of the best. If each one is paid $2,500 for a small project, we can effectively have 62.5 long productive interviews.