Development

We provide a wide range of development services, from small proof-of-concept prototypes to turnkey systems, where we develop the entire product from scratch. Our staff includes some of the Erlang community's most seasoned experts on building complex, fault-tolerant systems, and we continuously work with some of the world's most noted researchers in Computer Science. We use agile methods and model-based testing in all our projects.

We release some of our generic components as Open Source. We use these components ourselves in commercial products.

We operate using the DSDM approach and are expert in Test Driven Development, on which we also provide training.

Research

We have a strong commitment to research, and have worked consistently to bring research and academia together in the Erlang community. We regularly give presentations and serve on committees at major academic conferences, and cooperate with universities world-wide in different research projects. We invest at least 5% of our annual revenue in research.

Some notable research projects are:

Our staff have also been involved in other research projects:

Testing

We are committed to Agile development methods and test-driven development (TDD). Through our participation in the ProTest project and partnership with Quviq, we have developed expertise in Property-First Development (PFD) using QuickCheck. PFD is like TDD on steroids, and we use it in all our projects where appropriate. Test suites and QuickCheck properties are automatically executed for each build using our in-house build system.

We have extensive experience with load testing and live debugging of Erlang-based products, and even offer a special course for test and support engineers. We have also applied our test automation and property-based testing techniques to non-Erlang components and embedded devices. If you are looking to use Erlang solely for your test automation needs, we are more than willing to help you get started.

System Development

We draw on our long experience and extensive network when designing whole systems from scratch. We can help you describe the system architecture to match your requirements on reliability and scalability, and we can integrate appropriate Open Source or third-party components.

We work incrementally and provide regular updates on our progress.

For examples of some of our projects, see Case Studies