I know that this is the right idea, but it is so painful to build something you know is stupid and waste of time. Its impposible to go home happy knowing what you are building is crap.
I know that this is the right idea, but it is so painful to build something you know is stupid and waste of time. Its impposible to go home happy knowing what you are building is crap.
I agree, but only if people want to pay "professionally" for it. Additionally, there can be problems with this if you're working someplace where your job is potentially at risk if the project fails.
It's very hard to take strategic direction from folks who have golden parachutes in their contracts. Succeed or fail, they'll be OK, but when you can see the project is DOA, you now have to spend some time preparing to look for the next job/engagement/etc.
I realize not all situations are like this, but have seen enough to understand it happens. You can be professional, but also have to understand that sometimes your best interests and the project's best interests may not line up, and plan accordingly.
I learned the hard way to always be prepared to
move on.
This bears repeating. I have had many jobs, and a lot of them were great jobs. Sometimes for whatever reason, you need/want to move.It is quite often out of your control (e.g. the company is in trouble and they layoff your entire department or cancel the project you're working on) and even in socialist Europe there isn't really such A thing as job security (outside of the public sector anyway).
Even huge succesful companies like amazon/microsoft/google/etc sometimes have layoffs. Or they become less succesful for whatever reason you couldn't predict ahead of time and then have layoffs. Or they merge/buy another company and get rid of redundant/duplicate positions.
I do as well, but it is always a bit of a conflict in the back of my mind wrt feeling 100% dedicated to someone else's project. I want to feel that I'm committed 100%, but always have to be preparing for "this will not work out, what is plan B?".
I get what you're saying here (I think). Part of being a professional is putting your own ego aside and not making it all about yourself.
However, a true professional doesn't actually obey an employer the way a simple employee does. And in that regard, regrettably, we software developers really aren't professionals. We can take a personal stand, but there is no professional code of ethics that we serve that stands above the client or employer, at least not in the sense that it does for physicians or lawyers.
It isn't really our "fault", though we could organize better. Professionals belong to associations that have formal standing with government. In many cases, they can't "report to" a person who is not a member of their profession. They must serve their clients, but they are empowered, by law, to stand up to their clients and refuse to breach the ethics of their profession.
That's what happens when you have strong plumbing and electricians unions. They convince the legislate to legislate a form of welfare for their trade.
Small scale plumbing and electrical are tasks a significant chunk of homeowners are perfectly capable of doing without screwing up. It used to be that the majority of homeowners could accomplish these tasks and that was in the days before the Internet.
1. Take on a hobby in your free time.
2. Work for a different company, where developers have more of a stake and help define the product (there are few but they exist).
3. Moving into a "product management" role where you're defining features and requirements, etc.
4. Put your ass on the line and gamble on starting your own company.