In this article we will give you some more insight into the world of our own Senior tech leads and specialists. Whether they are Drupal, Craft CMS or webapp experts.
Of course it starts with knowledge and experience.
As a senior developer, you must have acquired in-depth knowledge within your field of expertise. There may certainly be gaps in your knowledge, but the vast majority must belong to your ready knowledge. And gaps in your knowledge are filled as quickly as possible, because you just want to.
You have to be technically strong, so that the code you produce is also of the highest quality. This applies to performance, design and readability. And your code is neatly documented, so that your colleagues can learn from you 😊.
A second, more important aspect is that as a senior developer you have an arsenal of solutions at your disposal. You need to be aware of the common (and less common) solutions that exist. At Drupal this is about knowledge of the available core and contrib modules and how they work together. Or for Laravel it's about code packages and performance practices.
Your knowledge also goes a bit further than your field of expertise. This way you will be better able to see the bigger picture of a project architecture. It also helps to speak each other's technical language so that you can form a bridge between colleagues.
The last and most important part is the way you interact with people. You can still be the best developer who writes the best code. If you and your client or colleagues don't understand each other, problems are bound to arise.
Understanding goes beyond speaking the same language. If a customer comes forward with a problem, you should be able to answer three questions:
- What does the customer want?
- What does the customer really need?
- Is there an alternative/common solution?
A customer may have a question that is very vague, very concrete or somewhere in between. In all cases you have to be able to extract the essence of the question. What is the business value of the customer's question?
Once you have determined what the customer really needs, you can ask yourself the following question.
Are there alternative and/or standard solutions that solve the problem at a much lower cost? What is the best solution for your customer, in his situation? By always weighing all possible solutions against each other, it is not only financially better for your customer, the project code also improves.
The guidance you give to colleagues is also important. This can be summarized in two points:
- Be a point of contact and make time for this.
- Provide insights instead of solutions.
People need to know that if they need help with a complex problem, have a question or simply want to do some rubber ducking, they can come to you. In fact, you need to take this into account in your planning because it is part of your job. Just the idea that they can turn to someone if they get stuck will give them more confidence.
When a colleague comes to you with a problem, don't immediately give them the solution. Go with them to determine the essence of the problem and let them provide the solution themselves. The thinking process towards the solution is more important than the solution itself. Of course, this is not always possible and spelling errors in code can be noticed flat. Even if the problem was something easy to google, you can drag the person through 😊.
In addition to being technically strong and having an arsenal of solutions at his disposal, a senior specialist must above all be able to talk to clients and colleagues. He must be able to link expectations and information to insights and concrete solutions while keeping the bigger picture in sight.