>>

Traits of software product engineering ecosystems

Software Product Engineering (SPE) continues to be among one of the coveted areas in the IT industry. We belong to the era of Cloud Computing that is aimed at optimization, consolidation and eco-friendliness. Also we are part of a time where there are huge investments happening on Second Life products.

Yes! The software industry offers a variety of products. There are products that support us in improving the quality of life. Also there are products being built for entertainment and illusionary delight.

SPE started with the production of very stable software products that have been running on mainframes for several decades. The story is clearly very promising with a bright future.

Beyond doubt, Software Product Engineering (SPE) is a global phenomenon that involves both producers and consumers across geographies and time zones. All over the world, there are innovators, thought leaders, entrepreneurs, practitioners, user groups, teachers and students who dream, live and breathe SPE.

The traits of SPE are very unique. They can be easily related to the culture and evolution of communities and geographies that specialize in SPE. Let us traverse through the traits of SPE through the five key aspects viz., Technology, Product, People, Process and Culture.

Technology:

SPE involves current or next generation technologies. This brings in a high level of dynamism and evolutionary nature in the technical environment. Predominantly, such an environment involves multi-platforms as well as state-of-the-art or cutting edge technical paradigms.

Product:

Products are developed under a tight budget with a very high pressure on speed-to-market. The end users of products are unbounded. In most of the cases, this means unpredictable scalability. Product Quality is of the utmost priority and hence the Cost of Quality is very high. This means a product can make or break a brand.

People:

Engineers who contribute to the various lifecycle phases of SPE possess not only deep engineering skills but also ‘Product Engineering Mindset'. Product Engineering Mindset includes qualities such as self-learning, collaboration, team work, perpetual experimentation and exploration, asking precise questions and seeking answers, promoting reuse, commitment, focus and courage.

Process:

Typically SPE organizations follow home grown process or light-weight processes. Many of them follow Agile or Lean based methodologies. It is not uncommon to see the lack of detailed documentation in SPE ecosystems.

Culture:

SPE culture is unique. It is technology driven. It is very aggressive and action-packed.

Working for an SPE organization or founding a high-tech startup is the dream of many software engineers. This is a very challenging and rewarding dream that requires high-level of ownership and commitment. In my opinion, understanding these basic traits of SPE is the first step to prepare oneself to join SPE ecosystems.

Raja Bavani, Technical Director, heads delivery for MindTree's Software Product Engineering (SPE) group in Pune and plays the role of SPE evangelist. He also blogs at:

http://www.mindtree.com/blogs/author/raja-bavani