There is never it's not my fault --- unless you're not attached to your job. Accepting responsibility for your division, even if you personally did nothing wrong, is part of the territory.
If you work with people that constantly offer excuses, even if they are "I was overruled", it is an awful work experience. Imagine you have to team up with that guy to code something and as soon as it goes wrong, he jumps to blame you. Even if it is entirely you're fault (you should claim it yourself, not be called out by a coworker), he still was working on the project. You can't expect to get anywhere by denying your involvement in toxic software that you are clearly involved in.
There is a difference between accepting responsibility for the actions of your subordinates/ your own actions and accepting blame for the failures of one of your superiors who stepped out of his area of responsibility and into yours just to override you on something that he had no business doing. If your leader sets you up for failure, the same logic you are using to assign the blame to yourself assigns the blame to him.
There is an even larger difference between being a person who is capable of recognizing when their employer is wrongfully blaming something on them and the person who constantly blames things on other people.
I don't know if applies in this situation or not. For all I know this guy could have personally written bad code for maps. The point is, universal statements such as "there is never it's not my fault at the executive level" are just plain false. It is an executive's fault if his subordinates do shitty work, but if the executive's boss ordered something that was impossible to accomplish with a given set of time, manpower, and resources then there is a good possibility that it isn't his fault. He might have to take the fall for it, but at the end of the day if that's what happened, then he knows he did the best he could and therefore shouldn't give a shit what anyone else thinks.
I love my job, I also loved having the opportunity to provide leadership and guidance for others. It is because of the love I had for my job that I would accept responsibility only for the things that are actually my fault(which includes the actions of my subordinates.) I understand that as a supervisor there's always the chance that I would get fired, demoted, or otherwise punished for a superior's mistakes, but that doesn't make it my fault or responsibility unless I actually made a mistake.
Steve Jobs can say "there is no it's not my fault" because at Apple, the buck stopped with him. I don't recall hearing anyone ever telling Steve Jobs that he couldn't do something, or overriding his design decisions. For lower levels of leadership, such as I experienced, there were about 50 different people who would constantly tell me what to do, even though only one person was actually tasked with doing so. Sometimes, my orders were poorly thought out. Sometimes they even contradicted orders given by other people. In situations like these, as I stated before, only a coward would accept the blame without evaluating the specific situation beforehand.
I'm not suggesting the person that overruled you is free from blame. I absolutely am suggesting that if you are in that situation you have to take your lumps and accept it, not deflect ("it's not my fault because Tom told me we had to use xyz"). The other person who is at fault should also be accepting blame, but it's not your job to render the blame. In fact, you're never at all the arbiter of blame with anyone lateral, above you, or (usually) anyone in another department; it's always your fault.
Your boss told you to use xyz technology? You (and others, if necessary) should have convinced him otherwise. If you can't and his decision is a bad one, you have to be the one that says no. That's right -- it's your job on the line, not his. If you signed up to be vp of IOS software, you're in the wrong if something is broken in IOS software. That's why you need to learn to say "no", not only to clients, but to coworkers as well. If that's absolutely not possible, it's time to put on your big boy/girl pants and take the blame because you couldn't fix a problem that you knew existed.
If you're in a situation where different people are telling you different things, then it sounds like you get to decide the specific implementation. It's even probable that those different people telling you different things are really giving you their unsolicited opinion, rather than micromanaging your career.
I think it's cowardly to avoid responsibility for what you sign your name to.
People at this level generally don't have a problem saying "no." That's not usually the issue. The issue in a situation where a CEO is overriding other executives and dictating bad decisions outside of their domain expertise is that it's politics at this point.
The fact of the matter is that you can do your job extremely well, do everything right by any rational measure, have a strong political position, and yet still get screwed by unanticipated or uncontrollable external and internal forces, up to and including nonsense of others on the executive team, especially in an organization with a poor/weak/incompetent CEO or equivalent.
It happens all the time.
It's pretty easy and cheap to make a blanket "it's always your fault" statement, but back here in the real world it's typically much more nuanced and complicated.
I agree that I'll never be the arbiter of blame. I also agree that subordinates should give counsel to their supervisors when it can save them from making a mistake. Unfortunately, from my experience a lot of times a person's pride gets in the way of accepting such advice. Some of the best ideas I've ever heard came from people who were both young and inexperienced.
As far as having multiple people telling me what to do, I was mostly referring to my time in the military. Take my word for it, I wasn't expected to choose a specific implementation (unless it was theirs), and they were definitely not offering friendly advice!
If you work with people that constantly offer excuses, even if they are "I was overruled", it is an awful work experience. Imagine you have to team up with that guy to code something and as soon as it goes wrong, he jumps to blame you. Even if it is entirely you're fault (you should claim it yourself, not be called out by a coworker), he still was working on the project. You can't expect to get anywhere by denying your involvement in toxic software that you are clearly involved in.