Coders have this power to work on complex problems, simplify things and in many cases, cut out the mundane. A rockstar coder is a programmer who is very aware of his/her abilities to do this and uses it to constantly achieve the same.
I have worked with a lot of developers in the past and there are a few common traits I come across in most rockstar coders.
What do these rockstars do different?
1. Explore the unknown by trying things out
This is by far the most important thing they do consistently. They love to explore and don’t balk at a chance to try a code snippet, a language or new library. Give them a new technology stack to evaluate and rather than giving you just the research they found online, you would get back a git repositories with some basic use cases tested out and more.
2. Enjoy social coding and give back to the community
They don’t sweat before forking an open source repository on Github; to make changes and testing it out. Report bugs they discover in an internal or public repository with steps to reproduce them. Answer queries by other developers from time to time at various tech community outlets like stackoverflow, slack or irc.
3. Problem solvers and investigators
Use tools like browser inspector, debugger and log statements to get to the bottom of things.
Instead of looking for the next person in the room to help with the weird issue they are facing. They first investigate the error throughly and exhaust all the possibilities they could think of. Eventually if things are not obvious take help of colleagues and peers willing to help on the social channels described above
4. Not interested in the grunt work
They absolutely detest doing repetitive stuff.
- Automate things using scripting languages that need to be performed often
- Make sure their code is DRY, modular and highly reusable
- Use aliases instead of typing in lengthy commands
- Use templates to generate boilerplate stuff
5. Are constantly learning and updating their knowledge base and coding technique
Like Deming, they want to constantly improve the quality of programs they write and get deeper insight into how things work.
If you want to become awesome at something, you need to do the hard yards. Some of these things can be learnt but for others you need to be passionate about technology.
Close to 15 years in tech; I've served as a CTO and advisor to multiple organizations. Brought close to 20 products to market. As a founding member of multiple organizations I've done everything from tech to stratgey, sales, marketing, hiring, accounting and more. Experience in a variety of technologies including but not limited to AWS, Node, React, Serverless, ElasticSearch, Groovy, Java, Typescript, Angular, Grails, PHP, Drupal, Wordpress.
Always interested in looking at new tech, strategy and ways I can add value to organizations.