To be a successful tech lead, it stands to reason that you have to be a successful technician. How can you direct your engineering staff, unless you yourself have a grasp on engineering yourself?
When mentoring junior engineers, I break down the ultimate technician as the perfect balance of three profiles:
- The Technologist – This is the guy that knows his tools inside and out. The DBA who has seems to have memorized the entire Oracle admin manual; The programmer who can tell you every difference between Visual Studio 2003 and 2005. The architect who can those acronyms for industry standards like it’s normal English. We gaze in awe at these masters of technical knowledge, spewing words that we don’t understand, but sound oddly familiar. It may not seem possible, but you can get there. Practice, Practice, Practice. Larry Bird of Boston Celtics fame would shoot 1,000 jump shots every day…even after he won the NBA championship. Do the same with your engineering tools, and you’ll have your own fan club.
- The Academic – This is the theorist, the thinker. The technologist may know his tools, but lacks the big picture. One difference between an electrician and an electrical engineer is the engineer’s understanding of hard math like Fourier transforms and boolean logic. In another example, some systems people may know how to configure a server, but don’t have a grasp of how many servers would be needed for a good network load balancing setup. Using our sports analogy, you want your franchise player to be more than a master with the ball; you want him to know his Xs and Os. This is where good old fashioned homework comes in. Read, Read, Read. Subscribe to magazines, surf the web, go to lectures at a technical interest group. Eventually, you’ll develop a big picture, a contect in which to employ your hands-on skills.
- The Pragmatist – If you have someone that fills the bill of a Technologist and Academic, you’re still going to want to knowhe can get the job done. Too often, technicians get wrapped up in the purist details, unwilling to do what it takes make a deadline. One of my own early mentors always amazed me how far he could go with only intuition and research skills. He would be given a hard problem, in a technology that nobody knew well (including himself), with impossible timelines, and always come through. It came from an abilty to cut through technical noise, understanding what the organization’s real priorities are , and striking a balance between the options at hand. Although this is a hard skill to develop, there are a couple ways to help you adopt this kind of mentality. First, be willing to take stressful, time-critical assignments. Nothing hones you better than fighting in the trenches. Second, be willing to be patient. Life offers you lessons that don’t necessarily come on demand. With these two techniques working in concert, you’ll have to develop a pragmatic skillset, just to survive.
Mind you, these charactaristics do NOT make you a Technical Manager. You can be the Michael Jordan, the David Beckam, the James Bond of engineering, but fall miserably on your face when trying to get others to perform at a decent level. But we’ll talk about the other qualities of a Tech Lead in later posts.