> In most companies, management is actually to blame for deliberately isolating engineers from discovering the customer's needs. News flash! Developers actually like the idea of figuring out and fulfilling needs with epic software solutions and are fairly neutral-to-downright-annoyed at spending their time creating something that no customer wants.
I agree with the first statement but disagree with the second. Yes, management is often at fault for not involving or engaging developers. That said, I've seen many really solid developers be motivated by solving complex technical challenges instead of work that actually creates business/product value. Of course, it's management's responsibility to harness that energy and align it with creating value... But just saying, a lot of really smart people are driven more by intellectual challenges than product impact.
I can say that this is true for me. I like helping people but I get my motivation from feeling that I have solved a problem well. Maybe it is the nature of the kind of software I tend to write, but I'm not all that interested in whether it is used by millions of people or purportedly helps a bunch of people. That's nice, it's just too far removed from the work for me to be motivated by it. The bonus is that I also don't have an issue if something I've worked on is scrapped for whatever reason, and I know that that is something that some people have a hard time coping with.
> That said, I've seen many really solid developers be motivated by solving complex technical challenges instead of work that actually creates business/product value.
Complex technical challenges create value for the developer, as it's fun solving problems like that. If management doesn't communicate the end-user's needs/wants and how the product helps them, even valuable work can feel like pushing up Sisyphus's boulder, so working on fun stuff at least creates value for you rather than work that appears to be purely for the leadership's vanity.
For people that are in software because they love it, rather than for fame and fortune, in fact love the fact that the maths side of your brain can make stuff happen for people. For technical challenges, nothing beats algebraic topology or QFT, but with software you can make stuff that is real, and amaze and deight your family. The problem is management’s persistent blindness to the reality of their technology and development technology. The non-technical folk will hear “we can’t add this new feature without touching dozens of risk places in the code” and not understand the fact that this is extremely risk and is an urgent problem. they seem to think, hire someone that can remember the dozens of places to change” and make for awesome failure analyses where 36 call points where changed but the 37th was missed and . . . Etc.
If you think the software you are making is useless, you should find a different position. Life is short, and it’s thrilling to be responsible for software that people use and enjoy.
And their coworkers will be able to find nice complex isolated problems for them to solve. That isn’t a problem in for the group in general, because that is like finding a really nice tool that you can use however you like. And most any domain can use brilliant solutions, if you think about it for a few days.
I agree with the first statement but disagree with the second. Yes, management is often at fault for not involving or engaging developers. That said, I've seen many really solid developers be motivated by solving complex technical challenges instead of work that actually creates business/product value. Of course, it's management's responsibility to harness that energy and align it with creating value... But just saying, a lot of really smart people are driven more by intellectual challenges than product impact.