It’s 2am my fiance is asleep next to me and I am still working. My cat a sweet boy who doesn’t quite know how large he is named Ollie takes up the space where I want to stretch my legs. I can’t disturb either of them. I sigh, there is more work to do, I smile, I see how peaceful they are, I look up at the ceiling wanting to see through the layers of concrete and floors in my building and see the stars, I close my eyes take a breath, get back to work. I note the time and see how far away I am from going to bed, probably another hour. I am building my software, and software for a startup I am doing fractional CTO work and remember I have some other light contracting work to do. I remember my full time job and take note of what I have to do tomorrow. I breathe, finish this task and onto the next one. I start my release pipeline I need to test, I wait.
This has been my life for the past few months, I wish that I had my product finished, it’s been so close for too long but the difference between “it works on my machine” and “it works for everyone” is something I know the difference between too well. I look back, my product is technical but needs to be easy to install, easy to get setup. I’ve already done the backend work but here I am building “just another piece of software”, the acronym eludes me. It was when I was middle school or maybe my first year in highschool, I was with my father at a dinner, wearing a blazer. Probably middle school, we were at this social event and I was talking to some older gentleman who comes in and “optimizes businesses”, no idea why he was educating me, a 14 year old about this, I’ve held onto what he said. Don’t build “Just another piece of software”. It reminds me of the term I see on the Sports Illustrated site when I scroll through the comments section about off season NFL signings, JAG “Just another guy”, I am not trying to build a JAS, I am trying to build my business. The release pipeline moves to the next step.
I hear the deep breaths from my fiance, she’s so peaceful. I hear my cat snoring, less peaceful but very cute. I make sure my monitor’s brightness is low. I kick off some more dry runs of data pipelines I built and validators, I change terminal windows, those will take a while to complete. Business, not something people talk about building. People build startups, being a software engineer this is the only term you hear, build a startup, get the VC money get rich right? I’ve been there, I’ve been one of the hires that comes from VC money. They give you a bunch of money and tell you to hire out as much as you can. Conversations with founders I’ve had, first they ask “why aren’t you spending all of this money we just gave you”, becomes “you’re spending too much money make cuts”. Software becomes construction, you hire builders, you make the product, you have sales cycles, you have too many builders, you fire them. You hire maintainers, a lot less of them, you have the foundations, walls, windows, doors and roof. You just need trim now or furniture, you don’t need builders anymore. I’ve been a builder, I still am. I see some more green check marks as the release pipeline continues.
It finishes, new release. I test the auto update functionality, the one I was trying to ensure worked before open sourcing this project. This will have been my third or fourth release today to try and test it, to get it working. I open it and nothing… crap, I slowly go through the motions to check a few things, my API, the release version, any of the other things that have failed. It appears, turns out patience is a virtue and TTL (time to live) exists. I click the button and prepare myself for another bug, edge case or tweak I need to make, another pipeline run I have to wait for. I see the spinning icon and the pop up. The software closes, and re-opens, great this is further than I have gotten before. I see the updated version number and the small fixes I did. It works. I close the application, I go to Github and make the repository public. I update the blog post and tell AI to copy over what I finally got working in this application in our other one, my product, to note the steps I need to take to get it running over there. It kicks off while I re-review the article I wrote, it’s not quite up to my standards but it’s late. Another thing we can cross off the list and hopefully no more side quests. I stare at the stars though my ceiling, we’re close. I note the time, it’s 2:45am, the cat feeder goes off at 5am. I don’t like when I am not asleep 3 hours before it goes off, an odd thing to compare what time I am going to sleep against but 2 hours before your cat has breakfast, it’s hard to feel good about.
The pipeline is green, the release worked. It’s 3am and my fiance is asleep next to me, I smile about how lucky I am. I fall asleep, my house has another wall built and the job site is clean.