Recently I have been struggling with a new architecture. Not the architecture itself, mind you, the process being used to derive it. It's no secret that I am competent and capable when it comes to synthesizing requirements into an architecture supported by solid design trade-offs. In my own mind I like to think this is because I'm quick to assimilate data, I have a robust breadth of experience, and an unwillingness to compromise on correctness. In this particular environment, none of these tools have value. Instead, I find myself without a reliable resource for requirements, forced to propose pseudo-architecture with no foundation in design, and pseudo-design with no context in an architecture. How did this become the norm?
Don't get me wrong, I'm no stranger to highly fluid (some would say volatile) situations in which even the baseline defies definition daily. No small portion of my repute lies in just such distinction. However, success on those terms comes from discipline in the art of the architecture. From a strategy of systematically adding structure on the foundation of designed components. Without some handle, some thread to hold onto, it becomes impossible to weave through the morass of chaos.
In the world of software engineering, like most industries I suppose, we tend to pretend that our challenges and concerns are unique. This self-delusion allows us the confidence to explore these issues without bias or prejudice, supposedly open-mindedly. As often as not I feel it hems us in and inhibits our ability to take the learning done by others and simply apply it. This has been resonating in my thoughts quite a bit lately.
Have I become too rigid in my approach? Should I be more compassionate in my practice? While empathy is not my style by any means, perhaps some allowances need to be made. How do others handle the impotence created by managerial ignorance? Surely not everyone takes the Dilbertian approach towards their workplace. There must be a middle position here. There must exist a way to become if not supportive of, at least less frustrated by, mediocrity. What a pathetic path this is to ponder. Is this the normalcy so many discuss of which I have been blatantly ignorant? I miss my bliss.