What makes a developer stand out?
Realising what really matters when hiring or firing a developer
Created on 6 April 2022.
It took me a while, but I think I finally got it. Actually, I understood this a while back, but I was unable to put it into words.
Since I couldn't properly express my thoughts, the surrounding developers where unable to comprehend exactly what I wanted from them. And it made life a bit more complicated.
I'm happy to report that I've found a way, and it's actually a single magic word that describes the difference between legions of developers and a good one. It's not necessarily about hard skills; so it's not about:
- algorithm knowledge
- data structure knowledge
- the quality of tests written (if any)
- what language you use
- what framework you work with
- what past projects you worked on
- what names you choose for variables
They are important, of course, but the one true thing that makes a difference, for me at least, is... ownership. Taking ownership of every project you are assigned to. Heck, take ownership of any task you are assigned to. Or that you simply offer to do.
What happens when you take ownership?
- First, you stop making excuses.
You have a project to do with tomorrow being the deadline. The day before the deadline the project manager asks if you are going to finish it in time. If your answer is "no, because I need some info from the client" or maybe "no, because someone has to decide what text should go there" then you have an ownership problem.
- Then, you create the best solution.
One more important difference a developer that takes ownership makes is that at any point during the project, he or she will put things into perspective. Asks the serious questions such as: Why are we doing this? What is the purpose? How can we make this even better? Are there other alternatives? How does this particular work impact other projects or other existing structures?
These questions are the gate-openers. They will provide insights that will allow you to create a more robust solution.
- Finally, you anticipate needs and provide assistance.
The same type of question as above will offer opportunities to improve the original project, or to come up with new ideas for new projects, maybe even generating new business which the customer (internal or external) will benefit from. It's a win-win-win situation and I love those.
"I don't take ownership and I'm doing fine"
You might currently be a developer who doesn't ask any questions about the task. Who receives a set of specification and implements them accordingly. If the client or the project manager or, anybody really, asks you why is this project not running correctly, and your go-to answer is "because those were the specs", then you are one of those developers that don't take ownership.
"But I'm doing great" -- you say.
The reason is purely coincidental. It relates to other external factors that you have no control over. Factors such as the job-market which is still very hot for developers. Since there's a lack of manpower, some companies will take anybody that manages to write two lines of code.
But this will not go on forever. When the demand lowers, or the supply grows - what then? How easy will it be to find new projects or companies? Will you get any recommendations? Will you be happy when looking back and thinking of the impact you did or did not make?
But I can't ask these type of questions
Some find themselves in a position where asking these "gate-opener" questions make their job difficult. It might be a manager that frowns upon having people using their brain. Or a company policy which states something like "just take the money and shut up".
If you find yourself in a similar situation, I've got some bad news. If you tried to ask questions about something you had to do and were ignored or received a vague answer, you have a problem. If you tried coming up with proposals that weren't even discussed, you have a problem.
And the problem isn't you! It's the company/manager whoever else is responsible. It's really time to make a change.
I'm always looking for talented developers who take ownership. So, reach out!