So you want to be a developer rockstar?
thinkfaster.co
thinkfaster.co
To me, the perfect example is the "never ask for help" advice.
The reality is, spinning your tires silently instead of solving your problem by asking for help, all in the name of preserving or enhancing your reputation, is about the worst advice I could imagine. It's actually a red flag for me as far as hiring and ongoing employee evaluation goes.
I 100% agree with the don't ask for help advice. People need to ACTUALLY LEARN something. I'm sick of people externalizing the costs of their inadequacies.
Should it be a crutch? No. But never asking for help as a matter of course is, in my opinion, counterproductive.
"Teach them to be better than you. That may seem counterproductive. I have a type A personality, and I have decent coding skills. I've been in your situation a number of times. I also know there's these mythical expert developers out there that I can't seem to find (or afford). So, what to do? A few years ago I realized that if I continue down this path, I'll end up with some serious health issues due to the stresses that come along with having a reputation for being a really good developer.
So, I decided that instead of searching for developers better than me, I would teach developers I work with how to BE better. It's taken a lot of patience. And it's taken me quite a bit to LET GO of my way of doing things. I had to take my ego out of the picture. (VERY hard to do.)
Nowadays, I realize that developers don't have to BE better than me. I simply have to ALLOW them to do what they do without being so obsessive about it. Turns out, even junior developers really CAN do good work. They just need a little guidance that only comes with experience, and then they need me to get out of their way."
My guess is it's a net loss for the org in most cases. The exception being if you sit there for days.
My objection is with never asking for help, not trying for a while and then looking for help only after you've put in a reasonable effort.
Seems like common sense but you know how common that is... :)
1. It makes you look junior. 2. It makes you done with your work earlier 3. It deprives you of an opportunity to practice tackling difficult problems on your own
It's something that helps the company in the short term at your own expense.
But asking for advice too quickly can be harmful. There have been times where I struggled for a day or two with configuration, and the answer was a few lines of xml.
But the process, checking all of the dozen possible failure points, along with a few possible combinations? It actually did leave me with a much stronger understanding of the system and how it works. It probably was a valuable day and a half.
And my hair did grow back in, eventually.
Being an engineer that can always dive to the bottom of the pool and get the penny will make you incredibly valuable to your employer.
The darker side of this is that, for better or worse, in most organizations asking for help is an awfully expensive way to spend your technical reputation capital. It's extremely frustrating, but I've seen pretty poor engineers ride their way up the pay scale by bullshitting at every opportunity.
Unless you have no chance of solving it yourself, try to figure it out.
My first job programming was with some introverted people who were fairly smart, on a very poorly documented system. It was really difficult to ask anything, and when I did they were not very good at explaining and I felt kind of stupid, and just went back to staring at the code. Nearly got fired from that job for not being productive enough.
Took another job, and decided to learn from my mistakes - I asked a lot of questions, especially in the beginning, and needless to say that one job went a lot better.
A few additions:
A rockstar tries to make everyone else into rockstars. they write up documentation, fill in tests, take notes at meetings for others to reference, and are the ones people go to for help.
The write code they write is crystal clear and easy to support, and sets an example in quality.
I think only (1) is toxic and should be avoided.
A wide range of expertise with the ability to rapidly deep dive wherever needed is what I consider a rockstar.