Hacker News new | ask | show | jobs
by jonathanfoster 2589 days ago
This is a tough situation to be in. I've been there myself and it's not fun. If I were in this same situation again, I would ask myself a few questions:

* Who is my customer in this situation? It could be your boss, your boss's boss, an important stakeholder, end users, etc. Make sure you have clarity on your customer so you can focus on their problems first. If you have find you have multiple "important" customers, then prioritize the most important first. This is likely the person who has the most influence on your immediate success.

* Are any of the problems you identified "your" customer's problem? If so great, time to get to work. If not, consider reprioritizing. You should reach out to your customer and get their feedback on priority. Be careful not to lose sight of the big picture.

* How do I know the other engineers aren't right? If you work with smart people who know how to get things done, then you should take their feedback seriously. Maybe they're right and you're wrong. Always validate your assumptions.

* What would happen if I just solved the problem myself? If you can then do, seriously. Submit a PR with your solution or build a proof of concept. Default to taking action. Don't wait for someone else's approval to get shit done.

* How can I measure and bring transparency to these problems? You'd be surprised how powerful emails with data are. If you can measure the problem (e.g., MTTR, rate of failure, response time) and more importantly the impact on customers, then you may be able to indirectly "motivate" others to solve their own problems. Send regular updates to managers, Directors, VPs, Execs, anyone important who will listen.

* At what point should I just let this go? Time box your efforts and once that time period has been reached, just let it go. This very well could be a situation where the "problem" is not the top priority. You may have to let this one burn so you can focus on other things.

1 comments

These are good points but

> Don't wait for someone else's approval to get shit done

This may be a great idea, but mishandled it can truly piss people off. See my other reply to this. Turn the diplomacy up to 11 if you plan to try it.

Both you and jonathanfoster have raised some great points here.

In a way, the working prototypes I've built (many of which could be production ready with little extra work) have been my "just get shit done" approach, both to prove my solutions to myself, AND to help make the argument to the rest of the team.

What's tough is that I'm not getting any hard no's on anything... after I build and show working prototypes of my ideas (many of which could be deployed to production with little extra work) I usually get a pat on the back followed by a "we'll discuss getting this out there when we have more time to learn it", and then it goes nowhere.

Next step would be deploying the stuff to production, but I have a good hunch I'd be the only one using the stuff, which wouldn't actually fix the problem from the customers' perspective if only half the system works as they'd expect (especially if new features continue to be written by the other engineers using old systems).

Ego might be part of this, though, so I think being extra diplomatic and trying to frame these ideas as "other people's ideas" might get me further.

Barring that, I might go straight to the customers (starting with our internal users and maybe broadening from there) to make sure my ideas are actually worthwhile to them.

If I can get a hard no from either my co-workers or the customers, I'd be more willing to either back off or find another place where I fit better. But as of right now, I see our customers asking for things we can't deliver, and I have a drive to fix it, but I don't think there's a way forward without my co-workers' and superiors' buy in.

Thanks for all the ideas!

Not gonna lie, I have pissed some people off with this approach myself even when it was handled properly. Diplomacy and collaboration should be used first. Maybe even let someone else take the win. Use the get shit done approach as a last resort.