3 ms·
I’d like to add another pitfall: obsessing over optimizing or eliminating intermediate layers when one should be focusing on meeting business requirements in hi
by mwcampbell 7y ago
I’d like to add another pitfall: obsessing over optimizing or eliminating intermediate layers when one should be focusing on meeting business requirements in higher layers. I’m prone to this one myself. This one is tough in the current move-fast-and-disrupt-things environment of startups, or even teams within larger companies that are trying to be nimble like a startup.
- daze42 7y agoThis is the hardest for me. It's almost like those two forces are in opposition to each other. I'd love to find an industry where they could align.
- chubot 7y agoYeah I think there is a tension there. If you care about systems and internal quality and want to get paid for it, I'd suggest software performance or security as promsiing fields. Performance and security are both cross-cutting concerns that span layers, i.e. you're not just thinking at the application level. It really is a separate kind of thinking and a separate kind of work. Though it seems that it's mostly large companies (e.g. "big tech" and a few other places) that care enough about performance and security to have dedicate staff for them. Most other shops are too busy with "business stuff", and they may reasonably want to outsource that work to experienced consultants.
- marcosdumay 7y agoI guess the keyword here is "obsessing". Software performance and maleability have serious impacts on business and can not be overlooked. But there is an optimum, and it is usually much lower than what most developers want to create. Honestly, I've learned to take fulfillment from the value my software adds to people, instead of it's abstract quality. But well, I still overengineer things all the time.