Friday, January 20, 2012
First Steps: A Meandering Walk Through Twenty Years of Software Testing
I have been thinking about this because, in a way, I officially entered full time employment in the tech industry on January 20th, 1992. It was on that day that I officially became employee number 876 at a company called Cisco Systems. I actually came into Cisco Systems entirely by accident 10 months earlier. At that time, Cisco Systems has about 300 people in their Menlo Park office setting, one that spanned three modest two story buildings between O'Brien and Adams Drive, across the street was Costaño Elementary School in East Palo Alto, and just up the road was open fields and the roadway leading to the Dumbarton Bridge.
I'm serious when I say that I was sent there by accident... well, sent there for another purpose. At the time, I was not looking to get a job in the tech industry. I was just looking for a job, any job, to help me keep from being a literally starving musician. My extent of being tech savvy in those days was that I used a Macintosh that I could find at a Kinko's somewhere in San Francisco (and yes, I learned the schedules of all of them) and would rent the systems by the hour, and would keep all of my stuff on three floppy disks that I kept in my bag. I'd edit my files, make my flyers, and keep up to date my simple database that consisted of a mailing list for sending band flyers (made in Dbase III, for anyone who can remember back that far ;) ) and likewise maintained on any PC that I could rent from a Kinko's as well.
I had never heard of the Internet, I didn't have email, I'd never touched a UNIX box... in short, I was probably the least qualified person to ever be sent to work at a tech company imaginable. For that matter, I wasn't sent there to be a tech guy at all. I was sent there because their engineering library was a complete shambles; all of their printed materials were in piles and boxes and no one could find anything. I was sent there to help with that because I told the temp agency two things. The first was that I'd spent the past three years working as a housekeeper. The second was that I had to work someplace where my having long hair wouldn't be an issue. For the record, and just for a little bit of fun, this was what I looked like for my night time job.
Now seriously, would you hire this guy ;)?
A project they thought was going to take an entire week, I was able to finish in two days. Note, this had less to do with it being terribly easy, but because I knew how to clean, and I knew how to organize stuff. They could have sent me home, but since they still had me for three days, they asked who could use some temp resources. The Release Engineering manager had a need for someone to help them with producing beta images for customers. Sounds technical, huh? well, not really. It required someone being willing to sit down and erase Electrically Erasable Programmable Read-Only Memory chips (EEPROMS). I did this by sitting next to a heavily shielded UV machine with a tray that I loaded up with EEPROMS that had been used previously, blasting them with UV light, and then loading them into a machine and checking that they were clean. After doing that, I would then sit in front of a DEC terminal that was connected to a Sun Server of some kind, and I would enter in a cryptic string of words and I would hit Enter. This cryptic string caused an image to be sent to the machine, and that image would be burned into the 8 EEPROMS I loaded up. If all went well and the EEPROMS reached the end of the process with all green lights, I could then eject the EEPROMS from the machine, load them into the small CGS router that I had sitting on the desk, power it up, and issue it five commands:
Show the version number
Show the configuration
Show the interfaces
Configure the console (and make a change)
Confirm that the change took place
If all this worked, I would then unplug these EEPROMS, put them in a static resistant foam, put them in a box and carry them to people in release engineering and they would do more stuff with these images.
At the end of the remaining three days, and the end of the week, the release engineering manager asked me if I'd be interested in doing what I was just doing for a little while longer. They were getting ready for a "big release", and would need to get a bunch of images into the hands of "beta customers", and it was a time consuming process. I said "sure", and with that, my one week "filing and cleaning" gig became one where I would be burning images into EEPROMs and making sure they were ready to be shipped to beta customers who would deploy them in their routers on their networks.
Thus, on March 8th, 1991, I officially started working as a temp for the release engineering team. In other words, March 8th, 1991, would be the day I would be able to say that I first became a software tester :).
I'll post tomorrow on what it was like working in that environment and my recollections of what software testing, to my eyes, was like in 1991.