Gregory W. Smith II

"Go tell the Spartans, thou who passest by,
That here, obedient to their laws, we lie."
Epitaph of Simonides

Computer Science

Computers have always been a passion and fascination for me. Ever since I was about eleven years old they have captured my imagination. There is something about them that stirs my intellect and creativity. Based on very simple principles, at its heart they are just calculators, but their potential seem almost limitless.

I remember when I was twelve years old, I would wait for my mother to get off of work from the department store in the mall. There was a Radio Shack there and I became friends with a couple of the salesmen. The had a number of TRS-80 Color computers set up and along with the manuals for programming them. I would spend a couple of hours each day there pecking at the keyboard and seeing what I could get them to do.

I went from printing my name over and over across the screen to making neat designs in vivid color on the screen. I fondly recall one of the salesmen telling a customer that "if this kid could learn how to program one of these things, you could too."

In 1982, I was fifteen and moved up to Colorado where my Father had an Apple IIe. I spent the next few years putting a lot of my time (between playing games, of course) into programming that computer. I recall taking Analytic Geometry in High School and taking what I learned and writing programs that generated "Spirograph" like images on the screen.

I assisted my teachers in the computer lab where I was the "go to" guy when any of the student's floppy disks failed. I had studied the underlying structure of storage system and using a program called a "sector editor" was often able to recover most of their missing data.

During my last year in High School I got my hands on an Amiga 1000, a simply amazing graphics powerhouse for the time and I couldn't get enough of it. I learned the Modula-2 programming language and read the "Computer Recreations" column in Scientific American and wrote a number of programs for generating  Julia and Mandelbrot sets, artificial "life" simulations, as well as trying my hand at ray-tracing.

After graduating High School and once I got out of the Army, I roomed with my good friend Magnus Hargis. We spent uncounted nights and hours, between working our jobs at McDonald's, programming this IBM PC that we had. We were used to programming the old standard of Turbo Pascal, which was okay, but with the advent of Turbo C we really had some power at our disposal. I very much enjoyed the structure of the language and its power to manipulate memory at a very low level; the kind things that were basically forbidden in Pascal.

We had a lot of fun writing a world conquest game we called "Oblivion," and while it never saw the light of day beyond the two of us, we really enjoyed the process of writing and refining it more than anything else.

For a number of years after that I casually programmed and tinkered with computers as a hobby and eventually learned my first object-oriented programming language: C++.

In 1997, my friend Magnus called me up and asked me to come work on a software testing project he was leading in which they unit testing embedded C++ for a medical device. It was my first professional job where I got to use my  software development skills: and I loved it! The project was extremely successful and we were able to develop a system that could unit test the two dozen or so modules in just a few hours.

I finally resigned myself to the fact that I needed to have a formal college education in order to have a viable career in the field, so I went to school to get my Associates of Science (which I fondly refer to as "Certificate of Trainability".) During this time, I took a full load of classes in the evening and online while I worked for EDS at their datacenter in Louisville.

The Louisville mainframe floor had about 500,000 tapes, both cartridge and reel tapes, and before six months time I was the overnight floor lead where I supervised a team of eight people and was responsible for initializing blank tapes, finding lost tapes and locating archived tapes at the offsite backup facility. All the while I attended school full time and added another child to my new family, and I also managed to learn HTML and JavaScript in my free time.

Once I completed my degree, I was hired as a software developer where I helped create desktop applications using MFC C++. The applications used highly customized user interfaces and there was a lot of emphasis on a particular look and feel where branding was extremely important. While this kind of work was challenging, I found it to be very gratifying and I enjoyed it very much.

Before my time was done there I was promoted to Senior Software Engineer and was doing very well. Unfortunately, IHS swooped in a bought the operation and within a few months shut down the Boulder office. Not realizing that the internet bubble was soon to burst and not wanting to take a position that would have me commuting forty miles a day from the home that I just bought, I declined the position they offered me in the Denver Tech Center.

I found a well paying and interesting position as a software tester for RSI in Boulder. Where I learned the IDL programming language in a single weekend. When I realized that the project I was testing was on a "death march" and my manager asked me to work the last two weeks that December, I landed a new job as a software developer within a few days.

I spent the next six months working on a myriad of diverse and  interesting projects for Rick Raddatz at Instant Audio where I really honed my C# and SQL Server skills. I wrote internet spiders, redesigned complete web page front ends and even modified some of the Flash controls used on the site.

Rick really drove me hard. I didn't like it very much at the time, but looking back I never cranked out so much ASP code in my life and I certainly was never bored. I remember an ASP application we worked on together and completed in a single weekend. Unfortunately, the company hit some bumps in the road financially and I was laid off and thus lost my second job in six months.

It was at this time I started contracting and eventually partnered with Magnus to form Morphine Software, Inc. (Taking the pain out of software development.) At first we were going to specialize in medical software development, but it has turned out to be a general software contracting entity. I have been signing my own paychecks since 2004 and that is a good feeling.

Morphine has has many, many different clients over the years and the projects have run the gambit from embedded systems to desktop applications and web applications. We generally use Microsoft solutions, but we have also done some work on Linux systems.

One of my favorite applications was a desktop program that allows the technicians at NASA JPL to examine and explore the data collected from the space shuttle. It was heavily graphics intensive and was implemented in C# .NET 2.0 and GDI+. We got it done in about a month and it was a thing of beauty.

In January of 2008 a dream opportunity came my way and I am now proud to say that I work for one of the most amazing computer companies that ever existed: Microsoft. I am a Software Development Engineer in Test (SDET) for the Expression Web team and in just the first four months, I have pushed myself and learned so much. I have applied many of my skills in object oriented design and implementation in order to improve the testing framework that we have in place.

Additionally, I have been given the task of managing the new test lab and test automation pipeline for the test team. This will be a significant challenge moving forward as more testers and more test lab machines come online. However, I really enjoy these kinds of technical challenges.

Finally I would like to take a moment and thank everyone at Microsoft who has given me this new opportunity. John Dixon has been a great career mentor in a short period of time, he's a seasoned pro that I'm sure I will continue to learn from for years to come. Matt Hall and Amol Kher have been very patient and supportive of me while I learn the "ropes" of our testing framework, and are amazingly smart guys that I feel privileged to be able to work with. Soban Hameed who has been great to work with and has allowed me to grow as a mentor, he's been very patient with me as well.

Tyler Simpson and Eric Saltwell have been very supportive and patient with me as they have managed so much of the team and been so patient as I have been learning as I have come on board. Michael Fanning has already taught me a lot in a short period of time and I appreciate the effort he has made to make me feel like I am one of the development team.

The entire Expression Web team has been great to work with and I have really enjoyed the time I have already put in with them. I look forward to working with everyone for a long time to come and over many successful releases.

These days I enjoy keeping up on the cutting edge of the Microsoft tools and technologies. I haven't given up on my MSTS Certification for ASP.NET 2.0 but I have been so busy with my new duties at Microsoft. I have also started to look at the new F# programming language and it seems quite fascinating.

And I don't really see an end to this. I  love computers and programming for a living and as a hobby; It's a passion of mine and I truly enjoy it. 

About Me

"Here I am. Yes, it's me."
Lyle Lovett

"All of me ... Why not take all of me?"
Frank Sinatra