Consulting Services

We are happy to pass on our knowledge and experiences. If you are interested in our consulting services please do not hesitate to contact us.

Our expertise can be divided into these three sections:

Information Retrieval

Allowing users to search and find information in large amounts of data is part of our core competencies. During the development and operation of CurrySearch we gathered a lot of experience about details and caveats in information retrieval.

If it is multilingual data, high load requirements, more precise evaluation or simply more relevant search results: together we can identify problems and work out solutions.


Rust and Elm

Modern programming languages like Rust for systems-programming and Elm as replacement for JavaScript eliminate many possible sources of errors through strict compilers.

Humans are prone to make mistakes and forget details. Software is large, complex and has very many details. We believe, that restrictive compilers are the right choice to develop large, robust and efficient software systems. CurrySearch for example is developed from tip to toe using Rust.

Do you have a concrete problem that needs solving or are you interested in the possibilities and limits of these new programming languages? We can give you an insight into our development and operation processes and work out a strategy of how to use these tools meaningfully.


Secure Distributed Systems

Systems with high requirements for load and reliability are often distributed. But development, administration and operation of such a distributed system is often substantially higher. Furthermore, the attack surface of the system is dramatically increased. Distributed systems are nevertheless often unavoidable when needing to meet the requirements for load and reliability.

We know how to establish encrypted and authenticated communication channels between parts of a system. We can configure and operate modern and slim webservers, reverse-proxies and load-balancers like nginx and haproxy and know for what tasks they are suitable.
Centralised logging or gathering of statistics data, update processes and failover strategies are all important topics for distributed systems. We are happy to help you out with these.