I just passed the 35 year mark in tech last fall. Maybe it's because I'm winding down career-wise, maybe it's just something that happens in your late 50s - whatever it is, I've been prone to reminisce.
As I was thinking back at all of the post-college jobs I've had in engineering it occurred to me that there's not really anything I can definitely point to that's still in production. I don't recall ever being told as a young engineer that most of the stuff you're working on just won't exist in a few years. An architect or builder can drive by the building they designed or built every day and have the sense that they did something that's had an effect on the landscape - they can even go into the building and appreciate that feeling of accomplishment. The building will probably be there for a few generations and the grandkids of the architect will point to the building and exclaim to their friends: "My grandfather designed that building." For most that will not happen in tech.
I started out in hardware and embedded development transitioning to software development after a few years. I've worked in startups as well as midsize and large corporations - pretty much the full spectrum of companies.
The startups I was involved in no longer exist - well, one of them kind of still does. There's a website, at least, but it will never be anything more than the CEO's pipe dream. With startups the reason your work doesn't endure is simple: most of them just cease to exist after a few years. Funding is lost. Investors willing to invest aren't found. And all that work you did there is just gone. Sure, some startups get bought out and their code/designs live on somewhere else. But that didn't happen in any of the ones I was in.
Even during the time a startup is still viable things tend to be quite unstable which leads to work being thrown out. I recall that in that first startup in my 20s we were working on a project developing some embedded code and awaiting some hardware from an outside contractor. Our manager told us young 20 somethings that we needed to get the code done by the time the hardware arrived - we pulled some all-nighters working towards that goal. Said hardware was always about to arrive imminently... but it arrived months beyond when we thought it would. And by the time it did arrive, the priorities from management had changed. And all of our embedded code as well as the hardware were pretty much scrapped. As one of my young co-workers observed: "We could've spent the last six months on the beach and just as much would have been accomplished." Indeed, I'm starting to think that a lot of the last 35 years would have been just as productively spent on the beach.
So what about the larger companies - those are more stable and you'd think that projects would endure longer? Not really. Big projects are started with great fanfare and lots of hope ("This product will be the future of the company!"). Only to be canceled a few years later, if not sooner. I can point to several projects that I was involved in where that happened. Lots of long hours put in by lots of people - mostly all for naught.
There were some projects that made it out into the world, but the other factor in tech is obsolescence - it happens very quickly. Products are released and soon replaced by new products.
There's really only one product from a mid-sized company that I can
point to and say "I think there might be some code in there that I
wrote." But, of course, I'm not completely sure. They could have
rewritten a lot of code by now since it's like a dozen years since I was
there. I suspect my most enduring contribution to that product were the tests I added.
So what's my advice to those of you just starting out? Be very careful about what you're going to spend long hours working on - don't be convinced by management that long hours are even going to be helpful in the long run. In my experience the work you do after about 40 hours probably isn't going to be your best work anyway. And even if your hard work and long hours do end up "saving the company" be aware that in a short time (much shorter than you think) the stuff you worked on will be gone. Choose accordingly. Live a balanced life. Enjoy your work, but also enjoy the other areas of your life.