Design

New projects always start with ambitious goals: functionality, reliability, scalability, maintainability and security are just a few of them. In due course of the project's execution, most of the goals are downsized, cut or outright removed from the requirement list since time or budget run out. Afterwards, gaping security holes or hard scalability limits are discovered and classified as "design flaw". Often, however, there isn't even a proper design that could have been flawed.

Recurity Labs identified minimized design efforts as the primary root cause for failed projects, be it software development, product development or system deployment. Consequently, by taking more time to design a system in depth while actually reducing development time, the result gets significantly closer to the original goals. Experienced designers will be able to set the rules and guiding principles just right, so the initial goals are not abandoned.

The type of person, the skill and experience required to design a new or successive system turns out to be inherently different from the typical developer or even software architect. System design demands an even broader view than most software architects can muster while also requiring a deep understanding of the underlying bit streams and communication layers. This knowledge is neither horizontal nor vertical but rather V-shaped. Many issues that are new in one product domain have been long solved in others while other issues might look similar but the common solution cannot be applied due to domain-specific limitations or corner cases.

Following our ambition to provide effective professional consulting that actually solves problems, Recurity Labs considers design making & breaking as its core competence. Consequently, Recurity Labs offer: