Talking through a locked door

A complex diagram of a schematic of a locked door.

Back in the early 2010s when I was an eager young(er) backend developer I had just finished a stint of employment at a big internet service provider. Abandoning the security of a regular salary I set out on my own to return to the more familiar route of self employment. However, the first contract is one that I'll never forget. As a warning, because the actual project was confidential I've altered a few little details here and there - but the gist of it is about right.

I arrived at the client's office which was situated in lush surroundings in an affluent area of countryside in the UK. Greeted by the delightful receptionist I was quickly ushered into the back rooms by the development manager. Immediately, he passed over the confidentiality agreement which I promptly signed and then we passed into a small conference room. The door had a notice on the outside that read: "Do not enter unless you have explicit permission". The door closed behind us.

Do not enter unless you have explicit permission

Inside the room was an eclectic mix of characters. Each one had a clearly defined role and place in the project. We had the front end developers, of which there were around 4 as I remember. The designers, the UX guru (which was a new concept at the time, at least for this business) and a little old me - the PHP and MYSQL nerd who makes things go.

I remember lamenting at the time that the front end devs could create a button in five minutes that would be the perfect shade of blue and receive applauses and accolades - yet I could spend three days optimizing a SQL query so the website didn't fall on its knees and just receive a "that's nice dear". Oh how things have changed!

We worked diligently through many weeks of development constructing two websites: A launch site and a pre-launch promotion site. We worked like a conveyor belt. UX passed over to design, design passed to the front end who then finally threw it over the fence to me to make it work in Drupal. All in this locked sweaty box, the days were long and the memes and laughs were strong. There was something going about at the time regarding chimpanzees riding on a segway.

We worked like a conveyor belt

The vast majority of our time was spent on making the pre-launch site. This site was an unholy arrangement of whizzing animations positioned all over the page in seemingly random places in little clouds that displayed large amounts of text to the user. To demonstrate the animations effectively, the designer actually printed them off and cut out the clouds and moved them about - like a children's popup book!

The deadline was approaching and the conveyor belt broke down. The site had to be translated into a dozen languages - some of which (and I'm looking at you German!) didn't fit into the little pretty clouds that they were designated. The animations broke too. The silos that were created initially each with their own labels of Design, Front End Development, UX and Back End suddenly vanished. We were all in the trenches together - it was crunch time!

This door unlocked. UX started helping with design, and front end and backend started sharing code and adapting ideas so they better fit in the end ecosystem. If only we did this from the start. After a few 4am finishes and some very tired drives home we were finally ready to submit the finished product to the client. The tension was lifted and our intrepid team all breathed a collective sigh of relief.

The door unlocked

I stayed on whilst most of the other contractors thinned out and left for other endeavors. A few days later we were all summoned back into our room - most of the old team was there. The manager uttered some words that to this day I can't forget my disbelief. It turned out that our agency was in fact not supposed to do any of the build work. There were some vague contractual misconceptions and breakdowns in communication between the client and the agency. We were only meant to deliver the designs.

All the effort, all the long nights, all the chimpanzees on segways were for naught. Our work would never see the light of day. The gasps in the room were audible and it seemed like the temperature was reduced by a few degrees.

We were never supposed to build the site

Reflecting on this story I see two major breakdowns in communication. The first was really the siloed nature of the initial development. There were so many gatekeepers, people speaking different technical languages and a real display of ownership of turf which led to the crunch time at the end.

The second was the lack of communication and involvement of the client with the work. It was "outsourced". It was only till right at the end when the final deliverable was coming in that the problem was noticed (as incredulous that may sound - I'm sure there were some amazingly interesting legal technicalities in the contracts that created the confusion but that's not my silo!).

In our field everyone has roles to play and areas to focus on but what this series of events has taught me is that if you break out of your comfort zone, perhaps sit down with the designer (if you're a dev) to understand the why and the how on the tools that they use and vice versa it can help create a sense of empathy in the team to which at the end facilitates ownership and comradery.

Modern tooling probably would have helped us with this. Our designs were static photoshop files printed out onto massive boards. It was in the time before display: flex and positioning was difficult. Drupal wasn't the easiest for folks to use back then too.

Would access to modern tooling that we have now such as Storybook and Zeroheight stopped the crunch from happening? Possibly. Could AI help bridge the gap and provide a translation layer between silos? Maybe. But I think what could have helped more is if the doors were never locked in the first place. Keep that door open.

An open door with a beagle in it.