Areas of Expertise

The company concentrates on systems research and development. Our area of expertise covers:

highly-scalable distributed systems

  • design for linear scaling from a few to a large number of nodes
  • performance optimization and tuning of scalable distributed systems
  • self-managed, self-healing systems
  • resource management and load balancing
  • remote monitoring, anomaly detection and diagnostics

storage systems

  • content-addressable storage
  • global deduplication
  • file system design and implementation
  • journalling and transactions in storage systems
  • caching and prefetching in storage systems
  • disk failure behavior, handling and tolerance

highly-reliable, highly-available systems

  • non-stop operation through rolling and instant upgrades
  • techniques for hardware and software failure tolerance

algorithms design and application

  • distributed, asynchronous consensus
  • randomized algorithms
  • scalable distributed garbage collection
  • failure-tolerant customized compression
  • self-correcting codes

parallel and distributed programming

  • design of frameworks for multicore, multinode systems with automatic load distribution
  • multithreading (e.g. POSIX threads) and message passing (e.g. MPI)

Our skills include design of complex, large scale OO systems and secure programming. For performance reasons we use mostly C++, but we are well versed in other languages like Java and Python. We combine our knowledge of design-patterns and anti-patterns with the usage of industry-standard libraries (e.g. STL, boost) for multiplatform development.

Since we have significant experience with software development, we are also interested in working on tools in this area, including:

support for agile project management

  • integrated time, issue and test tracking
  • agile project planning and scheduling

compiler design and implementation

  • control-flow and data-flow analysis
  • optimization algorithms using static single-assignment form, register allocation
  • native code generation for x86-64, Intel Itanium, Sun SPARC, HP PA-RISC under Unix