What to do when my ideas aren't chosen, when I strongly disagree with the chosen solution?
Bit of a psychological question I have here in relation to working as a programmer.
In your work environment, when you're working on a particular system and that system needs to change due to requirements introduced or thought-up by others that you disagree with (either because you feel the change is unnecessary, or you disagree with the direction of the change), how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
To elaborate further we had a team meeting and my proposed solution was not the chosen one. The other participants of the meeting considered their approach as the correct one, but I disagreed with their perspective. This has happened several times and each time it happens I find myself feeling the way described in my post.
For example, one recent discussion was whether we should move certain state responsibilities to the backend to make the frontend easier to manage, and another was whether we should allow customers to alter their personal information without approval from an admin.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
software-development developer motivation task-management psychology
New contributor
|
show 14 more comments
Bit of a psychological question I have here in relation to working as a programmer.
In your work environment, when you're working on a particular system and that system needs to change due to requirements introduced or thought-up by others that you disagree with (either because you feel the change is unnecessary, or you disagree with the direction of the change), how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
To elaborate further we had a team meeting and my proposed solution was not the chosen one. The other participants of the meeting considered their approach as the correct one, but I disagreed with their perspective. This has happened several times and each time it happens I find myself feeling the way described in my post.
For example, one recent discussion was whether we should move certain state responsibilities to the backend to make the frontend easier to manage, and another was whether we should allow customers to alter their personal information without approval from an admin.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
software-development developer motivation task-management psychology
New contributor
3
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
17
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
21
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
7
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
7
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago
|
show 14 more comments
Bit of a psychological question I have here in relation to working as a programmer.
In your work environment, when you're working on a particular system and that system needs to change due to requirements introduced or thought-up by others that you disagree with (either because you feel the change is unnecessary, or you disagree with the direction of the change), how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
To elaborate further we had a team meeting and my proposed solution was not the chosen one. The other participants of the meeting considered their approach as the correct one, but I disagreed with their perspective. This has happened several times and each time it happens I find myself feeling the way described in my post.
For example, one recent discussion was whether we should move certain state responsibilities to the backend to make the frontend easier to manage, and another was whether we should allow customers to alter their personal information without approval from an admin.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
software-development developer motivation task-management psychology
New contributor
Bit of a psychological question I have here in relation to working as a programmer.
In your work environment, when you're working on a particular system and that system needs to change due to requirements introduced or thought-up by others that you disagree with (either because you feel the change is unnecessary, or you disagree with the direction of the change), how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
To elaborate further we had a team meeting and my proposed solution was not the chosen one. The other participants of the meeting considered their approach as the correct one, but I disagreed with their perspective. This has happened several times and each time it happens I find myself feeling the way described in my post.
For example, one recent discussion was whether we should move certain state responsibilities to the backend to make the frontend easier to manage, and another was whether we should allow customers to alter their personal information without approval from an admin.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
software-development developer motivation task-management psychology
software-development developer motivation task-management psychology
New contributor
New contributor
edited 5 hours ago
Zymus
2,1281612
2,1281612
New contributor
asked 16 hours ago
jrichie911jrichie911
13926
13926
New contributor
New contributor
3
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
17
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
21
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
7
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
7
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago
|
show 14 more comments
3
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
17
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
21
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
7
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
7
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago
3
3
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
17
17
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
21
21
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
7
7
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
7
7
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago
|
show 14 more comments
7 Answers
7
active
oldest
votes
how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
My way of dealing with this is considering what my role in the company is. Am I there as a developer? As an analyst? As a team lead? As a project manager?
If I'm the developer (which I surmise you are), then you never had "decision making power" to begin with. You simply had some decision making privilege that was extended to you because someone (with actual power) chose to follow your decision.
Edit: you mention the three of you are co-founders, but the answer remains the same. You don't have any power, only a majority of you wields any power. In this case, you are not part of the majority.
If you're not holding the wheel, you're not steering the ship and thus cannot override the decision that is made by whoever is holding the wheel. You can ask them (which you did), but they can ignore/deny/disagree with your request. Not your circus, not your monkeys.
You informatively raised a concern, it was ignored. Accept the outcome and follow the plan as agreed upon. You and your two colleagues are there as a team, not as a darwinian competition.
Even if you were right, the other two developers clearly did not think so and will have to make the mistake before they realize it was a mistake. Everyone does what they consider to be the best thing, until they understand that it's not actually the best thing. In some cases, that means having to learn the hard way. This can apply to either you or your colleages, only time will tell.
If you want to be the one steering the ship, you must first be in a position to do so. But if you're unable to deal with things not going your way, I'm apprehensive about your compatibility in a leadership role, as it entails much more compromise than outsiders seem to think it does.
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
The short answer, in the words of Disney's Frozen, let it go. That's easier said than done, but it will boil down to this.
Look inwards and ask yourself why you care so much that you're willing to die on this particular hill. Is it because you only want to do things your way? It is because you are unwilling to learn a different way of doing things? Is it because you have a different appraoch to developing and abhor the alternative?
How can you be sure that you are objectively more correct than the others? If you are, then why did you not used that irrefutible evidence to make your case before the vote?
Never lose sight of the big picture: you're an employee of the company, and you're there to do the work the company tells you to do (within the boundaries defined in your contract). You don't get to decide which work you get to do.
Let it go, and accept that when someone else overrides your decision, the consequences of that decision fall on them. You are not personally responsible for the company's wellbeing against the company's own wishes.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
First of all: you agreed to a vote, you partook in a vote, and now that the decision hasn't gone your way, you're wanting to pipe up about it. At first glance, I would consider whether you're being a sore loser here.
The fact that a vote needed to take place suggests that the decision was not unanimous, which inherently means that someone was always going to "lose". This time, it is you. So you have two options: you accept the outcome, or you don't.
Imagine if everyone who didn't get their way did not accept anything other than what they wanted. How much progress do you think you'd make if the other two developers blocked you every time one of them did not agree?
As a real world example, imagine if everyone in a democracy had veto power over everyone else, and you could only get things done when every citizen unanimously agrees. Nothing would ever get done.
If you do make a fuss, and let's say you even manage to get your way eventually, you will be known as a sore loser and unwilling to work in a team or compromise. All of these observations will be much more detrimental to your career than the minor benefit of being right.
add a comment |
You've expressed your idea clearly and they decided they did not want to accept your decision and this bothers you. Well of course it bothers you. You've made an excellent case for a particular technology to be used and they flat out denied it.
Though remember that politics are always at play, and you cannot understand all the underlying reasons behind any given decision. Even if this were not the case, you should always keep in mind that it isn't a direct attack on you, nor is it saying that you are incapable of making good choices in this matter.
As a programmer myself, you learn to go with the flow and respect the decisions of your colleagues, even if you disagree. Fight the battles that deserve fighting for, when you think that it would be a seriously bad choice otherwise. Being a team player is every bit as important as making the right technical choices, and you should learn to trust in your colleagues just as they should learn to trust in you.
However, this only addresses the inward issue. If you feel that a mistake is being made, then the proper approach is to make it clear first and foremost to your colleagues, and should they not agree, with your boss directly. It need not be a personal vendetta, but rather something you're making clear. After this point, you cannot be held accountable for potential problems which may result from this (though they can still ask you to fix it).
TL;DR - Try to pick your battles, but not at the expense of trust from your fellow colleagues. If you absolutely must object to a decision, simply make it clear, and then continue to be a team player.
Edit: In light of your edited question, then I suppose not much can be done. If perhaps you are the expert in this regard, then you could put in an argument that in such matters, you should be given full control (but strictly for technical issues such as this). Though if I understand you correctly, that isn't the case.
So the next best thing is trying to make their proposed solution work as best as possible. While it can't be your idea, at least you can make it work well, and there is some small satisfaction in this. It would be ill-advised to sabotage the idea to prove your solution correct. Ultimately, they are co-founders, and so you must respect their decision just as they must respect yours should you and another co-founder agree on something which the third does not.
New contributor
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
add a comment |
It's a completely understandable reaction and a human one.
You know you tried to influence the decision making process, you tried your hardest, and things didn't end up as you think they should.
What I find with a lot of things is if I understand everybody wants the best outcome, it makes it easier for me. If I can work with a bunch of people who are committed to everyone understanding the pros and cons of each solution, that gives me confidence that on average, the best solution is often decided.
Often what it comes down to is a slight disagreement in perceived importance. For instance, one person may think performance is more important than code clarity.
You have to remember, the best teams operate when there are disagreements. If you have a team of "yes men" as a team, you are not likely to do great work. So there will often be somebody that's a bit disappointed. But the team not deciding to go down a path doesn't mean everything you said is wasted. Quite often it will stay at the back of people's minds.
As you point out, once a course of action is decided, you do have to commit to it. If you have concerns, you should explore how they may be mitigated within the context of the decided solution. But you shouldn't compromise your team.
Also, something to keep in mind, often there are a lot of non-technical reasons why the best solution is not followed.
You will get used to this, just as I have.
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
add a comment |
Addressing this solely from the psychological stance asked for, I find there are a few things that help me get over a "bad choice" (in my opinion).
The first is simply a little time - if I have to start coding the "wrong thing" immediately, my mind is replaying all of the arguments against this, not trying to see the best way to create it. Usually if I can put it off for a day or two, I've accepted the decision and am more relaxed about it, particularly after sleeping on it (so my brain stops the cycle of "but the reasons against it are x.... y.... etc")
Second, there can be a feeling that your opinion wasn't heeded or that you are powerless because you can't change this decision. Going back to the code and doing something else that I do want done (that has been agreed or I have the power to choose) can help me feel back in control and that I am contributing good changes to the code-base.
Third, when I do come to designing/coding the required change, I am looking into how to make it work as smoothly as possible ("even if it's wrong we're going to do it well"). Trying to maximize the benefits that were used to make this decision and reduce what I saw as the problems with it helps to get me invested in making this solution work and usually I find I get to the point of "not the best decision, but actually not as bad as I thought".
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
add a comment |
Simple concept: "feeling" is not a driver for a change (or lack thereof). It is a fact driven event. Given there are enough facts to support the change, it'll happen, despite you like it or not.
You need to learn how to work with a team, and also need to learn, how to adjust yourself with a rejection. Remember this: you don't "own" anything in a team discussion, you are a participant.
There are reasons, valid reasons, for any proposal being accepted or turned down. There are ways to showcase your disagreement and providing the proofs, like, having PoCs, SWOT analysis result etc, getting angry or frustrated or agitated is not one of them. At end of the day, not up to you to make the final decision, so let it go.
Direct your "anger" or "frustration" towards a positive side: For example,
- Do better homework on the topics being discussed next time.
- Invest more in finding the downsides of the other proposed solutions, and also present ideas which promise to solve the downsides you have identified. In other words, don't just point out the shortcomings, also find ways to mitigate them.
Do not try to "compete", rather "collaborate". Don't expect everyone to accept what you propose, and at the same time, don't blindly reject everyone else's idea because you have one of your own.
Compare, collate and collaborate - that way you may find every idea has some contribution from your own.
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
add a comment |
Although the other answers provide fair points, let me explore a possibility that seems to me it was not properly considered in some of them.
I have 20+ years of experience as a developer and until last year I never had any issue with the outcome of design sessions. Usually, such sessions would end like this:
- My solution was accepted verbatim (10%)
- My solution had flaws and it was improved by the team or merged with other solution (50%)
- There was a better solution from someone else (40%)
The accepted design represented an overall view of the team and at least I never had a trouble going forward with it, because I always thought we got a good solution on the end.
However, last year I joined a team, composed of people from different backgrounds, that were working together for 6 months beforehand. They had a complete different set of priorities in their thinking, that clashed directly with mine most of the time.
For me, their designs were brittle, hardcoded and somewhat inflexible. For them, my proposals were fancy, over-engineered.
It was very hard for me to accept, for example, to create a parser engine whose outcome would depend on the name of the json file. I tried to explain to them that we would have more advantages having metadata inside the json instead of simply relying in its name, but the collective decision was that asking the users to create additional fields was unnecessary.
Then they decided to create the code without unit tests, instead having integration tests to check everything end-to-end (3 minutes of execution time). And then came several other decisions that I couldn't simply agree with.
For almost an year, I tried to reason with them. I applied several suggestions from the agile coaches of the company, asked fellow engineers to evaluate if I was wrong in my assessments, suggested to do spikes to compare solutions with facts not opinions, among other strategies, including taking 3 soft skills courses to see if it would help.
With time, some situations arose that showed them the problems in our solutions, and eventually they recognized that some of them would have been avoided with a "fancy" design. But most of the time, I was still the absolute minority in the design sessions.
In the end, I asked and changed to another team. that solved the issue for me, but it is not the case here for you.
In your case, I would suggest:
are the decisions so bad that you can't live with them? Can you try to tolerate them to see if time can show the chosen design was not the best one?
in your relationship with these other founders, can you openly tell them how you feel about this?
try some soft skills courses, to see if this can enable you to better communicate your ideas
can you bring somebody else to support you? being only founders, this may be impossible or awkward, but I don't know your environment. a professional coach, for example, may assist/mediate your discussions and help you see the social dynamics happening while you make decisions
New contributor
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
add a comment |
As others have said, what you're feeling is normal, and understandable.
First and foremost, I'd assume good faith from everyone else. Second, I'd ask for more information about people's reasoning. And third, use that information to help you in the future.
To elaborate, first and foremost, you have to assume that the other people involved in making the decision are rational, and have reasons for what they're doing. So either you don't understand their reasons, or you disagree with them. So I'd talk to them and get a better idea for why they went with a different option. Why are they prioritizing those concerns over the things you value? I know that as an engineer, it can be very hard to balance technical correctness/best practices versus actually shipping a product.
For example, they think that moving logic from the backend to the frontend will make certain things easier to manage, and they want to allow people to make certain changes you think an admin should make, which again seems like it will minimize the amount of management you/the admin needs to do. You probably prioritize other characteristics, or disagree that those changes will minimize the amount of management time.
So one thing you could do, going forward, is at least think about changing your metrics for decision to match those of your other cofounders, and/or focus your energy on the areas that you think will maximize whatever characteristics you care about. And be prepared to not "win" all the discussions. Worst case, if everything goes horribly wrong, you can always say "I told you so."
New contributor
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "423"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: false,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
jrichie911 is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f132461%2fwhat-to-do-when-my-ideas-arent-chosen-when-i-strongly-disagree-with-the-chosen%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
StackExchange.ready(function () {
$("#show-editor-button input, #show-editor-button button").click(function () {
var showEditor = function() {
$("#show-editor-button").hide();
$("#post-form").removeClass("dno");
StackExchange.editor.finallyInit();
};
var useFancy = $(this).data('confirm-use-fancy');
if(useFancy == 'True') {
var popupTitle = $(this).data('confirm-fancy-title');
var popupBody = $(this).data('confirm-fancy-body');
var popupAccept = $(this).data('confirm-fancy-accept-button');
$(this).loadPopup({
url: '/post/self-answer-popup',
loaded: function(popup) {
var pTitle = $(popup).find('h2');
var pBody = $(popup).find('.popup-body');
var pSubmit = $(popup).find('.popup-submit');
pTitle.text(popupTitle);
pBody.html(popupBody);
pSubmit.val(popupAccept).click(showEditor);
}
})
} else{
var confirmText = $(this).data('confirm-text');
if (confirmText ? confirm(confirmText) : true) {
showEditor();
}
}
});
});
7 Answers
7
active
oldest
votes
7 Answers
7
active
oldest
votes
active
oldest
votes
active
oldest
votes
how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
My way of dealing with this is considering what my role in the company is. Am I there as a developer? As an analyst? As a team lead? As a project manager?
If I'm the developer (which I surmise you are), then you never had "decision making power" to begin with. You simply had some decision making privilege that was extended to you because someone (with actual power) chose to follow your decision.
Edit: you mention the three of you are co-founders, but the answer remains the same. You don't have any power, only a majority of you wields any power. In this case, you are not part of the majority.
If you're not holding the wheel, you're not steering the ship and thus cannot override the decision that is made by whoever is holding the wheel. You can ask them (which you did), but they can ignore/deny/disagree with your request. Not your circus, not your monkeys.
You informatively raised a concern, it was ignored. Accept the outcome and follow the plan as agreed upon. You and your two colleagues are there as a team, not as a darwinian competition.
Even if you were right, the other two developers clearly did not think so and will have to make the mistake before they realize it was a mistake. Everyone does what they consider to be the best thing, until they understand that it's not actually the best thing. In some cases, that means having to learn the hard way. This can apply to either you or your colleages, only time will tell.
If you want to be the one steering the ship, you must first be in a position to do so. But if you're unable to deal with things not going your way, I'm apprehensive about your compatibility in a leadership role, as it entails much more compromise than outsiders seem to think it does.
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
The short answer, in the words of Disney's Frozen, let it go. That's easier said than done, but it will boil down to this.
Look inwards and ask yourself why you care so much that you're willing to die on this particular hill. Is it because you only want to do things your way? It is because you are unwilling to learn a different way of doing things? Is it because you have a different appraoch to developing and abhor the alternative?
How can you be sure that you are objectively more correct than the others? If you are, then why did you not used that irrefutible evidence to make your case before the vote?
Never lose sight of the big picture: you're an employee of the company, and you're there to do the work the company tells you to do (within the boundaries defined in your contract). You don't get to decide which work you get to do.
Let it go, and accept that when someone else overrides your decision, the consequences of that decision fall on them. You are not personally responsible for the company's wellbeing against the company's own wishes.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
First of all: you agreed to a vote, you partook in a vote, and now that the decision hasn't gone your way, you're wanting to pipe up about it. At first glance, I would consider whether you're being a sore loser here.
The fact that a vote needed to take place suggests that the decision was not unanimous, which inherently means that someone was always going to "lose". This time, it is you. So you have two options: you accept the outcome, or you don't.
Imagine if everyone who didn't get their way did not accept anything other than what they wanted. How much progress do you think you'd make if the other two developers blocked you every time one of them did not agree?
As a real world example, imagine if everyone in a democracy had veto power over everyone else, and you could only get things done when every citizen unanimously agrees. Nothing would ever get done.
If you do make a fuss, and let's say you even manage to get your way eventually, you will be known as a sore loser and unwilling to work in a team or compromise. All of these observations will be much more detrimental to your career than the minor benefit of being right.
add a comment |
how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
My way of dealing with this is considering what my role in the company is. Am I there as a developer? As an analyst? As a team lead? As a project manager?
If I'm the developer (which I surmise you are), then you never had "decision making power" to begin with. You simply had some decision making privilege that was extended to you because someone (with actual power) chose to follow your decision.
Edit: you mention the three of you are co-founders, but the answer remains the same. You don't have any power, only a majority of you wields any power. In this case, you are not part of the majority.
If you're not holding the wheel, you're not steering the ship and thus cannot override the decision that is made by whoever is holding the wheel. You can ask them (which you did), but they can ignore/deny/disagree with your request. Not your circus, not your monkeys.
You informatively raised a concern, it was ignored. Accept the outcome and follow the plan as agreed upon. You and your two colleagues are there as a team, not as a darwinian competition.
Even if you were right, the other two developers clearly did not think so and will have to make the mistake before they realize it was a mistake. Everyone does what they consider to be the best thing, until they understand that it's not actually the best thing. In some cases, that means having to learn the hard way. This can apply to either you or your colleages, only time will tell.
If you want to be the one steering the ship, you must first be in a position to do so. But if you're unable to deal with things not going your way, I'm apprehensive about your compatibility in a leadership role, as it entails much more compromise than outsiders seem to think it does.
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
The short answer, in the words of Disney's Frozen, let it go. That's easier said than done, but it will boil down to this.
Look inwards and ask yourself why you care so much that you're willing to die on this particular hill. Is it because you only want to do things your way? It is because you are unwilling to learn a different way of doing things? Is it because you have a different appraoch to developing and abhor the alternative?
How can you be sure that you are objectively more correct than the others? If you are, then why did you not used that irrefutible evidence to make your case before the vote?
Never lose sight of the big picture: you're an employee of the company, and you're there to do the work the company tells you to do (within the boundaries defined in your contract). You don't get to decide which work you get to do.
Let it go, and accept that when someone else overrides your decision, the consequences of that decision fall on them. You are not personally responsible for the company's wellbeing against the company's own wishes.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
First of all: you agreed to a vote, you partook in a vote, and now that the decision hasn't gone your way, you're wanting to pipe up about it. At first glance, I would consider whether you're being a sore loser here.
The fact that a vote needed to take place suggests that the decision was not unanimous, which inherently means that someone was always going to "lose". This time, it is you. So you have two options: you accept the outcome, or you don't.
Imagine if everyone who didn't get their way did not accept anything other than what they wanted. How much progress do you think you'd make if the other two developers blocked you every time one of them did not agree?
As a real world example, imagine if everyone in a democracy had veto power over everyone else, and you could only get things done when every citizen unanimously agrees. Nothing would ever get done.
If you do make a fuss, and let's say you even manage to get your way eventually, you will be known as a sore loser and unwilling to work in a team or compromise. All of these observations will be much more detrimental to your career than the minor benefit of being right.
add a comment |
how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
My way of dealing with this is considering what my role in the company is. Am I there as a developer? As an analyst? As a team lead? As a project manager?
If I'm the developer (which I surmise you are), then you never had "decision making power" to begin with. You simply had some decision making privilege that was extended to you because someone (with actual power) chose to follow your decision.
Edit: you mention the three of you are co-founders, but the answer remains the same. You don't have any power, only a majority of you wields any power. In this case, you are not part of the majority.
If you're not holding the wheel, you're not steering the ship and thus cannot override the decision that is made by whoever is holding the wheel. You can ask them (which you did), but they can ignore/deny/disagree with your request. Not your circus, not your monkeys.
You informatively raised a concern, it was ignored. Accept the outcome and follow the plan as agreed upon. You and your two colleagues are there as a team, not as a darwinian competition.
Even if you were right, the other two developers clearly did not think so and will have to make the mistake before they realize it was a mistake. Everyone does what they consider to be the best thing, until they understand that it's not actually the best thing. In some cases, that means having to learn the hard way. This can apply to either you or your colleages, only time will tell.
If you want to be the one steering the ship, you must first be in a position to do so. But if you're unable to deal with things not going your way, I'm apprehensive about your compatibility in a leadership role, as it entails much more compromise than outsiders seem to think it does.
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
The short answer, in the words of Disney's Frozen, let it go. That's easier said than done, but it will boil down to this.
Look inwards and ask yourself why you care so much that you're willing to die on this particular hill. Is it because you only want to do things your way? It is because you are unwilling to learn a different way of doing things? Is it because you have a different appraoch to developing and abhor the alternative?
How can you be sure that you are objectively more correct than the others? If you are, then why did you not used that irrefutible evidence to make your case before the vote?
Never lose sight of the big picture: you're an employee of the company, and you're there to do the work the company tells you to do (within the boundaries defined in your contract). You don't get to decide which work you get to do.
Let it go, and accept that when someone else overrides your decision, the consequences of that decision fall on them. You are not personally responsible for the company's wellbeing against the company's own wishes.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
First of all: you agreed to a vote, you partook in a vote, and now that the decision hasn't gone your way, you're wanting to pipe up about it. At first glance, I would consider whether you're being a sore loser here.
The fact that a vote needed to take place suggests that the decision was not unanimous, which inherently means that someone was always going to "lose". This time, it is you. So you have two options: you accept the outcome, or you don't.
Imagine if everyone who didn't get their way did not accept anything other than what they wanted. How much progress do you think you'd make if the other two developers blocked you every time one of them did not agree?
As a real world example, imagine if everyone in a democracy had veto power over everyone else, and you could only get things done when every citizen unanimously agrees. Nothing would ever get done.
If you do make a fuss, and let's say you even manage to get your way eventually, you will be known as a sore loser and unwilling to work in a team or compromise. All of these observations will be much more detrimental to your career than the minor benefit of being right.
how do you deal with this conflict once it has been decided that this is something that must go ahead, if you feel strongly against the change?
My way of dealing with this is considering what my role in the company is. Am I there as a developer? As an analyst? As a team lead? As a project manager?
If I'm the developer (which I surmise you are), then you never had "decision making power" to begin with. You simply had some decision making privilege that was extended to you because someone (with actual power) chose to follow your decision.
Edit: you mention the three of you are co-founders, but the answer remains the same. You don't have any power, only a majority of you wields any power. In this case, you are not part of the majority.
If you're not holding the wheel, you're not steering the ship and thus cannot override the decision that is made by whoever is holding the wheel. You can ask them (which you did), but they can ignore/deny/disagree with your request. Not your circus, not your monkeys.
You informatively raised a concern, it was ignored. Accept the outcome and follow the plan as agreed upon. You and your two colleagues are there as a team, not as a darwinian competition.
Even if you were right, the other two developers clearly did not think so and will have to make the mistake before they realize it was a mistake. Everyone does what they consider to be the best thing, until they understand that it's not actually the best thing. In some cases, that means having to learn the hard way. This can apply to either you or your colleages, only time will tell.
If you want to be the one steering the ship, you must first be in a position to do so. But if you're unable to deal with things not going your way, I'm apprehensive about your compatibility in a leadership role, as it entails much more compromise than outsiders seem to think it does.
I find that this severely impacts my mental state (either by making me feel less motivated, agitated, angry/frustrated, or what have you), and I'd like a solution.
The short answer, in the words of Disney's Frozen, let it go. That's easier said than done, but it will boil down to this.
Look inwards and ask yourself why you care so much that you're willing to die on this particular hill. Is it because you only want to do things your way? It is because you are unwilling to learn a different way of doing things? Is it because you have a different appraoch to developing and abhor the alternative?
How can you be sure that you are objectively more correct than the others? If you are, then why did you not used that irrefutible evidence to make your case before the vote?
Never lose sight of the big picture: you're an employee of the company, and you're there to do the work the company tells you to do (within the boundaries defined in your contract). You don't get to decide which work you get to do.
Let it go, and accept that when someone else overrides your decision, the consequences of that decision fall on them. You are not personally responsible for the company's wellbeing against the company's own wishes.
I strongly disagreed with the chosen outcome, which was settled based on majority (we're a team of 3 co-founders), and so I'm not sure how to reconcile the feeling of having to do work to support a path I don't agree with.
First of all: you agreed to a vote, you partook in a vote, and now that the decision hasn't gone your way, you're wanting to pipe up about it. At first glance, I would consider whether you're being a sore loser here.
The fact that a vote needed to take place suggests that the decision was not unanimous, which inherently means that someone was always going to "lose". This time, it is you. So you have two options: you accept the outcome, or you don't.
Imagine if everyone who didn't get their way did not accept anything other than what they wanted. How much progress do you think you'd make if the other two developers blocked you every time one of them did not agree?
As a real world example, imagine if everyone in a democracy had veto power over everyone else, and you could only get things done when every citizen unanimously agrees. Nothing would ever get done.
If you do make a fuss, and let's say you even manage to get your way eventually, you will be known as a sore loser and unwilling to work in a team or compromise. All of these observations will be much more detrimental to your career than the minor benefit of being right.
edited 11 hours ago
answered 14 hours ago
FlaterFlater
2,85311016
2,85311016
add a comment |
add a comment |
You've expressed your idea clearly and they decided they did not want to accept your decision and this bothers you. Well of course it bothers you. You've made an excellent case for a particular technology to be used and they flat out denied it.
Though remember that politics are always at play, and you cannot understand all the underlying reasons behind any given decision. Even if this were not the case, you should always keep in mind that it isn't a direct attack on you, nor is it saying that you are incapable of making good choices in this matter.
As a programmer myself, you learn to go with the flow and respect the decisions of your colleagues, even if you disagree. Fight the battles that deserve fighting for, when you think that it would be a seriously bad choice otherwise. Being a team player is every bit as important as making the right technical choices, and you should learn to trust in your colleagues just as they should learn to trust in you.
However, this only addresses the inward issue. If you feel that a mistake is being made, then the proper approach is to make it clear first and foremost to your colleagues, and should they not agree, with your boss directly. It need not be a personal vendetta, but rather something you're making clear. After this point, you cannot be held accountable for potential problems which may result from this (though they can still ask you to fix it).
TL;DR - Try to pick your battles, but not at the expense of trust from your fellow colleagues. If you absolutely must object to a decision, simply make it clear, and then continue to be a team player.
Edit: In light of your edited question, then I suppose not much can be done. If perhaps you are the expert in this regard, then you could put in an argument that in such matters, you should be given full control (but strictly for technical issues such as this). Though if I understand you correctly, that isn't the case.
So the next best thing is trying to make their proposed solution work as best as possible. While it can't be your idea, at least you can make it work well, and there is some small satisfaction in this. It would be ill-advised to sabotage the idea to prove your solution correct. Ultimately, they are co-founders, and so you must respect their decision just as they must respect yours should you and another co-founder agree on something which the third does not.
New contributor
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
add a comment |
You've expressed your idea clearly and they decided they did not want to accept your decision and this bothers you. Well of course it bothers you. You've made an excellent case for a particular technology to be used and they flat out denied it.
Though remember that politics are always at play, and you cannot understand all the underlying reasons behind any given decision. Even if this were not the case, you should always keep in mind that it isn't a direct attack on you, nor is it saying that you are incapable of making good choices in this matter.
As a programmer myself, you learn to go with the flow and respect the decisions of your colleagues, even if you disagree. Fight the battles that deserve fighting for, when you think that it would be a seriously bad choice otherwise. Being a team player is every bit as important as making the right technical choices, and you should learn to trust in your colleagues just as they should learn to trust in you.
However, this only addresses the inward issue. If you feel that a mistake is being made, then the proper approach is to make it clear first and foremost to your colleagues, and should they not agree, with your boss directly. It need not be a personal vendetta, but rather something you're making clear. After this point, you cannot be held accountable for potential problems which may result from this (though they can still ask you to fix it).
TL;DR - Try to pick your battles, but not at the expense of trust from your fellow colleagues. If you absolutely must object to a decision, simply make it clear, and then continue to be a team player.
Edit: In light of your edited question, then I suppose not much can be done. If perhaps you are the expert in this regard, then you could put in an argument that in such matters, you should be given full control (but strictly for technical issues such as this). Though if I understand you correctly, that isn't the case.
So the next best thing is trying to make their proposed solution work as best as possible. While it can't be your idea, at least you can make it work well, and there is some small satisfaction in this. It would be ill-advised to sabotage the idea to prove your solution correct. Ultimately, they are co-founders, and so you must respect their decision just as they must respect yours should you and another co-founder agree on something which the third does not.
New contributor
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
add a comment |
You've expressed your idea clearly and they decided they did not want to accept your decision and this bothers you. Well of course it bothers you. You've made an excellent case for a particular technology to be used and they flat out denied it.
Though remember that politics are always at play, and you cannot understand all the underlying reasons behind any given decision. Even if this were not the case, you should always keep in mind that it isn't a direct attack on you, nor is it saying that you are incapable of making good choices in this matter.
As a programmer myself, you learn to go with the flow and respect the decisions of your colleagues, even if you disagree. Fight the battles that deserve fighting for, when you think that it would be a seriously bad choice otherwise. Being a team player is every bit as important as making the right technical choices, and you should learn to trust in your colleagues just as they should learn to trust in you.
However, this only addresses the inward issue. If you feel that a mistake is being made, then the proper approach is to make it clear first and foremost to your colleagues, and should they not agree, with your boss directly. It need not be a personal vendetta, but rather something you're making clear. After this point, you cannot be held accountable for potential problems which may result from this (though they can still ask you to fix it).
TL;DR - Try to pick your battles, but not at the expense of trust from your fellow colleagues. If you absolutely must object to a decision, simply make it clear, and then continue to be a team player.
Edit: In light of your edited question, then I suppose not much can be done. If perhaps you are the expert in this regard, then you could put in an argument that in such matters, you should be given full control (but strictly for technical issues such as this). Though if I understand you correctly, that isn't the case.
So the next best thing is trying to make their proposed solution work as best as possible. While it can't be your idea, at least you can make it work well, and there is some small satisfaction in this. It would be ill-advised to sabotage the idea to prove your solution correct. Ultimately, they are co-founders, and so you must respect their decision just as they must respect yours should you and another co-founder agree on something which the third does not.
New contributor
You've expressed your idea clearly and they decided they did not want to accept your decision and this bothers you. Well of course it bothers you. You've made an excellent case for a particular technology to be used and they flat out denied it.
Though remember that politics are always at play, and you cannot understand all the underlying reasons behind any given decision. Even if this were not the case, you should always keep in mind that it isn't a direct attack on you, nor is it saying that you are incapable of making good choices in this matter.
As a programmer myself, you learn to go with the flow and respect the decisions of your colleagues, even if you disagree. Fight the battles that deserve fighting for, when you think that it would be a seriously bad choice otherwise. Being a team player is every bit as important as making the right technical choices, and you should learn to trust in your colleagues just as they should learn to trust in you.
However, this only addresses the inward issue. If you feel that a mistake is being made, then the proper approach is to make it clear first and foremost to your colleagues, and should they not agree, with your boss directly. It need not be a personal vendetta, but rather something you're making clear. After this point, you cannot be held accountable for potential problems which may result from this (though they can still ask you to fix it).
TL;DR - Try to pick your battles, but not at the expense of trust from your fellow colleagues. If you absolutely must object to a decision, simply make it clear, and then continue to be a team player.
Edit: In light of your edited question, then I suppose not much can be done. If perhaps you are the expert in this regard, then you could put in an argument that in such matters, you should be given full control (but strictly for technical issues such as this). Though if I understand you correctly, that isn't the case.
So the next best thing is trying to make their proposed solution work as best as possible. While it can't be your idea, at least you can make it work well, and there is some small satisfaction in this. It would be ill-advised to sabotage the idea to prove your solution correct. Ultimately, they are co-founders, and so you must respect their decision just as they must respect yours should you and another co-founder agree on something which the third does not.
New contributor
edited 8 hours ago
gfos
1054
1054
New contributor
answered 16 hours ago
NeilNeil
34116
34116
New contributor
New contributor
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
add a comment |
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
7
7
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
Good answer. I will just say, sometimes it's not even "politics", but just non-technical things. There can be time pressures, money pressures, patents, sensitive clients, etc. A whole stack of reasons that a manager may not mention to a programmer, but is important anyway.
– Gregory Currie
15 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@Neil Appreciate your answer, thank you very much. Just to clarify, this is a project with myself and two other co-founders, so I'm not answering to management here. I've also added a bit of further clarification as a reply to a comment in my original post if you care to read more on the circumstances.
– jrichie911
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@jrichie911 I expanded on my answer. I hope that answers your question.
– Neil
14 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
@Neil thank you very much.
– jrichie911
13 hours ago
add a comment |
It's a completely understandable reaction and a human one.
You know you tried to influence the decision making process, you tried your hardest, and things didn't end up as you think they should.
What I find with a lot of things is if I understand everybody wants the best outcome, it makes it easier for me. If I can work with a bunch of people who are committed to everyone understanding the pros and cons of each solution, that gives me confidence that on average, the best solution is often decided.
Often what it comes down to is a slight disagreement in perceived importance. For instance, one person may think performance is more important than code clarity.
You have to remember, the best teams operate when there are disagreements. If you have a team of "yes men" as a team, you are not likely to do great work. So there will often be somebody that's a bit disappointed. But the team not deciding to go down a path doesn't mean everything you said is wasted. Quite often it will stay at the back of people's minds.
As you point out, once a course of action is decided, you do have to commit to it. If you have concerns, you should explore how they may be mitigated within the context of the decided solution. But you shouldn't compromise your team.
Also, something to keep in mind, often there are a lot of non-technical reasons why the best solution is not followed.
You will get used to this, just as I have.
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
add a comment |
It's a completely understandable reaction and a human one.
You know you tried to influence the decision making process, you tried your hardest, and things didn't end up as you think they should.
What I find with a lot of things is if I understand everybody wants the best outcome, it makes it easier for me. If I can work with a bunch of people who are committed to everyone understanding the pros and cons of each solution, that gives me confidence that on average, the best solution is often decided.
Often what it comes down to is a slight disagreement in perceived importance. For instance, one person may think performance is more important than code clarity.
You have to remember, the best teams operate when there are disagreements. If you have a team of "yes men" as a team, you are not likely to do great work. So there will often be somebody that's a bit disappointed. But the team not deciding to go down a path doesn't mean everything you said is wasted. Quite often it will stay at the back of people's minds.
As you point out, once a course of action is decided, you do have to commit to it. If you have concerns, you should explore how they may be mitigated within the context of the decided solution. But you shouldn't compromise your team.
Also, something to keep in mind, often there are a lot of non-technical reasons why the best solution is not followed.
You will get used to this, just as I have.
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
add a comment |
It's a completely understandable reaction and a human one.
You know you tried to influence the decision making process, you tried your hardest, and things didn't end up as you think they should.
What I find with a lot of things is if I understand everybody wants the best outcome, it makes it easier for me. If I can work with a bunch of people who are committed to everyone understanding the pros and cons of each solution, that gives me confidence that on average, the best solution is often decided.
Often what it comes down to is a slight disagreement in perceived importance. For instance, one person may think performance is more important than code clarity.
You have to remember, the best teams operate when there are disagreements. If you have a team of "yes men" as a team, you are not likely to do great work. So there will often be somebody that's a bit disappointed. But the team not deciding to go down a path doesn't mean everything you said is wasted. Quite often it will stay at the back of people's minds.
As you point out, once a course of action is decided, you do have to commit to it. If you have concerns, you should explore how they may be mitigated within the context of the decided solution. But you shouldn't compromise your team.
Also, something to keep in mind, often there are a lot of non-technical reasons why the best solution is not followed.
You will get used to this, just as I have.
It's a completely understandable reaction and a human one.
You know you tried to influence the decision making process, you tried your hardest, and things didn't end up as you think they should.
What I find with a lot of things is if I understand everybody wants the best outcome, it makes it easier for me. If I can work with a bunch of people who are committed to everyone understanding the pros and cons of each solution, that gives me confidence that on average, the best solution is often decided.
Often what it comes down to is a slight disagreement in perceived importance. For instance, one person may think performance is more important than code clarity.
You have to remember, the best teams operate when there are disagreements. If you have a team of "yes men" as a team, you are not likely to do great work. So there will often be somebody that's a bit disappointed. But the team not deciding to go down a path doesn't mean everything you said is wasted. Quite often it will stay at the back of people's minds.
As you point out, once a course of action is decided, you do have to commit to it. If you have concerns, you should explore how they may be mitigated within the context of the decided solution. But you shouldn't compromise your team.
Also, something to keep in mind, often there are a lot of non-technical reasons why the best solution is not followed.
You will get used to this, just as I have.
edited 15 hours ago
answered 15 hours ago
Gregory CurrieGregory Currie
3,85572236
3,85572236
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
add a comment |
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
Nicely expressed.
– Sourav Ghosh
15 hours ago
Nicely expressed.
– Sourav Ghosh
15 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
"I understand everybody wants the best outcome" - this is the critical part in my opinion.
– afaulconbridge
12 hours ago
add a comment |
Addressing this solely from the psychological stance asked for, I find there are a few things that help me get over a "bad choice" (in my opinion).
The first is simply a little time - if I have to start coding the "wrong thing" immediately, my mind is replaying all of the arguments against this, not trying to see the best way to create it. Usually if I can put it off for a day or two, I've accepted the decision and am more relaxed about it, particularly after sleeping on it (so my brain stops the cycle of "but the reasons against it are x.... y.... etc")
Second, there can be a feeling that your opinion wasn't heeded or that you are powerless because you can't change this decision. Going back to the code and doing something else that I do want done (that has been agreed or I have the power to choose) can help me feel back in control and that I am contributing good changes to the code-base.
Third, when I do come to designing/coding the required change, I am looking into how to make it work as smoothly as possible ("even if it's wrong we're going to do it well"). Trying to maximize the benefits that were used to make this decision and reduce what I saw as the problems with it helps to get me invested in making this solution work and usually I find I get to the point of "not the best decision, but actually not as bad as I thought".
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
add a comment |
Addressing this solely from the psychological stance asked for, I find there are a few things that help me get over a "bad choice" (in my opinion).
The first is simply a little time - if I have to start coding the "wrong thing" immediately, my mind is replaying all of the arguments against this, not trying to see the best way to create it. Usually if I can put it off for a day or two, I've accepted the decision and am more relaxed about it, particularly after sleeping on it (so my brain stops the cycle of "but the reasons against it are x.... y.... etc")
Second, there can be a feeling that your opinion wasn't heeded or that you are powerless because you can't change this decision. Going back to the code and doing something else that I do want done (that has been agreed or I have the power to choose) can help me feel back in control and that I am contributing good changes to the code-base.
Third, when I do come to designing/coding the required change, I am looking into how to make it work as smoothly as possible ("even if it's wrong we're going to do it well"). Trying to maximize the benefits that were used to make this decision and reduce what I saw as the problems with it helps to get me invested in making this solution work and usually I find I get to the point of "not the best decision, but actually not as bad as I thought".
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
add a comment |
Addressing this solely from the psychological stance asked for, I find there are a few things that help me get over a "bad choice" (in my opinion).
The first is simply a little time - if I have to start coding the "wrong thing" immediately, my mind is replaying all of the arguments against this, not trying to see the best way to create it. Usually if I can put it off for a day or two, I've accepted the decision and am more relaxed about it, particularly after sleeping on it (so my brain stops the cycle of "but the reasons against it are x.... y.... etc")
Second, there can be a feeling that your opinion wasn't heeded or that you are powerless because you can't change this decision. Going back to the code and doing something else that I do want done (that has been agreed or I have the power to choose) can help me feel back in control and that I am contributing good changes to the code-base.
Third, when I do come to designing/coding the required change, I am looking into how to make it work as smoothly as possible ("even if it's wrong we're going to do it well"). Trying to maximize the benefits that were used to make this decision and reduce what I saw as the problems with it helps to get me invested in making this solution work and usually I find I get to the point of "not the best decision, but actually not as bad as I thought".
Addressing this solely from the psychological stance asked for, I find there are a few things that help me get over a "bad choice" (in my opinion).
The first is simply a little time - if I have to start coding the "wrong thing" immediately, my mind is replaying all of the arguments against this, not trying to see the best way to create it. Usually if I can put it off for a day or two, I've accepted the decision and am more relaxed about it, particularly after sleeping on it (so my brain stops the cycle of "but the reasons against it are x.... y.... etc")
Second, there can be a feeling that your opinion wasn't heeded or that you are powerless because you can't change this decision. Going back to the code and doing something else that I do want done (that has been agreed or I have the power to choose) can help me feel back in control and that I am contributing good changes to the code-base.
Third, when I do come to designing/coding the required change, I am looking into how to make it work as smoothly as possible ("even if it's wrong we're going to do it well"). Trying to maximize the benefits that were used to make this decision and reduce what I saw as the problems with it helps to get me invested in making this solution work and usually I find I get to the point of "not the best decision, but actually not as bad as I thought".
answered 10 hours ago
DragonelDragonel
87159
87159
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
add a comment |
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
1
1
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
+1 First answer I've seen that actually seems to understand the problem the OP is having and addresses it in a way that might be helpful (edit: as much as I don't want to insult the other answers or the genuine helpfulness of the people giving them, OP is dealing with a very acute and uncommon problem of executive function (psychology term) and motivation. Many people seem to not experience this problem the same way, thus lack the mind interferometry skills to pick up on it, and don't know how to help another mind find the consciously controllable cognition needed to overcome the problem.)
– mtraceur
5 hours ago
add a comment |
Simple concept: "feeling" is not a driver for a change (or lack thereof). It is a fact driven event. Given there are enough facts to support the change, it'll happen, despite you like it or not.
You need to learn how to work with a team, and also need to learn, how to adjust yourself with a rejection. Remember this: you don't "own" anything in a team discussion, you are a participant.
There are reasons, valid reasons, for any proposal being accepted or turned down. There are ways to showcase your disagreement and providing the proofs, like, having PoCs, SWOT analysis result etc, getting angry or frustrated or agitated is not one of them. At end of the day, not up to you to make the final decision, so let it go.
Direct your "anger" or "frustration" towards a positive side: For example,
- Do better homework on the topics being discussed next time.
- Invest more in finding the downsides of the other proposed solutions, and also present ideas which promise to solve the downsides you have identified. In other words, don't just point out the shortcomings, also find ways to mitigate them.
Do not try to "compete", rather "collaborate". Don't expect everyone to accept what you propose, and at the same time, don't blindly reject everyone else's idea because you have one of your own.
Compare, collate and collaborate - that way you may find every idea has some contribution from your own.
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
add a comment |
Simple concept: "feeling" is not a driver for a change (or lack thereof). It is a fact driven event. Given there are enough facts to support the change, it'll happen, despite you like it or not.
You need to learn how to work with a team, and also need to learn, how to adjust yourself with a rejection. Remember this: you don't "own" anything in a team discussion, you are a participant.
There are reasons, valid reasons, for any proposal being accepted or turned down. There are ways to showcase your disagreement and providing the proofs, like, having PoCs, SWOT analysis result etc, getting angry or frustrated or agitated is not one of them. At end of the day, not up to you to make the final decision, so let it go.
Direct your "anger" or "frustration" towards a positive side: For example,
- Do better homework on the topics being discussed next time.
- Invest more in finding the downsides of the other proposed solutions, and also present ideas which promise to solve the downsides you have identified. In other words, don't just point out the shortcomings, also find ways to mitigate them.
Do not try to "compete", rather "collaborate". Don't expect everyone to accept what you propose, and at the same time, don't blindly reject everyone else's idea because you have one of your own.
Compare, collate and collaborate - that way you may find every idea has some contribution from your own.
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
add a comment |
Simple concept: "feeling" is not a driver for a change (or lack thereof). It is a fact driven event. Given there are enough facts to support the change, it'll happen, despite you like it or not.
You need to learn how to work with a team, and also need to learn, how to adjust yourself with a rejection. Remember this: you don't "own" anything in a team discussion, you are a participant.
There are reasons, valid reasons, for any proposal being accepted or turned down. There are ways to showcase your disagreement and providing the proofs, like, having PoCs, SWOT analysis result etc, getting angry or frustrated or agitated is not one of them. At end of the day, not up to you to make the final decision, so let it go.
Direct your "anger" or "frustration" towards a positive side: For example,
- Do better homework on the topics being discussed next time.
- Invest more in finding the downsides of the other proposed solutions, and also present ideas which promise to solve the downsides you have identified. In other words, don't just point out the shortcomings, also find ways to mitigate them.
Do not try to "compete", rather "collaborate". Don't expect everyone to accept what you propose, and at the same time, don't blindly reject everyone else's idea because you have one of your own.
Compare, collate and collaborate - that way you may find every idea has some contribution from your own.
Simple concept: "feeling" is not a driver for a change (or lack thereof). It is a fact driven event. Given there are enough facts to support the change, it'll happen, despite you like it or not.
You need to learn how to work with a team, and also need to learn, how to adjust yourself with a rejection. Remember this: you don't "own" anything in a team discussion, you are a participant.
There are reasons, valid reasons, for any proposal being accepted or turned down. There are ways to showcase your disagreement and providing the proofs, like, having PoCs, SWOT analysis result etc, getting angry or frustrated or agitated is not one of them. At end of the day, not up to you to make the final decision, so let it go.
Direct your "anger" or "frustration" towards a positive side: For example,
- Do better homework on the topics being discussed next time.
- Invest more in finding the downsides of the other proposed solutions, and also present ideas which promise to solve the downsides you have identified. In other words, don't just point out the shortcomings, also find ways to mitigate them.
Do not try to "compete", rather "collaborate". Don't expect everyone to accept what you propose, and at the same time, don't blindly reject everyone else's idea because you have one of your own.
Compare, collate and collaborate - that way you may find every idea has some contribution from your own.
edited 12 hours ago
answered 16 hours ago
Sourav GhoshSourav Ghosh
7,42943656
7,42943656
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
add a comment |
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
@JuanCarlosOropeza Thanks, corrected.
– Sourav Ghosh
12 hours ago
add a comment |
Although the other answers provide fair points, let me explore a possibility that seems to me it was not properly considered in some of them.
I have 20+ years of experience as a developer and until last year I never had any issue with the outcome of design sessions. Usually, such sessions would end like this:
- My solution was accepted verbatim (10%)
- My solution had flaws and it was improved by the team or merged with other solution (50%)
- There was a better solution from someone else (40%)
The accepted design represented an overall view of the team and at least I never had a trouble going forward with it, because I always thought we got a good solution on the end.
However, last year I joined a team, composed of people from different backgrounds, that were working together for 6 months beforehand. They had a complete different set of priorities in their thinking, that clashed directly with mine most of the time.
For me, their designs were brittle, hardcoded and somewhat inflexible. For them, my proposals were fancy, over-engineered.
It was very hard for me to accept, for example, to create a parser engine whose outcome would depend on the name of the json file. I tried to explain to them that we would have more advantages having metadata inside the json instead of simply relying in its name, but the collective decision was that asking the users to create additional fields was unnecessary.
Then they decided to create the code without unit tests, instead having integration tests to check everything end-to-end (3 minutes of execution time). And then came several other decisions that I couldn't simply agree with.
For almost an year, I tried to reason with them. I applied several suggestions from the agile coaches of the company, asked fellow engineers to evaluate if I was wrong in my assessments, suggested to do spikes to compare solutions with facts not opinions, among other strategies, including taking 3 soft skills courses to see if it would help.
With time, some situations arose that showed them the problems in our solutions, and eventually they recognized that some of them would have been avoided with a "fancy" design. But most of the time, I was still the absolute minority in the design sessions.
In the end, I asked and changed to another team. that solved the issue for me, but it is not the case here for you.
In your case, I would suggest:
are the decisions so bad that you can't live with them? Can you try to tolerate them to see if time can show the chosen design was not the best one?
in your relationship with these other founders, can you openly tell them how you feel about this?
try some soft skills courses, to see if this can enable you to better communicate your ideas
can you bring somebody else to support you? being only founders, this may be impossible or awkward, but I don't know your environment. a professional coach, for example, may assist/mediate your discussions and help you see the social dynamics happening while you make decisions
New contributor
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
add a comment |
Although the other answers provide fair points, let me explore a possibility that seems to me it was not properly considered in some of them.
I have 20+ years of experience as a developer and until last year I never had any issue with the outcome of design sessions. Usually, such sessions would end like this:
- My solution was accepted verbatim (10%)
- My solution had flaws and it was improved by the team or merged with other solution (50%)
- There was a better solution from someone else (40%)
The accepted design represented an overall view of the team and at least I never had a trouble going forward with it, because I always thought we got a good solution on the end.
However, last year I joined a team, composed of people from different backgrounds, that were working together for 6 months beforehand. They had a complete different set of priorities in their thinking, that clashed directly with mine most of the time.
For me, their designs were brittle, hardcoded and somewhat inflexible. For them, my proposals were fancy, over-engineered.
It was very hard for me to accept, for example, to create a parser engine whose outcome would depend on the name of the json file. I tried to explain to them that we would have more advantages having metadata inside the json instead of simply relying in its name, but the collective decision was that asking the users to create additional fields was unnecessary.
Then they decided to create the code without unit tests, instead having integration tests to check everything end-to-end (3 minutes of execution time). And then came several other decisions that I couldn't simply agree with.
For almost an year, I tried to reason with them. I applied several suggestions from the agile coaches of the company, asked fellow engineers to evaluate if I was wrong in my assessments, suggested to do spikes to compare solutions with facts not opinions, among other strategies, including taking 3 soft skills courses to see if it would help.
With time, some situations arose that showed them the problems in our solutions, and eventually they recognized that some of them would have been avoided with a "fancy" design. But most of the time, I was still the absolute minority in the design sessions.
In the end, I asked and changed to another team. that solved the issue for me, but it is not the case here for you.
In your case, I would suggest:
are the decisions so bad that you can't live with them? Can you try to tolerate them to see if time can show the chosen design was not the best one?
in your relationship with these other founders, can you openly tell them how you feel about this?
try some soft skills courses, to see if this can enable you to better communicate your ideas
can you bring somebody else to support you? being only founders, this may be impossible or awkward, but I don't know your environment. a professional coach, for example, may assist/mediate your discussions and help you see the social dynamics happening while you make decisions
New contributor
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
add a comment |
Although the other answers provide fair points, let me explore a possibility that seems to me it was not properly considered in some of them.
I have 20+ years of experience as a developer and until last year I never had any issue with the outcome of design sessions. Usually, such sessions would end like this:
- My solution was accepted verbatim (10%)
- My solution had flaws and it was improved by the team or merged with other solution (50%)
- There was a better solution from someone else (40%)
The accepted design represented an overall view of the team and at least I never had a trouble going forward with it, because I always thought we got a good solution on the end.
However, last year I joined a team, composed of people from different backgrounds, that were working together for 6 months beforehand. They had a complete different set of priorities in their thinking, that clashed directly with mine most of the time.
For me, their designs were brittle, hardcoded and somewhat inflexible. For them, my proposals were fancy, over-engineered.
It was very hard for me to accept, for example, to create a parser engine whose outcome would depend on the name of the json file. I tried to explain to them that we would have more advantages having metadata inside the json instead of simply relying in its name, but the collective decision was that asking the users to create additional fields was unnecessary.
Then they decided to create the code without unit tests, instead having integration tests to check everything end-to-end (3 minutes of execution time). And then came several other decisions that I couldn't simply agree with.
For almost an year, I tried to reason with them. I applied several suggestions from the agile coaches of the company, asked fellow engineers to evaluate if I was wrong in my assessments, suggested to do spikes to compare solutions with facts not opinions, among other strategies, including taking 3 soft skills courses to see if it would help.
With time, some situations arose that showed them the problems in our solutions, and eventually they recognized that some of them would have been avoided with a "fancy" design. But most of the time, I was still the absolute minority in the design sessions.
In the end, I asked and changed to another team. that solved the issue for me, but it is not the case here for you.
In your case, I would suggest:
are the decisions so bad that you can't live with them? Can you try to tolerate them to see if time can show the chosen design was not the best one?
in your relationship with these other founders, can you openly tell them how you feel about this?
try some soft skills courses, to see if this can enable you to better communicate your ideas
can you bring somebody else to support you? being only founders, this may be impossible or awkward, but I don't know your environment. a professional coach, for example, may assist/mediate your discussions and help you see the social dynamics happening while you make decisions
New contributor
Although the other answers provide fair points, let me explore a possibility that seems to me it was not properly considered in some of them.
I have 20+ years of experience as a developer and until last year I never had any issue with the outcome of design sessions. Usually, such sessions would end like this:
- My solution was accepted verbatim (10%)
- My solution had flaws and it was improved by the team or merged with other solution (50%)
- There was a better solution from someone else (40%)
The accepted design represented an overall view of the team and at least I never had a trouble going forward with it, because I always thought we got a good solution on the end.
However, last year I joined a team, composed of people from different backgrounds, that were working together for 6 months beforehand. They had a complete different set of priorities in their thinking, that clashed directly with mine most of the time.
For me, their designs were brittle, hardcoded and somewhat inflexible. For them, my proposals were fancy, over-engineered.
It was very hard for me to accept, for example, to create a parser engine whose outcome would depend on the name of the json file. I tried to explain to them that we would have more advantages having metadata inside the json instead of simply relying in its name, but the collective decision was that asking the users to create additional fields was unnecessary.
Then they decided to create the code without unit tests, instead having integration tests to check everything end-to-end (3 minutes of execution time). And then came several other decisions that I couldn't simply agree with.
For almost an year, I tried to reason with them. I applied several suggestions from the agile coaches of the company, asked fellow engineers to evaluate if I was wrong in my assessments, suggested to do spikes to compare solutions with facts not opinions, among other strategies, including taking 3 soft skills courses to see if it would help.
With time, some situations arose that showed them the problems in our solutions, and eventually they recognized that some of them would have been avoided with a "fancy" design. But most of the time, I was still the absolute minority in the design sessions.
In the end, I asked and changed to another team. that solved the issue for me, but it is not the case here for you.
In your case, I would suggest:
are the decisions so bad that you can't live with them? Can you try to tolerate them to see if time can show the chosen design was not the best one?
in your relationship with these other founders, can you openly tell them how you feel about this?
try some soft skills courses, to see if this can enable you to better communicate your ideas
can you bring somebody else to support you? being only founders, this may be impossible or awkward, but I don't know your environment. a professional coach, for example, may assist/mediate your discussions and help you see the social dynamics happening while you make decisions
New contributor
New contributor
answered 10 hours ago
Quaestor LucemQuaestor Lucem
1112
1112
New contributor
New contributor
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
add a comment |
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
It seems like you clashed at the beginning and it is very hard to recover from that. It is almost always better to learn how and why things are done the way they are because there's usually a historical reason for it. Prior to pushing ideas you should also earn some respect for your skills and knowledge. Once you learn the lay of the land and people 'trust' you, which could take quite a few months then you pick the low hanging fruit with the most bang for the buck which further increases people's trust in you as your impact is noticeable.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
Being the newbie telling everyone they are doing it wrong seldom gets you anywhere other than people to begin tuning you out even when you have good ideas to share.
– Dunk
6 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
@Dunk You are right - criticism isn't easily accepted from "outsiders". But teams differ a lot in terms of embracing criticism in general. There aren't many (but they do exist) teams that openly admit that their "historical reasons" were as typical - sometimes in fact identical - as the more recent reasons, i.e. "we were too lazy to fix it" or "it was done by 2 people over a single Sunday evening" or "this decision was just one giant ego trip of our CTO" or "it's a workaround for a problem that doesn't exist anymore".
– kubanczyk
3 hours ago
add a comment |
As others have said, what you're feeling is normal, and understandable.
First and foremost, I'd assume good faith from everyone else. Second, I'd ask for more information about people's reasoning. And third, use that information to help you in the future.
To elaborate, first and foremost, you have to assume that the other people involved in making the decision are rational, and have reasons for what they're doing. So either you don't understand their reasons, or you disagree with them. So I'd talk to them and get a better idea for why they went with a different option. Why are they prioritizing those concerns over the things you value? I know that as an engineer, it can be very hard to balance technical correctness/best practices versus actually shipping a product.
For example, they think that moving logic from the backend to the frontend will make certain things easier to manage, and they want to allow people to make certain changes you think an admin should make, which again seems like it will minimize the amount of management you/the admin needs to do. You probably prioritize other characteristics, or disagree that those changes will minimize the amount of management time.
So one thing you could do, going forward, is at least think about changing your metrics for decision to match those of your other cofounders, and/or focus your energy on the areas that you think will maximize whatever characteristics you care about. And be prepared to not "win" all the discussions. Worst case, if everything goes horribly wrong, you can always say "I told you so."
New contributor
add a comment |
As others have said, what you're feeling is normal, and understandable.
First and foremost, I'd assume good faith from everyone else. Second, I'd ask for more information about people's reasoning. And third, use that information to help you in the future.
To elaborate, first and foremost, you have to assume that the other people involved in making the decision are rational, and have reasons for what they're doing. So either you don't understand their reasons, or you disagree with them. So I'd talk to them and get a better idea for why they went with a different option. Why are they prioritizing those concerns over the things you value? I know that as an engineer, it can be very hard to balance technical correctness/best practices versus actually shipping a product.
For example, they think that moving logic from the backend to the frontend will make certain things easier to manage, and they want to allow people to make certain changes you think an admin should make, which again seems like it will minimize the amount of management you/the admin needs to do. You probably prioritize other characteristics, or disagree that those changes will minimize the amount of management time.
So one thing you could do, going forward, is at least think about changing your metrics for decision to match those of your other cofounders, and/or focus your energy on the areas that you think will maximize whatever characteristics you care about. And be prepared to not "win" all the discussions. Worst case, if everything goes horribly wrong, you can always say "I told you so."
New contributor
add a comment |
As others have said, what you're feeling is normal, and understandable.
First and foremost, I'd assume good faith from everyone else. Second, I'd ask for more information about people's reasoning. And third, use that information to help you in the future.
To elaborate, first and foremost, you have to assume that the other people involved in making the decision are rational, and have reasons for what they're doing. So either you don't understand their reasons, or you disagree with them. So I'd talk to them and get a better idea for why they went with a different option. Why are they prioritizing those concerns over the things you value? I know that as an engineer, it can be very hard to balance technical correctness/best practices versus actually shipping a product.
For example, they think that moving logic from the backend to the frontend will make certain things easier to manage, and they want to allow people to make certain changes you think an admin should make, which again seems like it will minimize the amount of management you/the admin needs to do. You probably prioritize other characteristics, or disagree that those changes will minimize the amount of management time.
So one thing you could do, going forward, is at least think about changing your metrics for decision to match those of your other cofounders, and/or focus your energy on the areas that you think will maximize whatever characteristics you care about. And be prepared to not "win" all the discussions. Worst case, if everything goes horribly wrong, you can always say "I told you so."
New contributor
As others have said, what you're feeling is normal, and understandable.
First and foremost, I'd assume good faith from everyone else. Second, I'd ask for more information about people's reasoning. And third, use that information to help you in the future.
To elaborate, first and foremost, you have to assume that the other people involved in making the decision are rational, and have reasons for what they're doing. So either you don't understand their reasons, or you disagree with them. So I'd talk to them and get a better idea for why they went with a different option. Why are they prioritizing those concerns over the things you value? I know that as an engineer, it can be very hard to balance technical correctness/best practices versus actually shipping a product.
For example, they think that moving logic from the backend to the frontend will make certain things easier to manage, and they want to allow people to make certain changes you think an admin should make, which again seems like it will minimize the amount of management you/the admin needs to do. You probably prioritize other characteristics, or disagree that those changes will minimize the amount of management time.
So one thing you could do, going forward, is at least think about changing your metrics for decision to match those of your other cofounders, and/or focus your energy on the areas that you think will maximize whatever characteristics you care about. And be prepared to not "win" all the discussions. Worst case, if everything goes horribly wrong, you can always say "I told you so."
New contributor
New contributor
answered 7 hours ago
Kevin McKenzieKevin McKenzie
1155
1155
New contributor
New contributor
add a comment |
add a comment |
jrichie911 is a new contributor. Be nice, and check out our Code of Conduct.
jrichie911 is a new contributor. Be nice, and check out our Code of Conduct.
jrichie911 is a new contributor. Be nice, and check out our Code of Conduct.
jrichie911 is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to The Workplace Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f132461%2fwhat-to-do-when-my-ideas-arent-chosen-when-i-strongly-disagree-with-the-chosen%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e) {
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom)) {
StackExchange.using('gps', function() { StackExchange.gps.track('embedded_signup_form.view', { location: 'question_page' }); });
$window.unbind('scroll', onScroll);
}
};
$window.on('scroll', onScroll);
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
3
The title of your answer doesn't match the content. Did a single decision not be what you hoped, or have you lost all decision making power?
– Gregory Currie
15 hours ago
17
"I find that this severely impacts my mental state" - does this happen often? Is your mental state affected whenever you disagree with something? If so, you may wish to seek counselling. They could help.
– Joe Strazzere
15 hours ago
21
How much experience do you have as a professional programmer? I ask, because one of the most important lessons I learned, after a few years, is to separate myself from my code. That doesn't mean there are times you shouldn't fight for what is "correct", but it is to learn to accept that other people are going to do things differently than you would, and the vast majority of time, what they are proposing is also okay.
– dan.m was user2321368
15 hours ago
7
@jrichie911 - so whenever you don't get your way, you have severe mental health issues? You should definitely be working with a mental health professional. In the work world, you cannot always get your way unless you own the business.
– Joe Strazzere
14 hours ago
7
I will just add, I don't think I see enough to think there are several mental health issues, more like an impact on mental state. Having been in charge of projects that have been pulled away from me (and mutilated - in my opinion) I can understand the... grief... that comes with it. It's natural when you're invested in something.
– Gregory Currie
13 hours ago