I've been working on infrastructure to support a certain class of applications (medical imaging devices) that have a lot of complex functional and nonfunctional requirements. I initially developed much of the system I own alongside the first product team which made use of my systems, and together we ran into a lot of painful issues and added functionality to support these use-cases.
Working with a new team who haven't yet shipped such a system to production has been supremely frustrating, because they haven't gotten far enough in the process to understand the classes of problems that my system solves. I've gotten a lot of pushback simply because they simply didn't have enough context to understand why you'd even care about this stuff - "Why are you bothering us with these problems? I'm sure we can figure this stuff out eventually."
But now, after working with folks for a year and a half, they're starting to come to me with questions about how to resolve certain things - and that's when I say "remember that stuff you didn't care about at all last year? fortunately my system already knows how to do that for you!"
Glad to know this is a systemic problem with humans and not a personal failing on my part!
* input validation at ingestion time vs processing time
* access control via a proper IAM system with defined roles as opposed to granting access to individual users
* various multi-tenancy, multi-region, and multi-regulatory-regime concerns
* relying on standard frameworks/platforms which provide rollouts, monitoring, test harnesses, etc. as opposed to rolling your own
Some of the things were simply "we know this is important, but we have to hit this deadline so we're going to cut corners", resulting in rework later to do things properly in production
Working with a new team who haven't yet shipped such a system to production has been supremely frustrating, because they haven't gotten far enough in the process to understand the classes of problems that my system solves. I've gotten a lot of pushback simply because they simply didn't have enough context to understand why you'd even care about this stuff - "Why are you bothering us with these problems? I'm sure we can figure this stuff out eventually."
But now, after working with folks for a year and a half, they're starting to come to me with questions about how to resolve certain things - and that's when I say "remember that stuff you didn't care about at all last year? fortunately my system already knows how to do that for you!"
Glad to know this is a systemic problem with humans and not a personal failing on my part!