(Recently, Shirish Deodhar, a well-known figure in the Pune technology and startup community, published a book, From Entreprenurs to Leaders, which makes the point that while the last 10 years saw the rise of several billion dollar software services companies in India, the next 10 years will see the rise of billion dollar software product companies from India. The book explores the dynamics, challenges, and opportunities at all the different stages that these companies must pass through.
The book uses a number of India software companies as case studies, many of them from Pune. The Pune case studies included are: ProFound Technologies (now defunct), Career Vidya Labs, Ixsight, Kale Consultants, CompuLink, Persistent Systems.
We have reproduced here (with permission from the publisher, Tata McGraw Hill) an excerpt from the book. Here Shirish talks about how to build up a high quality engineering team in early stage companies – basically, those companies that have gone past the startup stage, and now have revenue between 2 and 20 crores. At this time, the company has to move past the founders and few early engineers to a team with the right roles and responsibilities defined. This excerpt gives advice on how to do this specifically tailored for the Indian context.)
High Quality Engineering Team
Do you want a collection of brilliant minds or a brilliant collection of minds?
– R. Meredith Belbin
Good ideas become great products with the right engineering team. It starts with the technical leadership. Initially, this might have one or more founders. A larger company may have a Director or VP of Engineering responsible for product development activities.
Smart engineers being what they are, they only look up to someone who is like a ‘God’ for them. This means the engineering head has to be knowledgeable about the product and technologies, a highly capable software architect, innovative, adept at resolving low level technical problems and good at motivating people. In a bigger company, the person will be less hands-on and more experienced at managing people (engineers, clients, company management) and logistics of product development.
Like an orchestra that requires a mix of instruments, the team should have the right combination of engineers. In the beginning, the ideal combination is a product architect and designer and a team of mid-level and junior engineers with required skills, high aptitude and right attitude. The composition will change as the company evolves. Start-ups first need innovative, experienced and independent developers. Then, one adds people who are good at getting detailed work done with some supervision. Later, junior developers and those with different skills such as testers and support engineers are required.
Teams need a few smart ‘techies’ who are great at conceptualizing new ideas, implementing them the first time, and resolving complex problems that may come up. But you should not have too many of them as they get bored easily. The rest should have solid temperaments, and be good at systematically executing assigned tasks to high quality. The high performers of both kinds, innovative or solid, have to be nurtured. This should not be at the expense of others, since ultimately it is teams that win games.
The test of a great team is a sense of common purpose combined with healthy respect for diversity, and the ultimate reward is a winning product.
Growing the Engineering Team at VERITAS India
I faced the challenge of building a strong engineering organization after the acquisition of my first company (Frontier Software). In February 1999, I became responsible for VERITAS Software’s India subsidiary. VERITAS in US had grown rapidly to $200 million, 2000 employees and many products. However, the India team consisted of 40 engineers in 2-3 teams, which was relatively insignificant in overall numbers. I was assigned the task of transforming the Pune subsidiary into an integral part of the global organization within three years.
VERITAS was in the technically challenging niche space of storage software. The India subsidiary had been looking for senior engineers with domain expertise in storage and strong technical skills in Unix systems. These skills were hard to find, and hence the team had grown slowly. The task was relatively easier for other products such as data protection, which needed expertise in Windows and Unix middleware, UI development, Java and C++. All teams wanted test/QA and automation engineers. Finally, experienced engineering managers were critical for the new product teams.
In India, it was very difficult to find experienced engineers with a product background and who were still technically strong. The Indian software services industry was growing at phenomenal rate, and computer science graduates with experience were in short supply. Companies encouraged technical people to become project managers after 3-5 years of experience. This in turn led to a belief that the career growth required transitioning from technology to management. This was fine for services, but exactly the opposite of what product companies needed.
In this scenario, we adopted a pyramid-style staffing approach. To create the foundation, we went to the IITs, IISc, BITS Pilani and top 5 engineering colleges in Pune. We pulled out all stops to ensure that we were among the first 3 companies to be invited for campus interviews, so that we could hire the best graduates. VERITAS was not well known in India, so we made presentations highlighting the remarkable growth and technical achievements of the company. Each campus was visited by ex-students and few senior managers. We offered attractive salaries and stock options. At the IITs we focused on M-Tech (Computer Science) students. They were temperamentally more mature, some had previous work experience and, unlike the B-Techs, did not aspire to go abroad.
Our tests were difficult and interviews were rigorous. This created a ‘techie’ image for the company, and the best candidates wanted to get in. We recruited over 75 engineers each year, for 3 years in a row (2000-02). The middle layer, which required senior engineers, took the longest time. Initially, it was filled with lateral promotions from existing teams, and selective outside recruitment. VERITAS growing reputation as the fastest growing global technology enterprise, and our relatively high compensation, helped us cherry-pick some good talent from all over India. Over time, many of the outstanding M-Tech campus hires grew into the senior and lead engineer roles.
The top of the pyramid required engineering managers. The criteria were 12+ years of experience at product companies, strong technical skills, high emotional maturity, and good people management capabilities. We did not insist on storage or systems expertise.
This strategy of relying heavily on campus hires had significant risks, and was questioned by many. To make it work, we promoted the concept of ‘each one, mentor one’. Experienced engineers guided one or two freshers besides managing their own work. It demanded extra effort from the seniors, but they delivered. By late 2001, most of the campus recruits had become star contributors, delivering value far in excess of what we had anticipated. Many had also raised their eyebrows, when we decided to hire managers with no storage or systems background. But, they too were excelling in managing delivery, communication with US, and maintaining high performance and motivation within their teams.
In four years, the India subsidiary had become strategic to the company, with nearly 500 employees in 16 product teams, representing 22% of worldwide engineering. At a company meeting, the CEO commented on VERITAS Pune as an outstanding engineering location, which created a competitive advantage for the company. On campuses and in the Pune IT community, we were widely considered to be the preferred employer.
Smart Strategies at Small Companies
You don’t have to be a well-known or a high paying company, to get the best talent. The pyramid approach is also valid for small product companies. You need great product architects and people managers at the top, few competent technical leads in the middle, and a talented pool of engineer with 0-3 years of experience. The ratio between levels should be around 1:6.
Bulk of the hiring in India is still for services companies. But the product culture is beginning to seep into the psyche of software professionals. The most coveted jobs are at subsidiaries of global product organizations. The younger generation is also willing to join small Indian product ventures because they know that the work there is often more exciting than at large services firms. A career food chain exists, with engineers preferring well-known companies. A product venture will find it easy to hire engineers from those lower in the food chain – smaller companies (product or services). Hiring from large services firms is also feasible with more and more professionals aspiring to do something more creative than an endless series of IT projects.
Indian product companies can also bring in capable senior talent from global product subsidiaries, where they often face a glass ceiling effect. At captives, as 100% subsidiaries are called, most high level product roadmap and architecture decisions are taken at headquarters. The teams in India are responsible for implementation. This gap is partly because India teams lack access to, and the knowledge of, customer requirements. Hence the top talent there is itching for greater empowerment and opportunity to shape a complete product. Salaries at multinational subsidiaries are quite high. But some seniors may be willing to take pay cuts and join for a reasonable combination of salary and equity.
Like with customers, you must market your company to prospective hires. Komli1 has done a good job at this. The founders themselves are very accomplished, with degrees from Harvard University and IIT. Later they were joined by the former CFO of eBay India. As part of the hiring effort and branding, Komli organized an Algorithm writing contest (‘AlgoGod’). This created good publicity, especially in the IITs, from where they hired eight engineers in their first year (2007). Their employee policies are generous, including unlimited vacation (they trust their employees to know when they need a break), health coverage, and stock options.
footnote1: Since the writing of this book, the division of Komli that Shirish referred to in the excerpt above has been spun off as Pubmatic. -PuneTech editors.)
About the Author – Shirish Deodhar
Shirish has over 25 years of software industry experience in US and India, and has incubated and led several IT companies through rapid business growth.
His two previous companies merged with global majors – In-Reality Software with Symphony Services Inc. and Frontier Software with VERITAS Software (now Symantec Corp.). Subsequently, as head of their Pune subsidiaries, he was instrumental in scaling revenues and growing the team size to over 500 employees in 3.5 years each.
Shirish did his B-Tech (EE) from IIT Mumbai, followed by a Master’s degree from USA. He has a US patent, several excellence awards, ten technical papers, and a book titled ‘From Entrepreneurs to Leaders’ published by McGraw-Hill.
1 thought on “How to build a high quality engineering team – Excerpt from Shirish Deodhar’s new book”
Comments are closed.