Callum
Booth
Software Engineer
Home
Blog
Contact

Property search at Boomin

June 19th, 2023 9 min read

Where to start? I can't quite begin this story from the start of my tenure at Boomin, it begins a little before that, around 10 months earlier. Two weeks into starting a new job at a software consultancy and the client project I was hired to do was instead moving in-house. Well shit, I thought. The good news was that it would take a while for the in-house team to be spun up and knowledge transfer before the project closed, at least 6 months it was estimated, and 10 months in reality.

Unfortunately, the company didn't have any other projects using React, which at the time was my main engineering focus. So with plenty of time to search and an employer empathetic to the situation, I found LaunchB, or as it would later be known as Boomin.

A leap of faith

LaunchB was a bit, hush hush, the interview left a lot to be desired on explaining what the company was building but there were some upsides, funding was guaranteed until launch, it had a great tech stack, and a good number of the employees had worked with the founders before. It seemed exciting and, well, what's the worst that could happen? It turned out to be one of the best moves of my career, even if it did end far more prematurely than was deserved.

So on the 2nd of Jan, my I took my first step in the start-up life. It was fun, filled with good discussions and only a vague notion of where to start. "Well, we know we are going to need to X so let's investigate that", was said more times than we probably should have. I'd been given the go a head to dig into how we might build an app with React Native and a how we wanted to handle authentication on the frontend.

That was until we got the pitch from the founders, and shortly after I asked to be part of the team building search. Search was the high traffic, publicly available, core offering of Boomin. And if I'm honest it was the team that would allow me to shine, it would be front and centre of the Boomin users, and I say to people "look what I built" without the need for a contract or business account.

Something from nothing

So how to begin, how to build the ability to search for your next property within thousands, well hundreds of thousands of properties? In short, you built it bit by bit.

I'm not going to go into the technical nitty-gritty (I've saved that for its own write-up) but we start with a hodge podge of floating requirements and poor processes. This didn't last long though, our Head of Engineering, got us on track with "The Walking Skeleton" method.

The Walking Skeleton method focuses on the underlying structure. Get each piece of functionality (the bones), connected together (the joints) and moving forward (the walking). Once you have an end to end thin slice, you can add the designs on top (the meat).

So that's what we did. We got our elastic search server setup, setup data syncing with the team dealing with uploading and editing listings, ensured proper state management for filtering. This non-exhaustive list didn't "look" pretty from a design sense, but it worked, and proved out the concept. It allowed us to experiment and stay objective about how search could and should work.

That was life for the next ~15 months, building bones, speaking to my amazing colleagues to connect them together and then working with some of the best UX/UI designers I've ever worked with to get ready for launch.

Boom

After an almost false start, of launching on April 1st 2nd, Boomin boomed. There was no beta, just a "v1", which was quite possibly some of the most anxious I've been in a work capacity. I've never liked launching, it's and official step into the void, or over the cliff. It's the transition from abstract to real. But for a business, it's an inevitability.

Things turned normal, we all knew launch wasn't the finish line. We kept building, kept refining and importantly slowed down. Those who have done a product launch will know it can be hectic, frantic, and lots of other emotions all at once. Slowing down didn't mean stopping, it means becoming sustainable.

It's also a time to step back and realize your accomplishments. I can find that hard to do sometimes, and I should really do it more, but we built a fully functional and comparable competitor to the giant Rightmove. A company that had a 20-year head start, had a record-breaking amount of traffic before we had even launched. This is something I will always be proud of.

Time for a shake up

A few months past, things were stable, and the business was steadily moving forward. There was however a small elephant in the room, whilst small it's still an elephant nonetheless. We were web only, and a public promise of a native app had been made.

Knowing what and more importantly what not to build is a bit part of any business, start up or no. And the app was one of the things we opted not to build, at least not for launch. We had however kept a small amount of resources keeping it ticking over in the background. Our dedicated React Native engineer was slowly chipping away at the project, just not in the limelight.

Now we had launched, it was time to reprioritise and the app was way up on that list. I was asked to be part of the app team to help do again, what we had just done. Something from nothing.

This time though it wasn't a blank slate, as I mentioned the project had been ticking along, in its own bubble. Very quickly, it became obvious things were not all roses. The dreaded "85% done" was touted to stakeholders, however this bubble needed to be burst, we weren't 85% done, we were maybe 20% at best.

Transparency and accountability are a powerful tool to becoming trustworthy and respected. We told the hard truth to stakeholders that we were a lot further from our goal than they were previously told. We set up proper processes and utilities that allowed us to build for velocity. We put in place a proper CI pipeline, added solid components that reduced cognitive overload and tracked our progress clearly to build that trust up. Trust and respect for an autonomous team is crucial for its success.

Once again, we settled into a nice development cycle, build, share, refine, build, share, refine. For 9 months.

Boomed

Being on the inside and hearing the gossip go round the virtual office, so to speak, means seeing the writing on the wall before the official announcement comes. And app team had to deal with one of the first warning signs. After 9 months our project was scrapped, the team disbanded and reshuffled elsewhere in the company. There were other signs too in the coming weeks and, it wasn't long before an email on the eve of the long awaited company party, we were asked to join an all hands meeting at 9am the next morning, where we were told of the impending doom.

Just like Boomin's start up, its shut down was fast and rapid. The first round of redundancies left the company nearly 50% reduced in size. But with the same number of products to manage. At my request I was part of that first round, I had had enough, I lost trust in those making the decisions.

A few months later, the company officially went into administration. Fortunately my contract had ended but those who were still on gardening leave or full employment were left with anxiousness, and additional admin, as it was soon realised the last pension contributions had been taken from our paychecks but not deposited into our pension pots. A situation that was only resolved months later.

Retrospective

I still look back at my time at Boomin fondly. I worked with some amazing people, on some amazing products. The culture within engineering was fantastic. That wasn't to say everyone got a long or everyone agreed all the time. The company mission always rang true and quite honestly I still believe in the dream we were pitched. If it hadn't ended badly, I'd probably still be working for Boomin.

Doing too much too soon, relying on unrealistic targets, hell even just factors outside any prediction model, like a global pandemic are all elements of why I think Boomin failed. This isn't a postmortem though, and I'm not going to go into deep analysis over the how and why, but there are some lessons I learned from it.

It defined the culture I wanted to work for and the calibre of people I wanted to work with, and for. Joining LaunchB/Boomin was always a risk, a start-up is always a risk. But 2 years at a start-up vs 2 years at an established company are not the same. Ultimately, it's what you do in that time that counts.

And whilst I don't recommend it, in the right circumstances being made redundant can be quite lucrative. Seeing the opportunities in life is half is the first step to taking advantage of them. Even if they don't always work out, failure is just another step to success. Boomin failed yes, but it wasn't a waste of time or effort.