Do you need help with the design of a new system?
We can work with your team to help design a system to meet any performance requirements. By taking a full stack approach to the design, we can show you how to design and build a system that reaches performance goals without unpleasant surprises.
We can design systems that saturate IO sub-systems, refine protocols for efficiency, work with large memory spaces, and use algorithms that respond within soft real-time constraints.
If your system has to support hot upgrade and the ability to cope with multiple node failures, no problem, that is a common requirement we see.
Do you need help with building critical components?
Maybe you don't have the skills in-house to build some critical components or need help with a prototype. It could be you have delivery pressure and need extra capacity to deliver high quality components or usecases.
We can provide resource to work with your team to build, or prototype, any part of the system. We often find that a team needs good examples to follow. Most humans are not the best authors but they are great at copying a good pattern and refining it.
We are very happy to help build infrastructure components, e.g. messaging, parsing, IPC transports, journaling, replication & HA, concurrent data structures, off-heap memory data structures, or logging libraries. We also have significant experience building business components such as order books, risk models, large data model analysis & processing, alerting, or rule processing.