Building Software - More Like Asset Management Than Excel
I assumed building software would be like a complex, dynamic Excel spreadsheet. You build, you tweak, you refine, you finally get everything just right - then you reuse it over and over again forever. Turns out, that’s about as true as thinking a property is done once construction wraps up. Or Texas believing it’s an SEC powerhouse. Once you start building software, you are committed to being a software company. I know, you don’t believe me and I wouldn’t have either if I hadn’t experienced it firsthand. Even if you build software only intended to make you better at being a real estate company, you are signing up to run a software company. Here are a few things off the top of my head that you should think about before starting down the path. Maintenance - unlike Excel, software breaks constantly. I can’t stress this enough. Like a cranky teenager, its behavior is unexplainable. Sometimes it breaks because you added new code, other times it breaks because it just felt like it. Do any of your properties go a month without having something that needs repair? Neither does software. It is absolutely positively unequivocally not like Excel. It has emotional breakdowns. It needs affirmation. It wants participation trophies. It stresses over things it can’t control and what other software thinks about it. Unlike a teenager, it doesn’t grow out of it. In fact, instead of evolving into a well adjusted young adult, it degrades over time like a property. It requires constant attention. Imperfect - raise your hand if that custom built Salesforce build works exactly as everyone wants and never needs enhancements. Software is never fully dialed in - you will constantly want to make changes. And unlike Excel, those changes aren’t quick. Let’s say you want to change a formula. Imagine you are holding a whip and that request is you flicking your wrist. The Excel whip has very minor ripples, but the software whip has a wide range of downrange ripples. And it might break existing code or have other unintended consequences. Security - your properties need security, and so will your tech stack. If you’re like I was, your current systems largely rely on the security of the vendors you use (Google, Dropbox, etc). But once you start building your own stuff, you are in charge of securing it. Encryption. Permissions. Authorizations. Vulnerability patching. Have you budgeted for a CISO? If you’ve never heard of that role, it means you haven’t. Don’t worry, I didn’t either. It stands for Chief Information Security Officer and you can guess what they’re in charge of. And surprise surprise, they aren’t cheap. Product - I never heard of a Product Owner before building LoanBoss. They are the liaisons between business requirements (guys like us) and the software engineers. It’s an incredibly challenging and vital role. But I wasn’t going to go hire a couple of POs when I could just make some of my tech curious employees handle extra responsibilities. That distracted them from their primary role, and everyone suffered. Should an asset manager also pick up property management responsibilities? Data - our AWS bill is up 5x in the last two years as we’ve grown. I had no clue that was coming, would you? It’s like getting stuck with a shocking tax or insurance bill. And we have services on top of that that have also risen correspondingly (eg, Datadog). When we were wrapping up our sweet tool with all the public loans in the debt universe, our monthly bill surged temporarily 10x as we tried repeatedly to jam ingestions and calculations into the system. Those were fun bills. DevOps - you will need someone to oversee the stability of the technology, to respond when something goes bump in the night, when it crashes entirely, when it gets bogged down and becomes unusable, to deploy new code or fixes, etc. Don’t try to make your IT guy do this - they aren’t the same thing. I learned that the hard way. Like reminding UT fans they hadn’t played anyone good before last night, I’m not going to keep beating a dead horse. You get the idea. So just stick with Excel, right? Excel is awesome for lots of stuff, particularly if it requires customization. We still use Excel all the time and I am very skeptical of tech that promises to replace Excel. But we are all familiar with the limitations of Excel. Software is a great supplement to Excel. They are teammates, not competitors. If you want to custom build stuff for your own company, go for it. But go into it understanding that you are building an entirely new business. The only reason I stuck with it was because I was selling it to people like you - it is revenue generating. Had it been exclusively to make us more efficient, I would have given up and would have wasted a lot of money and time. Just like you need specialists for asset management - finance, mechanical, electrical, plumbing, landscape, security - you also need specialists for your software. Engineers who know the language you’re using, product managers to decide on priorities, QA to make sure things actually work. It’s a lot, and it never really ends. Building tech isn’t like getting Excel perfect and reusing it forever. It’s like property operations: it requires constant care, attention, and a team dedicated to keeping it running smoothly. The moment you stop putting in that effort, things start to fall apart. And unlike Excel or playing UGA, there’s no easy Ctrl+Z. (PS - don’t worry Longhorn fans, I know what it’s like to be overrated. Penn State has its comeuppance just around the corner. At least we aren’t Michigan…)
|