I enjoyed that. It was an honest, humble, useful reflection, and I wish the author well. They seem like a decent sort, and our poor industry desperately needs more “decent sorts.”<p>I had a similar background (especially the hardware core). I feel having a start in hardware, gave a tremendous foundation to all that followed.<p>One of the biggest epiphanies that I had, was when I realized that tech had gotten way too large for even the brightest polymath (which I am not) to master. I had to pick a direction, and walk that way, avoiding getting distracted by squirrels.<p>At the same time, I learned to keep long-term plans extremely vague, and go into focus on only the most immediate tasks. This is also how I tend to do my development architecture. I plan to change plans, and my architectures tend to have a lot of modules, “hooks,” bottlenecks, and “flex points.” Makes pivoting and repurposing straightforward. It’s basically habit, these days. Also, a pretty heavy-duty focus on code quality and documentation[0].<p>WFM, YMMV.<p>For myself, I’ve learned that I really enjoy “making things that people use.” UX, usability, accessibility, localization, and affording mental models. It gets sneered at, a lot, but is a <i>huge</i> challenge, to get right. Many great projects fail, because their engineers think that the UX is just “useless chrome that any schlub can do.”<p>Designing UX is designing around human nature; one of the most complex and unpredictable systems on Earth.<p>What gets a bit grating, but is also just basic human nature (so isn’t going anywhere, and also isn’t just a tech phenomenon), is folks that insist that if we aren’t experts in <i><TECH THEY ARE GOOD AT /></i> don’t use <i><TECHNIQUE THEY ARE PROUD OF /></i> or don’t use jargon, that we are “bad programmers.”<p>Personally, I find people that are truly good (as opposed to just facile) in stuff that is not my bailiwick, to be fascinating, and I appreciate having them around. I like to work on “heterogeneous” teams.<p>I think tech is wonderful. It isn’t a monorepo. There’s a hell of a lot of submodules, and each is a flourishing, rich, interesting world, with the ability to engage and enrich you. If you don’t like one, move to another.<p>I will say that <i>shipping</i> software, is different from <i>writing</i> software. There’s a <i>lot</i> of hard, grinding, boring work that we need to power through, and, sometimes, that work exceeds the actual engineering and design work. It’s not for everyone, and demands a different skillset from your standard geek arsenal.<p>[0] <a href="https://littlegreenviper.com/miscellany/leaving-a-legacy/" rel="nofollow noreferrer">https://littlegreenviper.com/miscellany/leaving-a-legacy/</a>