top | item 44718458

(no title)

lowlystatsguy | 7 months ago

I notice more and more product manager responsibilities being foisted upon engineers because everyone thinks we need a corporate kool aid mustache of “impact.” Instead, I think we should return to the idea that engineers are craftsmen. They care about doing good work and honing their craft. It is a leaders job to align the goals of the business annd the craftsmen. Unfortunately, our capitalistic society does not have a reward function that aligns with the craftsman’s, in general.

I think AI has poisoned the waters here a bit. It’s brought a fear of relying on AI tools and losing pure skill versus raw productivity. Business folks used to be fussy about timelines, but now they feel even more empowered to push back because AI has brought code to their level. If AI can write code that fast, why can’t you?

The article reads like if someone in the C suite was trying to tell me how to work who has no idea what actually goes on in my day-to-day or willfully ignores my pleas for better system stability and security in lieu of only taking the highest “impact” work (I.e. money). It’s just a greedy algorithm: almost always guaranteed to be suboptimal, but any effort to chart a different, more measured approach is seen by leaders as perfectionistic or even sabotage.

I’m not jaded; you’re jaded.

discuss

order

another_twist|7 months ago

I disagree. The real fun is in solving problems. Real user problems are harder than toy coding problems. Contact with users is what gives the craft meaning. Notions such as good code, clean code when chased as goals become stale too quickly. Good code is code other people can read, nothing more. Clean code is code that is modular and flexible enough for the near future. Next up are feature requests and feedback cycles which is the real fun part.

lowlystatsguy|7 months ago

Yeah, I actually don’t disagree with you. I’m speaking from my experience of being told that we don’t even want to modularize the code. It’s just slap the keyboard and make it work literally as fast as possible. The craft is anticipation of user requests, and not building it out in the moment, but knowing how to build it so it’s a smooth transition to the next feature. When you lose the ability to think (what I equate to focus time) before doing, you end up with unhappy developers, users, and managers. Every time I have tried to advocate for thinking first vs. doing first in my circles, I’ve met strong resistance akin to the perfectionistic claims. Even unit tests are seen as developers simply wasting time to make a product perfect despite said product already having hundreds of users and processing millions of dollars daily.