Who gets to decide whether or not I’m a “rockstar” developer? Well, who decides whether a musician is a rockstar? Being a rock star implies massive public recognition and record sales.
So a rockstar developer writes code that downloads in the millions, and their name is a household word. Uh, sorry to tell you, but there are no developers whose names are household words, except maybe that guy who started FaceBook. What’s he coded lately?
Can a programmer’s rockstardom be proclaimed? Nope. Look up Pia Zadora on Wikipedia.
Now, on to ninjas. They can sneak around and kill lots of people. A software ninja can sneak around all the obstacles and kill off lots of design problems and/or bugs. Ok.
Can I call myself a ninja? You bet! Every Halloween. Can I proclaim my own ninja-ness? Sure I can, as long as I THINK I’m really swift and nimble and I kill lots of something.
Do recruiters who ask for rockstars and ninjas realize they’re inviting the egocentric, the team busters, the Lone Rangers, the loose cannons? Perhaps calling for a rockstar is to stroke my ego and convince me to apply. By applying, I BECOME a rockstar.
What kind of person describes themselves as a superhero? If someone volunteers to you, “I’m a programming rockstar”, why don’t the egotistic jerk alarm bells go off in your head?
Just use your English. Use words like “expert”, “advanced” and “battle-hardened”. Even the words “really really good” are better than ninja.