Build, connect and deliver

As you know with the end of last year I’ve left my previous job and hoofed to a better place. I’ve left a business I was building for over one and a half year and I’ve done it with lots of energy and dedication to understand the holiday rental market, innovate and come up with new ways of doing things to be meaningful. I’ve learned a lot, and done a lot of things right.

The thing I couldn’t do so well was the last project of a booking widget. It took me two months to come up with a clear retrospect. In retrospect the failure was due to a very wrong system of hiring. We’ve hired many people who joined us with no previous work experience or no experience working as employees and in both cases – people with very little experience at all.

As a result at the previous place a lot of work went on in a very unstructured way and delivery happening out of schedule, at random. There was a lot of resistance in the team in regards to what we build and some resistance of the management in regards to how we build it. To be fair it was lack of conviction, pressure, ambition more than lack of good will methinks.

Some of my latest project proposals were ambitious and hard to win people’s conviction over some winter blues: learning new computer games, learning playing instruments, or even cooking lessons… It was also somewhat hard to convince management to innovate within business domain and to innovate by designing interactions with our customers that weren’t “exactly as before”.

Therefore over time project I was doing got more and more watered down and the implementation was progressing slower with each week towards Christmas. In retrospect what was missing was precisely that: the trust of the management that we should move forward boldly and trust of the team on the ground that we’re going in the right direction and the local team to remain focus and engaged.

This was down to some political element which crept in as other senior developer admitted in our final talk that the project was deliberately questioned in front of both internal team and the management. Allegedly, the company always had a plan to concentrate all development decision making in hands of one person. Never heard about such plan right up to our final conversation.

According to his own words there was a plan to have one person in development making all decisions right from the beginning and it was described to me as “unfair to both of us”. Other senior wanted that to be fixed and in his own words it was just a question of time who will jump ahead first to discredit the efforts of the other. I’m not a politician so I never cared about any of that.

Therefore I had two choices remained: either complete the project against the will of many or carry on watering it down until it dissolves completely. Given that others concentrated on political agendas any of my efforts against project obstacles were just pointless. Too many people expected too many (too) different things. Too few people were actually focused on the project.

Here’s an important point. Because I truly believed in what we were doing I quickly realised that I was sorry more about the product being stopped literally one week before the launch than I was sorry about having to search for a new job. The project was based on a great idea I truly believed in and I wanted to see it completed and grow into innovative and profitable as hell.

The interesting part is that I care about the product more than anyone else, so didn’t stop there. There’s no such thing as a failed project on my agenda. Sure I’ve failed some in the past but I also learned how take it personally and therefore make sure non-delivery doesn’t happen until I say so. I hope this post will explain my motivations fully.

Therefore with the beginning of this year I took my ideas and the very project I was building somewhere else. I’ve put some energy into convincing successful e-commerce company in the region that the project made sense and that it should have been built with much larger picture in mind right from the beginning.

So I’ve found another company to build the product for. The new owners of the project had all the resources, experience and most of all — all the attention and dedication to truly believe in the project, get engaged and apply the right pressure to back me up with making sure it gets delivered.

You can tell because we’ve looked at the project, redefined the scope and made it 10 more ambitious and awesome than it stood previously. We’ve decided to launch by much more dedicated team: representing equally high work ethics, programming skills, applying much better structure and motivation in order to come up great products that really shine within several weeks.

We have made a some critical assumptions upfront. Instead of hiring a team of mostly junior staffers we assembled team of really good people and made sure they had the right approach to how we build products, not just do coding. Instead of hiring people only interested in job titles and motivated only by money we’ve hired people motivated by hunger for innovation and creativity.

If you’re seeing this post then it means that as a result of higher pressure, better motivation and foremost (and this should have been written in uppercase) BETTER team we’ve built the project as I originally envisaged it to work in the first place with most of innovative ideas, really progressive design… and we’re now shipping the first instances to hands of customers.

If my prognosis is right at the time this post goes live, we’re looking at 3 months since I’ve left the previous team and the previous version of this project. Assuming that the problems were misdiagnosed back then – the previous the company by now has still not released the previous, much limited version of this project or anything else instead to this effect meaning that:

a) The management of my previous employer was mislead. At new place we’ve delivered this project sooner by building it from the ground up against the previous team just finishing it off, having only one week of development left. Mind-boggling speed means we’ve started 2 months of development race and arrived at finish line sooner the other team, which had only days to the finish line…

b) Changing the direction for this project in the previous place hasn’t helped its delivery, clearly. Last year we’ve been 1 week from go live, however I can assume that new development management would have ordered change of priorities, changes in the team and something I can only guess from past mistakes: a complete rewrite (in which case there were no lessons learned here).

