25

I have recently come across the situation where I have to deal with the person (software architect) who seem to think that the software solution he had come up with is basically "divinely correct" and can be applied for every situation. Without going into too much details on what the solution is, we have done quick analysis of applying the solution to the problem at hand and came away with more questions and problems that I care to list in the question, yet this person persists with applying the solution.

Some of the first attempts to utilize the solution this person come up with produced Rube Goldberg's machines which had been shown to run measurably slower then the previous solutions (no matter how outdated and badly written).

What is basically comes back from this person when questions begin to be asked is: "This is the way I have decided to do it and this is what we will do!"

How do you deal with a person like this?

  • What does this question have to do with the peter-principle? – JohnFx Apr 11 '12 at 14:50
  • 2
    OP has left out a critical component - How much do you value your sanity :) In all seriousness - if they're in the position, someone probably supports them. As long as that holds, you probably have no options. – Affable Geek Apr 11 '12 at 14:51
  • @JohnFx Because from here it seems that this person reached "the level of his own incompetence" but I removed it anyway. – Karlson Apr 11 '12 at 14:54
  • 5
    @AffableGeek Being a consultant I don't really care since Rube Goldberg's machines can pay the bills almost indefinitely. :) – Karlson Apr 11 '12 at 14:55
  • Related meta discussion: meta.workplace.stackexchange.com/questions/35/… – Shog9 Apr 11 '12 at 17:37
22

The only quick solution I have found in these situations is to find a new situation. You are dealing with organizational insanity, and you won't be able to fix it anytime soon. The wrong person has been promoted and his management doesn't seem to know or care. You do not have enough influence to effect a change, and technical arguments will not work.

The alternative is to go along with the ineffective process and bide your time. Eventually the cost overruns will force someone to take notice. The architect will be encouraged to do something else. If you have stayed around, cooperating and winning friends, maybe you will be the next architect.

BTW, I left a very similar situation five years ago. The incompetent technical leaders were replaced last year.

  • maybe you will be the next architect not in this case but good thought. – Karlson Apr 11 '12 at 16:13
  • 8
    It can take a looooong time for people like this to get replaced. If this is a chronic problem, you should be thinking seriously about moving on. – Scott C Wilson May 15 '12 at 0:39
  • 2
    Yea, there's always a little A -> B vector thing going on, where the visible incompetent person B is being supported by some senior person A who vouches for them being A Good Person And Therefore Not the Source Of Our Problems. – Warren P Jun 5 '13 at 3:11
  • +1 for finding a new situation. I have struggled with the 'divine rightness' of a key decision maker for a few years. The big frustration for me is not personal disagreements or not having it my way but the business cost of a bad decision diminishing the success of my colleagues - if you work as a team, you should strive to win as a team. – Gusdor Jun 6 '13 at 8:45
4

If that person has the decision-making power, then that's that. If it's not meeting with the customer's requirements (i.e. the customer disagrees that the solution meets their requirements) then they don't necessarily have to pay for it (unless a contract says otherwise), and they can say something as simple as, "Ok, I hear why you want to go this way, but that doesn't solve the problem that I need the [software/product/solution] to solve."

Egos run high. This is part of any workplace. When it comes to engineer types, you can try to present objective, measurable performance and quality metrics (if that applies in your situation) - engineers (at least generally) will respond to reasoned arguments. If that fails, then you have to consider who actually has the decision making power, whether or not this is a fight worth fighting, and how it will impact your customers and business. I don't think it hurts to make your concerns known, so long as it is a reasoned, objective point of view, and not a personal attack on the engineer.

All that being said, what we don't see from your question is the engineer's point of view - perhaps you're wrong on this one, perhaps you're not - it's hard to make a determination without knowing both sides.

  • If it's not meeting with the customer's requirements. Unfortunately customer is internal to the company and has no way and no knowledge to evaluate the solution. – Karlson Apr 11 '12 at 15:35
  • what we don't see from your question is the engineer's point of view I wish he would give it beyond "here are your marching orders". – Karlson Apr 11 '12 at 15:37
  • As far as the customer having no knowledge to evaluate the solution, I don't see how that's possible. I can see that a customer doesn't have the technical skills to argue for or against a solution based on technical merits, but the customer does care about things like if the software does its job sufficiently fast to provide the business value requested, if the software produces correct results, etc. If the technical solution the engineer is proposing doesn't affect the customer either way, then why does it matter which solution is chosen? They are hired to be technical experts. – jefflunt Apr 11 '12 at 15:51
  • You're right they have no technical expertise to evaluate but they are being sold a bill of goods which will impact them. The problem is that the person selling(engineer) is not the person implementing that solution. The solution will impact the business but the responsibility on the implementation lies not with the engineer. – Karlson Apr 11 '12 at 15:56
  • Don't know if I can help you there - this brings up a lot of questions in my mind. It's not clear why the engineer is involved in the discussion if they are neither going to be involved in implementation nor on-going support. Is this person a department/team leader who is entrusted with these decisions? Are they bringing in other engineers who will be implementing/supporting the solution and considering their point of view in the decision? This just sounds wacky. – jefflunt Apr 11 '12 at 16:03
2

In simlar situations I've relied on getting a list of resources (books, blogs, Standards and Guidance from the major vendors in your particular development space eg IBM, Microsoft, Idesign, Thoughtworks to name but a few) to back up the points I'm trying to get across and have, sadly, had to produce them at meetings.

If you've gone through that process and are still being told you are, not right, incorrect or they know better. Then do as you are directed to do but keep a hold of your source material if thing go wrong to cover yourself and your own professional integrity. On a positive note, it will help to improve your skill set as you'll learn how to do the necessary research to back your statments and how to deal with difficulty (people, situations and flawed approches).

Finally, just ask how they came to the results of their decisions. Its the job of a software architect to show the intent and purpose of a design and how the working part all fit together to provide a solution.

0

The thing you can do is talk with him in group about it. If this is a shared effort then you need to see what other people think about his solution and if there is a better alternative.

If you feel the quality of his solution isn't good enough and would make your customer unhappy or jeopardize your project. Take it up with your teamleader or boss. Explain to them why you think his solution isn't correct. Show your alternative. However if you are the only one on your team that thinks he's wrong then you will have to go with the flow I'm afraid.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.