Services

Besides for consultancy based on our Fern software for developers and modelers, we can be hired to assist in one of your projects. We are experienced software developers specialized in software manipulating and visualizing spatio-temporal data. The following is a list of categories, keywords and buzzwords to give you an impression of what we can do, and to help you determine whether we are a good fit for your project. But don’t hesitate to contact us for more information. See the contact page for ways to get in touch with us.

Domains

  • Geographical information systems (GIS), e.g.: ESRI ArcGIS, QGIS. Due to employment in the past of some of us with ESRI in the United States, we have in-depth knowledge of ArcGIS.
  • Environmental modelling and simulation. Some of us work part-time at the University of Utrecht at the PCRaster research and development team which is dedicated to the further development of the PCRaster environmental modelling environment.

Technology

We specialize in high performance computing. Given the current hardware platforms, for best performance, it is required for software to use multiple CPU cores. These can be located within the one node that the software is executed on, or they may be distributed among multiple connected nodes (a cluster or a supercomputer). Most of the technology we use is not vendor specific and allows us to support a wide range of hardware and software platforms.

  • Operating systems: Linux, Mac OSX, Microsoft Windows. We develop software for all major operating systems. In case you currently only use one of these, it may be good to know that with our software you will not be stuck to that platform in the future.
  • Programming languages: C++98/11/14, Python. We specialize in these two languages. C++ allows us to use very high level abstractions without sacrificing performance. Python allows us to export the functionality we build in C++ to end-users who can mix and match this functionality with other Python packages.
  • Protocols/standards: OGC web services (WCS, WFS, WMS, WPS, etc), OPeNDAP, REST, …
  • Software libraries
    • C++: Boost, Qt, GDAL/OGR, HDF, netCDF, MPI, HPX, Python C-API, …
    • Python: flask, gdal, h5py, mpi4py, netcdf4-python, numpy, scipy
  • Tools: Clang compiler, CMake, Docker, Git,GNU Compiler Collection (gcc), GNU Core Utilities, GNU Debugger (gdb), GNU Make, Valgrind, Microsoft Visual Studio, …
  • Approaches: generic programming, object oriented programming, parallel I/O, parallel computing, distributed computing, microservices, REST, …

Project management

We have participated in various projects in which Scrum was  used to manage the development process. We have experience with both the development team member and the product owner roles.