Product engineering

3 mins

Co-development: an IT perspective

Kelum Chathuranga

Feb 10, 2022

Co-development and co-creation refers to the ability of different companies or teams to come together to create and develop products and applications, or even new ideas and business verticals. As an IT consultant company, in this article we would like to discuss the IT angle of this concept. Our team has worked together with a number of businesses over the years working in the co-development model, and we are convinced that it brings great advantages to both parties.

What are my options?

Many businesses are good at what they do, they have people who have worked tirelessly to become experts at what they do and have absorbed a vast amount of domain knowledge. This knowledge, however, is domain specific, and is not transferable to other fields such as IT. When starting a new project these businesses have three options:

Create an inhouse team

This can be cumbersome if you are not a business that currently has an IT arm. The costs and hassle associated can be prohibitive, as you will need to hire new people, setup infrastructure, purchase software etc.

Hand the project to a software development company

Another option to consider, the drawbacks of this option are that the software company, while they may be extremely talented in design and development, will not be well-versed in the nuances of your business domain.

Co-development

Co-development brings the best of these two options into one. In co-development you bring two teams together, development and business to create a product that is both at its best technically and with domain related business logic.

Why does co-development work?

Bringing together business and IT

At first glance co-development can be seen as unnecessarily complex. Do we really need to bring two teams to create a product? How will responsibilities be divided? Who takes the final responsibility to ensure the product is delivered? While these are all valid questions, the pros of co-development far out-weigh the cons.

Bring your business knowledge to bear

There are many applications that do not need to be built from the ground up and customised for your business, such as CRMs, HRSs, ERPs etc. But there is another set of applications, those that need to be custom built with your business’s requirements in mind. Your LoB systems. Your bread and butter. These applications need more focus and care than just buying them off the shelf and hoping to hammer them into subservience. The specialist knowledge needed to build these applications can only be given by you and your team.

Leverage the best of  IT

You have the business knowledge, but to translate that into an application that will work for you, you need another specialist team or teams. These IT specialists come in where your knowledge ends. With expertise in design and development, they can help you take what's in your head, and put it at your fingertips.

However, these maestros cannot work without your domain knowledge, nor can they build an application that works for you and your team without having them onboard.

Communication and collaboration for success

Working together to achieve success

The success of co-development hinges on these two words.

Without open, frank, and honest communication, your teams will not be able to reach their goals. Information hiding or dressing up the real situation will result in absolute chaos. News, be it good or bad must always be shared openly or trust between the teams will be broken. Once that trust is broken, you might as well hang up your hat and give up on the project.

Seamless collaboration is the second key requirement for co-development. To this end, a process and any required systems must be put in place to ensure the teams are able to collaborate without any hindrances. Furthermore, both the teams must be on the same page regarding any formal collaboration process.

Conclusion

Co-development is a game changer. It allows businesses and IT companies to come together and create something brilliant: a product that has the advantages that the latest technology can offer, while it also contains the business logic gained through years of experience.

Communication and collaboration are the two main requirements for successful co-development. Teams must be able to build trust with each other and work in a way that empowers each other to succeed.