Image

Software with Quality

We keep track of every detail

Do you want software that still works in 5, 10, or 15 years, is easily adaptable, and protected against attacks? Then we've got you covered.

Our principles of quality


Long-lived

We build software that continues to work for years and remains adaptable.

Extensible

Our apps grow with you. A change in requirements? The 10th, 100th, or 1000th user? Not an issue for us.

Automated

We continually work on making ourselves superfluous. We automate tests, deployment, updates, backups, and all other repetitive tasks.

Secure

We protect you and your customers from harm.

This is how we work


A software project can be broken down into phases of careful planning, development, testing, and maintenance. In classic project management, these phases occur separately and in strict order (waterfall model). However, we understand the need to react flexibly to changing requirements and the necessity of continuous testing and evaluation of intermediate results. That's why we work with modern agile project management methods. We split your project into many short sprints, so you always stay informed about the current state and can avoid unpleasant surprises.

Image

This is how we program


We think of software engineering as a craft—a craft we are proud of and take seriously. We produce readable and maintainable code that we can transfer to other developers without hesitation.

We always choose the right tool for the job and the appropriate language, whether that’s Java, C#, PHP, Python, or JavaScript. We strictly adhere to industry standards and use standard libraries wherever possible.

Your software belongs to you, and we provide you with 100% insight and control over the source code. We are always ready to transfer your software to another firm or to your IT department. We aim to convince you by delivering quality work, not by making you dependent on us.

We build software modularly, so that functions can be easily changed and added. This way, we can easily react to changing requirements.

This is how we automate


We strive to achieve 100% automation because we prefer to spend our time implementing useful features rather than performing repetitive tasks. We delegate such tasks to computers, which can do them faster, more competently, and with greater focus. Plus, a computer won’t send you bills (except for minimal operational costs).

Of course, we also automate our development process (continuous integration) wherever possible. We test your software on multiple levels (unit, integration, and UI testing). This not only makes our software more reliable and less error-prone, but it also saves a lot of time that we don't have to spend searching for and eliminating bugs. If a bug does slip through, we immediately write a test for it to ensure it never returns.


Image

We also automate the delivery of our software (continuous delivery), allowing us to deliver bug fixes and security updates quickly, and enabling you to test new features on our test systems early.

We also automate operational tasks. Every software developer has experienced the pain of data loss. Unfortunately, we are no exception. But we have learned from our past and now use multi-level, independently functioning automated backup solutions.