In 2010 I spent 8 months in the worst job I ever had. For the last 5 or so of those months I was the company’s first an only Scrum Master. The individuals I worked with said that it was the best experience of their careers. This is a story of those 5 months.
I was their first iOS developer. For the first three months my managers told me there wasn’t enough work. Instead I worked on Wordpress sites. When the day came to start iOS work my manager told me that the first mobile project is behind, and client was pissed.
Turns out, the design group and leaders were already well into the project and had nothing to show for it. Meanwhile the client was receiving invoices for work but there were no signs of a mobile app in sight. I felt I was about to tell everyone that they had built their house on a volcano that was about to erupt.
This company had no previous experience doing any mobile work at all. They did their work until now assuming it would be like any other Wordpress site. This is like finding out you are responsible for building a custom built home when all you know are pop-up tents.
I began to educate everyone about the world of mobile development. I could taste their despair. They had no idea what they were going to do about this project, or the next three that were being signed. Thats right, these same mistakes were already in the wild on more of these projects.
I proposed we move to running these mobile projects using Scrum instead. There was cautious acceptance. Desperation is funny like that.
I formed the team of a developer (Myself), the UX person, a designer, and project manager. The project manager, the poor creature, felt lost without their ticketing tools. I gave them a more important job, talking to the client. They would build a relationship so strong with them that they are the client when they speak. No PM I worked with during my time had any interest in this, and fell back to invoicing and organizing.
Lets pause to explain a little bit about the process before we started using Scrum. A client would come in with an idea for a website or mobile app. Our sales and managers would then write a vague contract with a hard estimate. Then the project manager entered all those estimates into the project management tool. Now, we no longer had estimates but obligations. The clients and our contracts were often specific about not exceeding our quotes. Then the project manager gave access to the project to the developers. Developers would load the custom built stopwatch, and select the relevant task. Then the stopwatch would tell you how much time you’ve spent on that task compared to how much you have. Going over resulted in discipline. Not billing enough resulted in discipline. As a side note, as an entry level developer, I had a weekly quota of 33 billable hours. I was offered a promotion which would demanded I bill 37 hours. I refused the promotion.
Anyway, as we organized our Scrum team, we needed to build our backlog with user stories. This didn’t fit into our neat little PM tooling and stopwatch world. So took a big bet and played one of the last hands I had. I said we were going to bill on any ticket that was convenient, and invoice our client every iteration. They could walk away after any iteration with the work they had, or agree to fund us for one more iteration. Our billing would appear hourly, but we would commit to one iteration at a time. This confused the hell out of everyone, but we could work on stories without the stopwatch.
Our first review came, and pissed off the client. They wanted to know why the app wasn’t finished and why it was missing features. We spent that review explaining how we would be working going forward. The second review they saw progress, and the conversation changed to was the next best thing to build. I began releasing the application every single day to our team and to the client. It was the team’s first mobile project so I released to them so they would have feedback on their work. I released to the client because I would rather they keep talking with us than be silent.
My managers walked over to my desk after around a month. They told me to stop releasing the application. My managers considered it unprofessional to release an incomplete or broken application. I disagreed, but told them I would comply. This also pissed off the clients.
I told them that my managers made this decision, and the easiest way to get this changed would be to talk to them. Within a few days my managers told me to start releasing again. Funny how that worked.
This first project was the beginning of a trend for the next few months. Every new mobile project we had a new designer. We would start from scratch with them. We taught them our process and to work alongside of us instead of ahead. They all said that they enjoyed it in the end. We released 6 mobile applications during these 5 months.
Before I left, the teams I worked with told me that the projects we had together were the best in their career. They wished they could all be like that.
I quit after those 5 months. We had managed to save the new mobile development side of the business. We transformed client relationships. Morale was at an all time high. I quit after the managers decided that these 5 projects were a one-off, and that Scrum could not work for the rest of the business.