Flow Matters helps organisations in the water and environment sector to get more value from technology. Working through the principal, Joel Rahman, and drawing upon a network of skilled software professionals, the company blends high level technology skills, with a deep understanding of the needs of the water and environment sector.

Brokering Solutions

Technologists who span the problem domain and the technology.

Flow Matters has a keen understanding of both the problem space and the solution space and can help you to land on the right technology solution for your development or integration project.

There is no generic process that will suit all projects and, recognising this, Flow Matters can be engaged in a variety of ways, such as:

  • Requirements analysis
  • Solutions architecture
  • Facilitation of requirements and design with project teams and stakeholders
  • Ongoing involvement with project teams as a mentor and as an interface to domain experts
  • Independent review of project artifacts


We have experience developing systems using a range of technologies.

Flow Matters have developed systems for a range of audiences, from the general public to research simulation tools. We follow an agile methodology that provides regular, incremental delivery and opportunities to steer the product development as the situation evolves.

We recognise that the best suite of technologies for your project depends on a range of factors and we work with you to select a technology stack that will work for your project and for your organisation.

We are continuously evaluating new platforms that could benefit our clients. Our current suite of project technologies include:

  • Mainstream software development platforms (including C#/.NET and Java as well as Ruby and Python)
  • Emerging languages on the Java platform, such as Groovy and Scala
  • Web development in HTML5, CSS3, Javascript and Ruby on Rails
  • Web visualisation toolkits (eg D3.js)
  • Data Analysis environments, including R and scientific Python
  • Relational databases including Spatial Extensions

System Integration

More value from existing systems.

Integration with existing systems is critical for the utility and maintainability of most new products, and integrating two legacy systems can extend the lifespan of both.

Flow Matters has project experience creating integration solutions that encompass general purpose systems (databases, intranets) and domain specific technologies (simulation models, operational systems). This includes:

  • Create, deploy and support Delft-FEWS operational systems, including linking to corporate databases,
  • Integrating simulation models, such as eWater Source, with FEWS for operational hydrological forecasts,
  • Customisation of existing simulation and forecasting tools (including eWater Source and Delft-FEWS), and
  • Development of custom modelling shells for large-scale simulation projects using legacy models.

Technology Training

We can help you to create your own solutions.

Many water and enviromment studies can benefit from small amounts of software development: automation of data processing or reporting, customisation of existing tools. There is much to be gained by building in-house capacity for this work. There is a broad, and ever changing, suite of technologies to make this possible.

It is quite common for organisations in the water and environment sector to undertake 'part-time' software development. That is, development of small pieces of software, often for use in-house, where the people developing the software also have other responsibilities, such as consulting engineers. Flow Matters offers tailored software development training for these organisations. In particular, we focus on identifying pragmatic ways in which individuals and organisations can adopt learnings from the broader software discipline to improve their work, without having to become full-time devotees to the craft of software development. We focus on simple techniques that have a big return on investment.

Training focussed on the water and environment industry

We understand where you're starting from and where you need to go.

Many people in our sector have built sophisticated software tools, with development experience starting in university and continuing in the workplace. However, many of these people only use these skills on a 'part time' basis - after all, the real job is analysing data and building models to meet some stakeholder need. This makes it difficult to keep up to date with the fast moving software industry and to keep one's software development skills current.

Our training services are tailored around this common background and around the types of projects undertaken within the sector. Importantly, we recognise that when software development is ancillary to core business, the cost-benefit tradeoff of any particular technology or approach is altered. Any new technology or technique must have a low cost of entry, both in terms of direct costs of procurement and in terms of the time it takes to become productive with the new skill.

Training adapted to your needs

Training tailored to the needs of an organisation, a team or an individual.

Our training seeks to expand a participant's view of the software industry and to provide practical skills in a range of new technologies and techniques that can improve software development productivity immediately.

Training can cover topics such as:

  • Understanding object oriented development techniques and applying these techniques on technology platforms such as Java and .NET;
  • Using dynamic programming languages, such as Python, R and Ruby for data processing, workflow automation and general development;
  • Improving development practices with version control, test automation and continuous integration;
  • Managing the development process for small teams and allowing for change with Agile development; and
  • Using and customising valuable open and open source platforms for scientific and engineering software.

Likewise, delivery modes can be adapted to suit the needs of participants. Training delivery needs to be compatible with both the learning styles of the participants and their busy schedules. For example, the training can be:

  • Delivered as a face to face short course over a number of days depending on the curriculum,
  • Delivered as a series of short, face to face training workshops, spread out of a number of months, with facilitated online forums in the interim,
  • Project visits and collaboration, where we work alongside you and your team on your projects, or
  • One on one mentoring of key staff

Contact us to discuss your training needs.