For those who have known me long enough and heard me saying, “I want to do one more startup before I retire,” quite often, the title of this post would be at least unexpected. And I won’t swear by it. My life had taken so many unpredictable twists that the only thing I learned very well was “never say never.”
However, recently, I was saying something different: “I hope to stay with this company until I retire.” And once again, I won’t swear by it because life is unpredictable, but I started thinking about what changed my mind so drastically.
It is not only that I enjoy working with everybody in this company (I was fortunate to have wonderful co-workers everywhere I worked), but most of the problems I have to solve here.
A startup’s appeal is that you come to uncharted territory and build everything from scratch. There is nobody to blame for some suboptimal decisions made in the past. You take s responsibility for making these core decisions because you believe your approach is the right one. And if it does not work as expected, you are the first person to notice and the first person to take responsibility for a wrong decision. When you see the revenue growth, you can link it directly with what you’ve done, and if you don’t, you know who to blame!
However, there is a twist. As I’ve said before, I do not enjoy consulting because you never know “what happens next.” You presented a customer with your suggestions, and you do not even know what happened after, whether your suggestions helped in the long run. Moreover, sometimes you do not even know whether they were implemented!
Surprisingly, working in a startup, you can experience something similar. Except for some rare cases, you start with small data volumes, a small client base, and a not-so-busy website. You can implement technology solutions that would be pretty elegant and work perfectly for a while. They may still work perfectly when you have a hundred times larger database and a hundred times more customers. And you are unlikely to reach the volumes of, say, the Bank of America by the time your startup cash out, or you become bored, or something less optimistic happens.
I found immense satisfaction in solving problems of a different magnitude than before. For example, I always tried to productionize and automate database-related tasks. Still, the need for such automation is apparent when you have hundreds of databases to supervise. You need to secure some policies programmatically rather than just tell people, “don’t do that!”
Or take my recent bitemporal partitioning project. The bitemporal model performs so well, even on very large data volumes, that I never had a reason even to start thinking about how partitioning should look like. And just three months into working in my new company, I have this new addition to pg_bitemporal.
The changes might not be as rapid as in the startup environment, but I can still see the impact of my work. And that’s what I like most.