How do you stay grounded when writing software no one wants?
My current employer creates software that helps large communications companies comply with government regulations. While we technically have "users", we almost never think about them - not because we don't care, but because they simply aren't relevant to our bottom line. If we make something that's clunky and hard to use, it doesn't really matter. As long as we get it done on time and at a lower price than our competitors, we're golden. It may be an oversimplification to say that no one wants our software, but I can guarantee you that if a handful of laws were repealed tomorrow, we wouldn't have a single client. They may need what we make, but they certainly don't want it.
I find myself writing open-source software just to feel the rush of making something cool that people actually find useful. Few things feel better than making software people like. The obvious solution here is to find a new job, but for now, this is where I'm at. I assume I'm not the only one in this situation.
All you user-centered engineers out there: what do you do to keep yourself grounded when writing software that nobody really wants?
20 comments
[ 2.8 ms ] story [ 56.4 ms ] threadThings that helped me:
1. Books on stoicism and spirituality. The Subtle Art of Not Giving a Fuck was helpful to me in learning to be more "in the world but not of the world" -- maintaining a sense of my own values even if it was significantly harder to practice them in my current social context. Find a writer whose style resonates with you.
2. Find 1-3 other user-centered engineers and set up a regular Friday end-of-day chat over tea/beer/whatever so you do not feel so isolated and alienated and so you can support each other.
3. Build tooling to improve the developer experience of your fellow engineers.
4. Read about the legislative history for the laws. Write yourself some user stories for the underlying spirit of the laws.
If your company has a way you can do it without it being a betrayal of your PM, build relationships with people who work in Risk & Compliance and build trust with them so you can listen to their stressors.
Regarding #3: That's actually something that has been consistently satisfying. Seeing how my work impacts my coworkers and improves their workflows usually gives me a pretty good hit. Besides, it's low hanging fruit. There's plenty to improve since some of the senior engineers have, uhh... checked out?
Inverse yourself.
You may enjoy reading it, just for a clear understanding of the situation.
Not every job is fulfilling but a lot of them have to be done.
Speak for yourself. I applied to be one at my high school.
I simply can not and would not put up with a situation like the one you describe.
If overall quality of project is poor, it maybe even be possible to find some narrow aspect which is possible to polish. Expertise gained that way may be used later, when you finally start working on something meaningful in the future.