Software Strategy
The biggest struggle for small and medium companies that make software is the misalignment of business ideas and the technology. There is usually a large gap between the vision of the non-technical personnel of an organization and the understanding of the technical constraints. The business-oriented people pick up the prevalent terms from the technical department without realizing that, although software, de decisions are virtually set in stone and cannot reasonably be changed. These decisions are furthermore shaped by the experience and preferences of the technical leads at the time. It is a tragedy that these limitations mostly do not become clear until business demands cannot be met or when the organization is taken over by a more successful company.
Communication, especially from one perceived reality to that of another, is hard. The business people cannot and often will not want to take into account the long-term constraints of the high-level technical decisions. The members of the technical department have a specific set of skills and preferences and will continue to advice the business accordingly. A choice for a favored database may not be limiting, but writing the business logic with stored procedures will.
Most small to medium software companies decide on a technical software strategy without help or feedback from outside the organization. The decisions generate a narrowing focus over time and are seldomly reviewed. The focus usually implicitly excludes alternative paths, making a transition less realistic.
Does it sound familiar? Please do not blame the technology or the technical department. Talk to a party with extensive technical experience, including the latest developments. Think of how you want to be able to adapt, now and in the future. Talk to us, for an alternative view, an appraisal of the options or just comprehensive feedback for your perceived reality.