Ha ha! Of course not! This is where communication skills come into play. Because it is not at all trivial to even _understand_ the incentive structure that got you where you are, let alone to negotiate a new, healthier set of incentives.
-
-
There are many in the Software Development Thoughtleadership Corps
who take an individual, moralistic approach to organizational pressure.
“It’s your job as a professional!” they say. “Just write good code! If they push back, just tell them ‘that’s not how I work!’”Show this thread -
This, of course, is horrible advice that comes from a place of extreme privilege. It does _occasionally_ work for white dudes. For most of us, though, if we tried it, we’d be labeled “difficult” or “naïve” and eventually managed out via tepid performance reviews.
Show this thread -
And besides, even if the organization capitulates based on your ability to defend the moral high ground - it doesn’t actually fix the root issue.
Show this thread -
To actually fix it, you need to negotiate with the individuals who are applying the pressure. You need to understand THEIR incentives, and align your desired changes with those. You don’t want begrudging acceptance. You want enthusiastic buy-in.
Show this thread -
If you can’t get that, then it’s highly unlikely that your hoarded codebase will ever improve. Your ability to write good code is thus quite literally constrained by your ability to communicate with other humans.
Show this thread -
It’s not as impossible as it sounds. On the surface it might look like your manager’s desires (i.e. for you finish features faster by skipping the small refactorings) are diametrically opposed to yours.
Show this thread -
But there’s almost always a win-win in there SOMEWHERE. You can start by trying to understand what is driving that desire for them. It might not be what you think.
Show this thread -
It could be pressure from above, or a positive reputation that they want to preserve, or that they really need their full bonus this year because they already put a nonrefundable down payment on a swimming pool.
Show this thread -
Humans are complicated systems. They operate under a constantly- shifting set of motivations - many of which they are not consciously aware of. But as you improve your communication skills (by doing it badly at first), you start to get a sense of what works for different people.
Show this thread -
No matter how you approach it - by staking out the moral high ground, negotiation, subterfuge, or some combination - changing the incentives you operate under, and the habits those incentives create, is HARD. And sometimes it’s not possible.
Show this thread -
Or at least, it might not possible for you to achieve, with your current level of communication skill.
Show this thread -
Either way - notice what’s limiting your ability to write good code. It is NOT: - knowledge of the latest framework - how fast your tests run - your own weak moral fiber - your manager, PM, or CEO It IS: - how well you understand & work with people
Show this thread -
One important note here is that people who are _not_ in the demographic majority need much better communication skills to achieve the same results, vs people who are in the majority.
Show this thread -
This is a large part of what discouraged me, early in my career - that I couldn’t be blunt like my male peers, because it didn’t land the same way. To be effective, I had to put a lot of calories into learning how to people, while the guys spent those calories learning new tech.
Show this thread -
But here we are 20 years later, and it sure seems like my investment has paid off better than learning Java applet development.pic.twitter.com/wxUZYmewIg
Show this thread -
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
Twitter at the speed of parenting