Software Services Vs Product: How is it different for you?

Date:   Saturday , July 01, 2006

At a high level, IT software professionals can work in a software services company or a software product company. This article will draw some differences between the activities and dynamics of working for these two kinds of companies, awareness of which will help professionals perform and behave appropriately.

A software services company’s customer is typically one company that has a specific requirement that is being satisfied through outsourcing. Although the customer is hoping to get domain expertise, the minimum expectation from the team is the technical skill set. In a software product company, in the long-term (preferably in the short-term as well), the domain expertise becomes more important than just technical skill set.

The differences go well beyond just skill set: the expectation from a services company is to deliver an application/system program or a product module to the services customer who will in turn deliver it to their end-customer. The services company has much less control over the schedules and often asked to attain difficult goals. While the quality requirements are likely to be stringent, typically there is however a buffer before your deliverable reaches the end-customer. This shields the services companies from the direct impact of a product or a project release, of the kind faced by product companies.

A software services company expects its professionals to acquire a breadth of skills to ensure he/she can fit into many different project teams. The value of a services software consultant is directly proportionate to the number of skills in which he/she can claim expertise. In a software product company the depth of domain and technical skills overrides all other expertise requirements. A services company’s revenues are directly proportionate to the number of employees while product companies try to maintain the least number of headcount for a given product line. Note that a services company that takes on product development often has most of the characteristics of a product company depending on the level at which the relationship is built. Employees in such teams need to understand the dynamics of both models.

Tips for the smart techies.

In Software Services Company:

  • Understand your company’s value to your customer, and acquire the skills that are required today and in the future.
  • Try to research your customer’s customer (internal or external); their problem is also your problem; it will help you develop better solutions and satisfy your customer.
  • Build relationships with your customer team and get yourself the ability to relate to their goals.
  • Keep yourself constantly updated on technology and management practices – this is critical.
  • Try to get a rotation of projects over a few years to ensure development of a breadth of skills.

    In Software Product Company:

  • Technical depth is essential to do well in such a team; Breadth of skills is good but not necessary (i.e., knowing C++ very well is more important than also knowing Java and other languages).
  • Domain expertise is a requirement over the medium and long term; Stick to a product or product line; frequent rotation of product or project should be avoided.
  • Quality is critical since it is going from your team directly to an end-customer.
  • Understand the customer of your products very well; Talk to or visit or participate in meetings with customers whenever possible; similarly interact with sales team members.
  • Try to maintain your expertise on the latest technical developments in your domain.
  • Try to understand the business angle to your product i.e., the profit and loss statement, and the parameters that impact it.
  • Use your domain knowledge to innovate.

    Sridhar Jayanthi is the VP of Engineering and Head of Indian operations-McAfee Engineering Center. He is responsible for the Indian R&D and product development operations including the organizational development, operations strategy and project execution. He can be reached at Sridhar_Jayanthi @McAfee.com