The most successful businesses Iâ€™ve worked with have one thing in common: excellent leadership. As the president of a custom software development firm, I have learned this from working with dozens of businesses of all sizes and types.
In particular, a technology visionary who is also a good manager is essential for a growing company and especially a startup. The right technology decisions make your product and company scalable and keep your team lean.
Based on what Iâ€™ve seen, here are the top qualities that distinguish a great chief technology officer (CTO) from merely a good one:
1. Strong Engineering Discipline
GoodÂ CTOs should be able to apply practical knowledge to build better software. They shouldnâ€™t rely on people under them or consultants for technical expertise.
Those who lack technical discipline may end up authorizing decisions that lead to a lot of â€œtechnical debtâ€ or incorrect code toÂ the company, which will need to be recreated. For example, one of my friendâ€™s companies created a custom framework rather than relying on a proven technology, like Ruby on Rails. His CTO didnâ€™t anticipate how hard it would be to get new hires up to speed writing code on an unproven framework. Custom frameworks donâ€™t scale for larger companies. Now, my friendâ€™s company has to completely rewrite their software.
A CTO who has been well-trained in building software will be able to avoid such pitfalls.
CTOs should haveÂ experience with both managing people and guiding technical strategy. Technical discipline, after all, comes from seeing projects through and learning from successes and failures. TheyÂ should have experience managing peopleÂ as well asÂ the process.
Although one of our clients hadÂ a staff full of talented developers, he chose to bring in a CTO with leadership experience, when his company got a new round of funding. This CTO has helped him structure his growing company and has done a great job managing the people in addition to the code.
3. A Large, Quality Network
No one knows everything. If your CTO has a good network, she can easily fill the gaps in her knowledge.
One of our clients got in touch with us at SmartLogic when he needed an iPhone application quickly, but didnâ€™t have any iOS programmers in-house. Because this CTO had us in his network, he wasÂ able to get the app developed without going through the arduous process of hiring a full-time developer.
A good CTOâ€™s network can include trusted development firms, engineers, and consultants who can answer niche questions.
4. Knowledge of the Full Stack of the Technology Youâ€™re Working With
For many startups, this means a knowledge of everything that goes into web software. But not all technical people have an understanding of how the Web works.
5. A Practical Approach
Your CTO should be a true team player who puts his or her ego aside when necessary. Sometimes our clients have to cut technical corners to meet market demands. If your marketing department is asking you to use PhoneGap to patch together a mobile app because it needsÂ it out the door ASAP, a CTO might need to sacrifice her ego and love of good code to do it. Part of aÂ CTOâ€™s job is to ensure that technical strategy matches overall business strategy. Sometimes, compromises must be made.
Yair Flicker is president of software development firm SmartLogic, winner of Baltimore Innovation Week’s “Best Web Development Firm” award.
BusinessCollective, launched in partnership with Citi, is a virtual mentorship program powered by North Americaâ€™s most ambitious young thought leaders, entrepreneurs, executives and small business owners.