c) The speed of delivery of this project by my new team of just 3 at the new place against a cost base at the previous place probably tripling by now, with absolutely no visible growth in business model (innovation) should work as an eye opener… It’s also too late for the previous place as by now all the decision have been handed over to politicians and this cannot be undone.

Interesting comparison is that my new team is literally just 3 people and we’ve done not much overtime at the new place to deliver the project against… several people at the previous place not being able to change the business as rapidly this year with this or ANY other type of project of such scale. Development is not just software development, it should be business development.

At the previous place this is wasn’t the mentality and it would never be. After just two months at the new place I was able to make decisions both: in regards to project direction as well as resources employed to get it done properly. We would never be able to go that far and quickly without literally firing half of team at the previous place. It would have never happened.

One more difference. I would have described the new set up as a innovation powerhouse for more experienced developers whereas the previous place still works more like nursery for more junior developers, probably more than ever. We’ve LEARNED a lot this year but I can see clearly that we’re spending now less that 10% of time on actual LEARNING compared to the previous team.

The moral of this story should not be forgotten. I will probably repeat it time and again, as now having tangible results in one hand and a lack of results in the other I can compare. I’ve been at both sides of different ways of building products and I can pinpoint the success and the failure down to: choice of people. People whose ethics I can see and recognise much more clearly.

The story is also about NOT GIVING UP, sticking to your guns, believing in your skills and ideas, however foremost it is a story about turning FAILURES into SUCCESSES. It’s also a great lesson on building products in general and hiring people with right motivations to build right things. Many details however will emerge only in my subsequent posts, as I can’t go forever here…

The moral is that failed ideas in hands of wrong people fail. Great projects transcend obstacles, companies, geography, teams, technologies. Failure of a well understood, good product executed the right way only happens in a context of a failed environment. Either you can’t deliver the thing or your environment is wrong to get it delivered. Clearly there’s only one way to check this out.

On a final note:
I would be foolish not to admit that there were some personal faults on myself in this story. These are more personal qualities that play a large role in this story. As we’ve started with the previous project only two months into 2012 I got seriously impatient with relative lack of progress during remaining months of the year. I’ve seen lots of project, hundreds of tasks getting completed but I honestly didn’t think we’re changing the business at all, and also I didn’t think we’ve built a product that was impressive enough. Raft of customer complaints posted mid year as a result of ill conceived integration projects led me to believe that also the quality wasn’t good enough, something that put me ad odds with other senior developers I previously believed in deeply. As a result I got really impatient with many people within the company. Eventually I got tired with lack of progress and subsequent excuses. I was very clear and honest with the team throughout my frustration, as I always am. To me work is very much personal and I’m very clear about my personal aims. I wasn’t making the change of a comfy job in the UK just to sit on hands with other junior developers throughout a day. I never wanted to land in place where people only waiting for the next weekend, the next cheque to come up or the the next pay raise, something that is crystal clear to me as I was working with many, many other teams at the same time, previously and subsequently. I felt that I’m wasting time and against perceptions of almost every other person on the team I’ve felt we’re not quick enough and that we’ve done relatively very little to collect our salaries. This was personal and very clear to me but within team this self criticism was interpreted as egoistic and… sure it was like that, exactly! I could not sell to the team that we should be doing more and pretending less, in retrospect I was guilty of not pressing for a change enough, trying to resolve it internally without involving senior managers in the UK into what was going on and what change was required. As a result there was a lot of pressure and tension internally. Juniors used the tension as an excuse for their lack of effort by doing exactly the opposite of what they were asked to do. Seniors used the tension to change something they didn’t see working right from the day one, pursuing ever more control, ever more junior hires and ever more inflation of office costs. Some other people who were just stupid to get caught in the middle of the game tried to help one side or another either siding with me or against me by either working with on other projects instead after hours or to attack me personally at their leisure time (in one case even attacking my assets – I retain proves some tried to hack my servers) or trying to spread rumors about my personal life… Only in retrospect I see people who still side with me and carry on working with me on side projects, even during their office hours at the previous place… or still getting involved into rumours, misinformation and a very childish and pathetic attitude. I’m sure it will go on for years for both my benefit and my loss depending on a case. In one case or another it all only proves the point that the whole story is about people. People with either better attitudes than the previous company requires or other way round: terrible attitudes that the previous company still is yet to address. Either way the misfitted hires something that was as mistake also on my part. Some of the folks should have been hired in my other companies right from the beginning, some of the others should have never been hired at the previous place…. in fact I should have made those choices right from the beginning instead of realising it afterwards.