As a freelancer, I offer a number of core services based on the principle that there are rarely if every technical solutions to any given problem of any size and that therefore a combination of computing (or computer science) and social (science) skills are required. Below, I am outlining examples of what this might entail for common problems that organisations face today.
Adopting Agile Methods: The first service I offer is to help organisations practically implement agile software development practices by deconstructing agile practices and matching the parts against agile values, wider software engineering concerns as well as the organisation's values, its business context its business processes. In this way, agile methods are adapted to match product development and innovation processes that run across longer timescales and that the software development process needs to integrate with.
What I offer as part of such a collaboration is to conduct research to take stock of existing development, product- and innovation management practices, which are then modelled using the OMG Essence Standard. The model is then used to identify where and how agile methods can be practically implemented as well as where they need to be adapted to the context. Instead of treating agile as a dogma, this approach takes a systematic approach to tailoring processes and practices to match and organisation's needs.
Corealisation: Some software development projects can be carried out using a development model that facilitates even more rapid feedback than current agile methods. Instead of relying on the role of a 'product owner' to mediate between development teams and customers, corealisation locates development activities within the context of use itself, allowing feedback on system changes at timescales measured in hours or even minutes.
Such methods are suitable for situations where such extreme agility can translate into value that is less dependent on the number of direct users of a system but instead dependent on the number of indirect users. An example is a control room in a manufacturing plant where decisions taken affect dozens or hundreds of workers on the shop floor. Making IT expertise available in a setting like this can produce immense benefits as interventions may make the difference between continued production or the end of a shift or, worse, the shipment of faulty products to customers. Other examples of such critical points of decision making abound.
Corealisation requires a set of social skills that do not tend to be taught in computer science departments and that are not easily acquired through learning platforms either. They are not exactly social scientific skills either but are developed to be uniquely adequate to the context in which they are applied. At their core is a curiosity and respect for the work of others. These skills are teachable, however, and I am happy to discuss how I might help establish effective corealisation practices.
For each of the service areas outlined above, I can offer a number of different service models. I do not tend of offer classic consultancy services that assume I bring ready-made answers but instead seek a deep and longer-term engagement with a customer to identify a uniquely adequate set of changes that steer the organisation in the right direction, guided by collective deliberation.
This may involve research methods such as interviewing, workshops or even ethnographic observation. Based on this, I work with customers to guide them through reflection and the choice of the right measures to take together. This may involve evaluation to incorporate feedback from practice, training and collective learning as well as experimentation. As part of the innovation process, I may offer bespoke development services to explore technical options or to establish templates for development.