Small successful companies are great, but the hardest thing for me psychologically has been when I'm at a small company that is struggling to convince anyone to use its product. Being a small cog in a giant machine serving lots of users is more satisfying (to me) than building things that nobody is using.
> maybe every few years you switch to whatever new tech stack has gotten popular, but it's fundamentally all the same
So true!
But it's interesting that, from the perspective of someone in the middle, neither near the beginning or end of my career, I am (now, after a period of sadness) experiencing AI as a reinvigoration of fun in the work. But it's a very different kind of fun. I had totally lost the fun of clean code and figuring out new technologies and approaches and abstractions, just like you describe.
But now I'm experiencing the joy of thinking about what I can build, now that it's so much faster and easier to try ideas. I think this is actually getting back to an earlier version of my joy with computers. I can (vaguely) remember in my early years being like "wow! cool! I can make stuff that shows up on a computer screen!". But then it turned out to be ... pretty damn hard to actually do that, which led me to more excitement about all the ideas and technologies and techniques for managing the complexity of software engineering. But then that started feeling more tedious and samey, but I still had to put lots of time into it, there wasn't any other option.
But now all that is so much easier, and I'm rediscovering the fun of "wow cool, I can make things!", but now also with the whole benefit of the time I have spent doing the work of software engineering.
I was exactly this way ... maybe a year or so ago.
But honestly I've stopped being excited to type out code in my personal projects anymore either. I've become much more excited by what I can accomplish on my own in a small number of hours squeezed between work and family. I still experience this as a loss, but I'm no longer so sad about it, and moreso feel invigorated by the possibilities and opportunities that have been opened up.
A way that I have come to think about this is: I used to always be curious about the product management role. How exciting to come up with ideas and validate them with users. But I always demurred because it would be so frustrating to have to rely on other people to bring those ideas to fruition! On balance, I always preferred being the one executing ideas to being the one generating and validating them. But now I can properly do both things! (In my hobby time, that is, at work we still have this idea/execution split, at least for the time being.)
Yeah, I always bought the premise that it was good for the software, but it didn't work for me as a person, it drained my energy way too fast to spend hours of the day having to be "on" in conversation with another person.
In many ways, I think what's working for me with AI is that it is very similar to pair programming, but without the social-emotional investment required to interact with another person for long periods of time.
Yeah I definitely agree with this. AI has become very useful to me, but it has also definitely automated some of what used to be my favorite parts of my work.
I am having some success in working to acquire a taste for different parts of the work. But I suspect that this won't be an option for most people.
I show dead and see both fanboys and critics all the time. Look at my comment history, I feel like I'm constantly arguing from the other side with people who are more fanboy than me and then other people who are more critic than me.
I disagree that it's not meaningfully speeding me up. I'm definitely doing a lot more, and more quickly. But the benefit is definitely smaller at the team and organization level, because we still have all the same serialization points - review, validation, decision making - downstream of my work.
I realized after I posted that it didn't quite capture what I meant. For instance if I'm able to do a more complex piece of work all at once in about the same amount of time as it'd previously take me to do a simpler piece of work, than that is a speedup. And that's what I am able to realize.
But what's not as much the case is that if I did an A/B test on the same task that I'd be massively sped up because so much of my day to day work are the things you mentioned as being serialization points. The time I take to figure out what needs doing, what the best approach would be, making sure it was actually the right thing to have done in the first place once I'm done, all that stuff. I use AI assistance for those tasks too but it's not the same effect as when I just hand off the pure implementation phases. So it winds up being "faster" and you'll have to pry my AI assist tools out of my cold, dead fingers - but if I'm being honest with myself by *that* metric it's not a huge gain.
There is some truth to this, but in practice I'm finding that yes, removing the writing code bottleneck has improved throughput quite a bit.
My day (excluding the huge amounts of communication overhead) used to progress as a serial operation of: 1. Write some code for one thing, 2. Self review of that thing, 3. Review other peoples' work, 4. Respond to review comments, 5. Get things merged, 6. Back to 1.
Now I have more of a tendency to queue up work on a few things at once, and then the serial steps are the self reviews and reviews of other peoples' work, and some of the review commentary back and forth (though I can automate some of this in parallel as well).
The upshot is that I'm more working in batches now than in serial, which I really do find to be more efficient.
It's not that it has removed all the bottlenecks at all, but no longer being required to focus all my attention for periods of time on physically typing code has removed one important bottleneck, and has changed, and I would say, improved, my workflow significantly.
Yes, it's the "market" argument that I find compelling. That is, not jevons within firms, but rather across them.
Is it true that the evidence in tech so far is not encouraging? I was pretty worried about the job market a year or so ago, but it seems pretty good for experienced people at the moment, no? (I do have big concerns about the entry level pipeline though!)
reply