Year 5 was an extremely interesting year in my career. In August 2011, I got my first taste of independent management experience. The circumstances could have been better, but what doesn't kill you, makes you stronger! The person who had been managing the project since Tomasz moved out of the project in 2008, decided to leave ZS. This created a vacuum at a really bad time for a project, that badly needed a few dedicated developers to fix several critical client issues and perform a much needed technology upgrade. The silver lining was my team, 2 new developers straight from college, and I couldn't have asked for anyone better.
We immediately got down to identifying and hypothesizing fixes for the major issues being faced by our clients. The one major change we planned to complete in a little under 6 weeks was to move to a new parallel computing platform to help scale the number of simultaneous client jobs we could handle. I had used Microsoft HPC (the platform we were moving to) on previous projects, but the rest of the team had to learn how to learn about it as we went along. There were also several bug fixes that we had to implement along the way. This was an ambitious undertaking, especially for a green team, but 6 weeks later we proved ourselves worthy of the trust our management team has placed in our capability. In one day, we successfully moved over 70 live sites to the new version of our product, in a series of carefully planned steps that left us satisfied (and surprised) that everything had worked without a hitch. By Nov 15th 2011, we were getting extremely positive reports from clients who were appreciative of the stability of our system. We had performed a miracle!
Our work was far from over, because developers hate bugs and we knew how bugs were still in there. We were determined to wipe out every bug we could without having to fundamentally change the way the application worked. By December 2012, we had killed all but one issue, where the application was being used in a way it was not designed to. We were ready to move on.
I had lived through one of the most stressful and challenging periods in my career. It had taught me many things, but the most important was on how to manage expectations when the sky is falling on you. I believe this is a very crucial skill for someone who hopes to move into management someday and was glad to have got some experience dealing with this type of situation.
The next big challenge on the project, was evaluating if we wanted to retain our existing Mixed Integer Programming Optimizer or move to something else. This was a research task and required clear definitions of what experiments we would conduct, what key metrics to measure and the test data we would use during the experiments. It was a new and interesting type of work that I had hardly ever done before after college. With a little guidance we were able to get under way.
My biggest learning from this phase of work was that conducting experiments on complex systems that have a lots of variables is challenging and can never be exhaustive. There are just too many possible scenarios. The best you can hope to do is to cover your most important cases and the boundary conditions so you know how far you can stretch the system before it breaks. I particularly enjoyed the process of designing experiments and analyzing the results to draw meaningful conclusions. I hope to be able to do this kind of work in the future as well.
The rest of the year passed quietly, We made several small and hopefully significant enhancements to the product. I couldn't help but thank fate (and some brilliant people) for having given me a fantastic first 5 years at work. Its a significant milestone in a person's career and I was pleased with my growth so far. This milestone however, brought with it a period of introspection to try and figure out where I would like to be at the end of the next 5 years. It led me to make some difficult decisions. More on that in my next blog post.
P.S: I am going to try and get back to my regular post schedule from this week, since a series of busy weeks had left me with little time or energy to write.