We help you achieve your business goals by using a unique approach to building software and advanced programming techniques.
We provide a deep analysis of your current solution architecture. Together, we find solutions to tough technical debt and performance issues to deliver maximum business impact.
We review your code and provide innovative solutions. Using our cutting-edge techniques, we ensure your code shines.
We benchmark and analyze performance component by component. Our comprehensive report helps you find cost effective ways to make your product fly.
Turn labour-intensive, opaque, manual processes into scalable, observable and automatic procedures
Use cutting edge knowledge and tooling to deliver a highly efficient software based on customer requirements and time frame.
Augment existing solutions with new capabilities or replace critical components with better performing ones when full rewrite is too costly.
Boost your time to market by proving ideas with solid prototypes. Committing to simple and powerful design that can be turned into production quality code without the need for rewrite.
Our favourite tools
Some of our projects we have built with our favorite language, Scala, using the functional programming paradigm.
Every new source of data connected to existing software requires additional effort of unifying formats, removing irrelevant parts, joining with existing datasets, etc in order to make external data compatible with internal model. The problem was the amount of manual and ad-hoc work on data preparation performed by development teams that operate data-driven solution.
We have implemented a series of DSLs to formally represent operations on data as acyclic graph of steps needed to get from initial state to the desired one. Combined with visual tools and compiled into runnable stream executed by horizontally scalable engine, this approach reduced the need for ad-hoc development to a bare minimum, allowing data analysts and integrators to build, test and run pipelines on their own.
"OmRun", a next generation running platform, which helps runners track all the data they may ever want by using a sensor-equipped sport bra and a phone. Our focus was to handle incoming signals in real time and apply machine learning algorithms to biometric data.
We designed and developed software modules that allowed data to move from wearable devices to backend systems in the cloud making an interim stop on the user phone. To solve the problem of displaying meaningful running metrics all data had to be eventually arranged on a timeline. We used combination of event sourcing and finite state machines to ensure overall correctness during the transfer.