For some time, I am thinking about exemplary traits of a successful technical leader. This is based on my 2 decades of experience in the field of software development. I am blessed and fortunate enough to work with great peers, managers, customers, mentees throughout my career.
Also, countless other factors shaped me like learning from failure, dealing with challenges and setbacks, dealing with personal life along with professional life, taking care of family etc. It may be surprising to some that these advises are not technical in nature as being good technically is a fundamental trait of a technical leader. I am a firm believer of learning by first principles and try to adjust my mental models accordingly. I will be happy if it helps someone in any way.
Any job in any organization has only one purpose, create value for business. It sounds simple but it is easy to loss this key principle in layers of day-to-day churn. A technical leader’s foremost task is to take a step-back regularly to have a macro-view to understand the business and the users and then create value for them using a micro-view of the technology. It always helps to listen to business then be technically right. Business-technology-Users metrices can work as North-stars to enable it.
The ability to understand a system from end to end. This entails but not limited to the software’s used, the hardware, the integration with 3rd-party, the network, the different perspectives of using the system by different users’, competitors, trends etc. It is quite valuable to not live inside the silo’s.
It is about being resilient to failures, developing highest form of integrity and most importantly taking ownership for each failure and fix it. The only thing people around you want is a better version of you. Be that guy.
As an architect you are in a leveraged position to save countless engineering cycles. You want the engineers look into more valuable problems then doing the same job repeatedly. Automate as much as you can, as many places you can and as early as you can.
I have seen this mistake many times where people spend a lot of time on looking for novel solutions. Great is the enemy of good. You can put a good enough solution to start with and then improve iteratively and build upon that. You can always discard it if it doesn’t work and start with a new approach. The bonus here is the time and effort you save by taking a decision early enough. Same goes for the trial and tested solutions vs shiny new tools. I generally follow a technology curve-based approach where I try to get acquainted with a technology early and then watch for its maturity over time. Depending upon its adoption in community and pace of progress when it reaches a certain maturity level then I adopt it into a suitable use case. Timing is the king.
A small improvement of 2% in a system can go a long way in team and user satisfaction or can lead to huge savings of cost, effort for the business.
What we are today is not a solo heroic effort of us alone. It’s a story lashed with lots of failures, few successes, lots of twist and turn and milestones. But most important is the fact that we are here today due to somebody’s kindness and support. Pay it forward whenever you get a chance. Afterall it’s impossible not to be happy after helping somebody directly and indirectly. What seems trivial to us may be someone’s lifesaver. We may not remember those exact moments when something stroked us hard and may not remember the angel who took us out form that dead-end but all of us know that feeling. Be that angel for someone else. Be available for others and help them solving their problems.
World is full of abundant opportunities. There is enough for everyone. The only limit is our imagination and creativeness. We must learn to collaborate and grow together.
I am surprised many times that when we frame situations as problems we can see lots of opportunities around that problem. Don’t think problems as blocker but door to growth opportunities.
The technology industry is undergoing a sea change with a flurry of innovations. Learn and unlearn as and when required. Accept the fact that you will not know everything, and others may know more then you. I am a huge fan of collective intelligence of humans and the believe that this trait probably is fundamental to our progress vs other species. Learn to leverage that.
Life is short, have fun! You got to stop and smell the roses.