Early career lessons
Early in my career when working for Dell Inc., I was working as an embedded systems software engineer. I built instrumentation code and APIs that a data center admin can tap into to control servers in a data center environment. Instrumentation code was the connective tissue between all the hardware, firmware, bios on a server and the OS layer. It brought everything together. I saw that the engineers who had intimate knowledge of this were the most sought after goto people in the entire department. This was a time before FOSS took off around 2008. Git was in its very early days and was starting to take hold. SVN was the prevalent version control system. The internal culture of the company was closed and proprietary. So were the minds of many senior engineers, who had no incentives to teach folks like me early in their careers back then. Case in point, build and/or know about the heart of the product or system and your value will be high for the enterprise.
I truly believe in developing people for many reasons including but not limited to the following.
- Expand and extend the frontiers of your program, products, portfolio and company.
- The more people develop and grow, the more interested they are and higher the retention.
- They share their life timelines with you. It needs to be meaningful.
- The more they grow the more they can tell and identify what we need to do, instead of being told what to do.
I see many leaders struggle in delegating, trusting and letting go. I have found it pretty natural to delegate myself. Because, I have seen the more I groom a person and believe in them and show where they can be, the more they’ve grown. I have been fortunate enough to hire A players. However, I do have team members who are still trying to find their feet, coming from different managerial leadership environments. For those members included, I have been working to get them better than yesterday. Seeing where they are and identifying where they need to go, and charting a path.
Not too long ago, my partner and I were the 2 key architects for our React and Angular libraries. We had a new generation of design system and language in the works. I saw the opportunity to groom new dev leads on the program. We were also venturing into native mobile components space with Flutter.
For React and Angular, I identified 2 engineers who had been delivering solidly and taking ownership of the maintenance of the libraries. I talked to them individually about their interests and the opportunity ahead. To my surprise, they were more than keen to take it on. Angular library is especially tricky since it has a huge user base in the enterprise and it is more complicated. However, when building the previous generation of the lib, I made sure I invested time to ensure this engineer understood the heart of the system. That investment paid off. Fast forward, she with some help from me in laying down the repo infrastructure took the mantle of Angular UI library leadership, architected all the components in the best way possible, ensuring simplicity and smooth dev experience. The new React lead also came through with couple more people joining in.
The program has grown, the people have grown, they are now self sufficient holding the corner stones in the program. This has allowed me to venture into expanding the frontiers of the program.
Either you are doing it yourself or grooming others to take ownership, ensure you focus on the heart, arteries and the deep-ends of the product or system. With time, like in anything, the investment will pay back hugely.