In fact, in the field of software, much of the innovation happens in companies to begin with. Therefore, there’s no reason to leave consultancy companies without the benefits of these opportunities. However, the scope and the time frame for the research can be radically different.
As a part of an exercise run at Solita during Spring 2018, we’ve been deliberately charting opportunities to encourage research participation. We’ve come up with the following alternatives to include research in our daily consulting portfolio:
#1: Work on company’s own data to improve performance and processes
Any company creating software produces a lot of data that is associated with the development. Requirements management, version control systems, testing automation, tool chains and so on are an important element for high-quality systems, not to mention the competences of the development organisation. Studying the data for scientific purposes can therefore reveal bottlenecks and help improving various aspects of the development as well as development capabilities.
While this is often considered insignificant in small projects, data from numerous related (or otherwise similar) projects can also introduce performance improvements as well as better developer or end-user experience. Furthermore, it is possible to combine data from several clients to create a more comprehensive view than when working with one system only.
However to systematically do so requires including research oriented activities in the costs of all the involved projects, either directly or as overhead, which can be a no-go for pure price-based competition.
#2: Partnering with companies and institutes that work within research genre
Many research-oriented tasks in EU are publicly funded. For instance, European Space Agency has an open call to tender for projects that at least partly qualify as research. At very least, working on such domain contributes additional vibes, which also counts as positive side-effect.
Moreover, many of the projects have a problem to solve that can be published in scientific forums. In the some cases, this can be fully funded by the customer who needs the service in its operations. An additional benefit is that this type of collaboration can take many forms, and involve various disciplines such as software development, data science, and security.
#3: Research projects targeting at own products or improved off-the-shelf services
This topic is related to #1, but less disguised as a part of the development project. Rather, the goal is to make an investment to new technology or automation, that will generate more revenues in the future. For many consultancy companies, this forms a very difficult hurdle, as one needs a real strategy to invest in critical domains, rather than simply going for the easy “we do anything for anyone” attitude.
#4: Act as consultant for research
Do not laugh. Also researchers need consulting. This can take many forms, and obviously the consultants should not compete with those that play the main role in research. However there is room for infrastructure, tools and methods that support the researchers, especially in the field of data science — not every doctoral student need be a data scientist or R specialist to create data related discoveries. Instead, it is sometimes far more cost effective to subcontract such competences than to start building such competences from scratch.
Unfortunately, many forms of funding associated with research favour direct salaries and are against subcontracting, which implies that this form of consultancy must sometimes be camouflaged as partnering especially with publicly funded research institutes.
That said, the benefits are not only for companies. For more research-oriented organisations, the large populations of projects inside consultancy companies offers a way to collect data and views from different setups, which enables their comparison and the analysis of differences. Furthermore, cooperation under a research agenda can liberate participants from the mental bubble that may emerge around any organization to consider new opportunities.
Is your team ready, waiting for the call for research?
Personally I do not believe that research led from Ivory tower is the way to go. Rather, bottom-up research that stems from individuals and their interests in individual projects and activities is where the holy grails of software research are to be found, in the form of new techniques, practices, tools. and methods. Furthermore, this does not require formal research funding, just curious mind and the will to act upon an idea. When there’s a will, there’s a way.The author works as a head of research at Solita and as a professor of software systems at University of Helsinki. Over the years, he has led or co-led research projects totalling over 10Me. In addition, he has supervised numerous theses where the research question has originated from the industry, many of which have later resulted in an academic article later on.