I highly doubt you are referring to the same thing.
One thing is being challenged to present a solution. Another entirely different thing is being stuck with an impossibility when you are reaching a deadline and all your managers and peers look at you as if you're hopeless when in reality you're just working a workfront that is not practically solvable.
I've been in a project where I was assigned a task that was severely underscoped and was riddled with emergent blockers. The quick description of the task sounded like a trivial thing that could be done in a couple of days, but in the end it turned into a months-long, multi-team effort. I was a few weeks into the project when another engineer was tasked to help me out, in the spirit of "let's pull this idiot out of the mud because this is getting embarrassing". It took a week or so for that engineer's mood to change from "here I am to save the day" to "please someone, anyone help me".
Does this sort of scenario fit your "problem solving" ideal, where everyone just loves the whole experience? I highly doubt it.
One of the key factors in happiness and fulfilment is the sense of mastery and performance. Sometimes we need to shift to a lower gear to move over bumps in the road. Sometimes we find ourselves in the depth of a gorge with no possible way out. The latter leaves everyone miserable.
why judge yourself for others incompetency?
Regardless of the example,the point is that it's naive and very ignorant to portray all blockers as feel-good "I overcame a challenge" opportunities.
Sometimes you feel good because you managed to jump a hurdle, sometimes you feel bad because you're stuck in the middle of a ravine with your arm crushed by a huge rock and the only tool you have is a pocket knife. Sure, you exercised your problem-solving skills on both scenarios, but they are hardly on the same level in terms of personal fulfilment and happiness.
For me, yes. IF you remove the manager constantly asking "is it done yet" and "why isn't this done".
I like having and solving large, unscoped, deeply technical, problems as long as the nagging doesn't happen. My last launch (this month) was a 6 month long 3 team project that no one but me understood. It's now a documented feature, with unit tests, and it is extremely simple. In fact, one of my CLs which took ~2 weeks to make was adding 1 `if (X) { continue; }` and I sent that to my manager as "look at this amazing milestone we crossed" and him not getting it :)
Yes, programming itself really is fun, but only if you care about the thing you're working on (which most of us will for our own personal/side/business projects, but not that many of us work on exciting stuff in our 9-to-5).
I mean... You can only do so many years of repetitive coding tasks in a typical corporate environment. That's why so many senior devs (upper 30's and 40's) either move to a management position or quit the industry ("quit" as in they start working for themselves in their own business or they just do something different and maybe do contract work from time to time).
Personally, I can't imagine myself doing the corporate worker drone programming for much longer (10+ years has been more than enough), I want to stop some time in not too distant future and I'm actively working towards that goal.
> “I feel negative when I get really stuck on something and cannot get around it”. Another respondent elaborated: “I also thought of situations where I’m debugging some issue with the code and I can’t figure out why it isn’t working – when it seems like everything should work, but it just doesn’t. This is definitely one of the biggest gumption traps I encounter”.
2. "stuck solving problems pushed onto me" Oh wow, how I hate that. Like when a user f*cks up their account on a Friday evening because they mixed up the "Delete" and "Rename" buttons (how do you do that? they are even color-coded..) and of course they have an urgent deadline so now instead of going home early to enjoy the sunshine I have to clean up this mess. And of course it's always the big important clients who employ cheap unskilled employees, so of course their mess gets triaged as critically important.
I believe the study intended to poll for #2, but clearly they didn't formulate it well so that #1 fits, too.
Here's a contrived example.
Let's say you became a house builder because you liked building houses from scratch. In a few years you find yourself working for a company and you are the window frame expert. You calculate, design, draw windows for the bespoke houses. You also make sure they fulfill building regulations. All day long. Note that you don't get to make the windows, other guys in the company do that.
Then you realize that this is not what you had in mind when you wanted to become a house builder. But the company pays you very well and you have some nice co-workers. You need to leave but you don't.
We can argue about the specifics, but stuck in solving that type of problems (especially if it's for incompetent co-workers) can drive you mad in the long run.
Yes, in the end the customer will be happy. But you spent 99% of your time glueing stuff and 1% of your time thinking about what to glue.
I've seen software engineering described as 'complexity management' and I think that gets closer to it than purely the use of other libraries which is commonly called just 'glue'.
Complexity management is a nice name. But again, it's only 1% of what you think about in a typical job. The rest is applying duct tape and glue.
- "Being stuck in, problem solving": great, fantastic, hooray, woo, yay, hoopla
- "Being stuck, in problem solving": not so much
- I had to help my uncle Jack off a horse