Agile development not

About two years ago, while still working on a cubicle for some crappy very big company, i was asked to implement a windows file system filter driver, the project leader, as usual, knew zero about windows drivers or what is required to build them.

So i was asked to take care of everything, from gathering the requirements, creating the work environment, documenting, downloading SDKs, and finally, implementing the driver.

The time allocated for all these tasks, including the driver design, development, testing and bug fixing?

Two weeks.

It appears someone up there in management who liked to read blogs and wikipedia entries as if they were highly technical documents, actually believed Agile development meant 15 days deliveries,  not of product features or fixes, but of complete products, fully tested software releases, all features included and without any bugs left, starting on day zero with no code at all, then 15 days later, a full solution was to be delivered, no bugs, one week development, one week testing, no more, second week Friday didn’t count, as we had a demo with the clients early in the morning.

So, after barely getting some sleep for two weeks, i finally managed to include most of the required features, although the code was not really release quality, it actually worked, and finally, with a lot of pressure, i managed to release it after three  weeks.

Two weeks later, when some obscure bug came up and XP machines were crashing randomly, he asked what was up, how could this be if we had time for testing and bug fixing? when confronted with the truth that a Windows driver can’t and won’t be implemented in two weeks even if you have 20 developers, and when asked for more time for debugging and testing, his answer was a simple one, “this development ended two weeks ago, we can’t use more time for that task”

A few more weeks went by, i was asked to continue working on other projects and features, and at the same time, to work on the driver on extra time or free time, or at home, when things didn’t improve and the crashes were still happening, the big boss canceled the driver project (actually the entire main project was canned, but that’s a very big and different story for a future post), we couldn’t deliver the promised results, of course it was not to blame on bad Agile development understanding or extremely delusional leaders, but in the developers and their lack of skills, we had a good laugh at all these ‘facts’ as we got the honor of hearing them directly from the big boss.

Priceless