When we decide that is time to grow up as a developer, most of us think of learning a new design pattern, creating a project using that unfamiliar programming language, or reading about some recent framework.
Don’t get me wrong, those activities are great to build a strong technical background. However, focusing entirely in technical skills does not guarantee a solid growth as a developer. Let's talk about how can we improve our mindset to become a rockstar developer.
Effective communication with your team really matters, a lot.
The difference between a good programmer and ninja guru rockstar developers is not defined by the amount of lines of code by day. Building great software isn’t just about coding.
You will find a list of factual tasks that will help you improve this soft skill:
- Share your knowledge. If you can work side by side with others and provide mentoring, you become even more valuable.
- Allow yourself to express a strong opinion. Sometimes you may feel anxious to give the wrong answer. Remember, is not enough to be familiar with seven different frameworks, sometimes you need to be heard about what you like or don’t about those technologies.
- Communicate all the needs accurately to your client or team - dangers, progress and doubts.
- Express technical issues in a way that is comprehensible also by non-technical team member.
- Improve your writing skills; coding great projects is only a part of being a skilled developer. Knowing how to draft technical material such as system documentation, and being able to clearly respond an email, are increasingly important soft skills.
As developers, we all like to believe we are more than “code monkeys”, you know, the expendable, interchangeable cogs in the software making machine.
However, to be more, we have to deliver more. There is so much we can contribute apart from transforming requirements into code. We must become consultants, helping our client make smart decisions and getting the maximum value out of every hour we invest.
To put it differently: good developers excel at solving problems defined by constraints… but a rockstar developer can help their clients redefine those constraints, solving bigger problems and avoiding wasted effort. Having both skills is an extremely powerful and valuable combination.
So, you want to be a hero? then start managing expectations.
A common error of mine was I used to accept to any crazy timeline my client came up with. Everytime that happened I took it as a personal challenge, and I would do whatever it took to deliver. The consequences were multiple code marathons fueled by huge amounts of caffeine.
This strategy worked at the beginning. High fives were received and I felt like a hero, but working like that is unsustainable. At the end of the day I started to burn out, get sick and miss deadlines.
What I finally came to understand, and what you should commit to learning too, is that the real heroes are the ones who are constantly reliable. They say what they will do and do what they say. The only way to be that kind of hero is to manage expectations.
You need to take control of the timelines so that you are constantly delivering high quality work on schedule. At first this is not easy, because it means you have to say “no” and push back.
Over time, you will build a stellar reputation for quality and reveal that you are trustworthy. Then you will become the real hero, a rockstar developer.