That which does not kill us....
It's been a full year since the most difficult project I have ever undertaken went live, albeit without a great deal of it's present functionality. Project X as we called it at the time was, at that time, the latest of impossible missions we had undertaken. It was however exciting and when we undertook the effort a mere 60 days prior, we felt we could make the targets. The client seemed fully aware that they were asking for something that would have to evolve into their vision and that the "live" date would be a mere shadow of what was come. This time 1 year ago we were on day 60 of 18 hour days frantically coding to a nebulous specification, fraught with meetings, and other pace killing interruptions. The system was largely incomplete, new versions were being deployed into sandbox almost hourly. The client was nervously excited, we were completely exhausted. I personally had not been home for 4 weeks at that time. Then the switch was thrown...
We went live with version 1.0. Surprisingly enough it was not a complete disaster. A testament to the small but dedicated team we had on the project. The problems that would tax my very desire to continue to live would come later. Simple facts are that we should never have taken the thing with the constraints the project was running under. It needed a full year to be coded right. As with so many projects like this the client became angrier as the pace of new functionality slowed. ( more difficult to perform work on your car while it's speeding down the highway). Design shortcomings not surprisingly began to rear their ugly heads. The days continued to drag on with some of my own personal weekly times logged reached the 90+ hour level over a 7 day span. At one stretch I was not even home once over a 8 week span. The hotel I stayed at thought of me a Howard Hughes albeit a little less a wacko and with no money. That's when things really turned sour. The client called in the parent of one of the partners to take an assessment of what was wrong. The resulting report was, as one might expect, fairly critical of the development team and methodologies employed. The resulting effects on the pace of work was profound.
We got involved in a large number of additional hands being thrown at the project. This being a constant in these sorts of things, were management feels compelled to add bodies to a late project thinking it to be the way to speed things up. This of course rarely works as intended and Project X was no different. The party brought in to assess the situation felt that the only way to fix the issue would be to start anew on version 2 with version 1 limping along in a state of moribund undead stasis. ( maintained by us but not advanced by us ). While version 2 was built correctly by others. All the while the threat of litigation, extremely nasty and contentious meetings continued unabated. Good people who found themselves in situations were there was no winning up and left for their own sanity. I felt envious of them. They had achieved escape velocity and left the madness behind them. I was not so lucky. Pressures within and without kept me at it, why I cannot really say. Perhaps it was cowardice, I would not have been able to find work that paid what I needed, my wife and I would have lost some of the things we had. Perhaps it was stubbornness, most would agree that I have a thick skull about things I believe in. Loyalty perhaps played a part. I certainly would not have wanted to leave my co-workers and my boss in the lurch.
As they say it's always darkest before the dawn, Project X was no different. Slowly things changed a little. A small amount of the disfunction was removed. One of the things that came out of maelstrom of the projects darkest hour was a better process for documenting what needed to be done. Even though a well written business process specification though proved to be ineffectual at times. ( I remember coding up exactly what was written only to have it flatly rejected by the client as improper and incorrect ). Slowly this documentation proved its worth and the client became softer, perhaps they came to realize that the system was becoming what they wanted all along. The project is by no means complete even 1 year later but Project X was still running along. Multiple new releases adding the kind of functionality envisioned at the outset. Truth be told I have since focused my attentions on a similar effort for another client. Over the past 3 months or so even though I still work on Project X from time to time.
The scars of that effort still fresh in my mind have lead to my altering the new projects to some extent, both in the way they are architected, and specified. My own code has changed to reflect some of the ideals that were written up in the assessment report on Project X. Even the stubborn occasionally learn a thing or two. The new project I am on is largely a solo effort from a coding standpoint, I still find myself putting in 80 hour weeks but somehow this is easier. Perhaps it's the client being a little easier to work with. Perhaps it's the lessons learned on that year long death march that left me questioning my resolve. I have been solo largely here in this new effort so that's definitely a contributor.
As we are on the 1 year anniversary of the projects release into the wild. I am struck by one overall sentiment....
That which does not kill us, makes us stronger.
So when I raise my beer to toast the participants at our little party next week I will remember that sentiment, like high school however, I will never want to re-live it....
- Posted using BlogPress from my iPad
Location:S US Highway 301,Tampa,United States
1 Comments:
And that which does kill... well, will! Heh, nice to hear you survived. Enjoy your new milestone and good luck with your new client.
8:51 PM
Post a Comment
<< Home