Save by the Log

I had promised to finish my current task within two days. First day I paced myself and did pretty good. As soon as I got in the next day, my boss called me up. We needed to debug some code that got sent out but had problems. It took about an hour. Okay I guess I could absorb that and still make my deadline.

Next there was a session scheduled to fix some data issues with our latest releases. It was a conference call with a lot of my teammates on it. So I tried to work on my stuff while the call was going on. Of courses a number of issues came up during the call where I was the only guy who knew how some data was being set. So I could only half-multitask. The call went on all morning.

In the afternoon I decided to cut lunch short to try to make my deadline. Things were going well. Then I realized the work I tried to squeeze in the morning was done wrong. Had to go back and fix that stuff. Deadline approaching. As I am getting near the home stretch of my task, my network connection goes down. Darn.

I reconnect but my database tool aborts. Luckily I always save all my work to a daily log. I just restarted my database tool, loaded up my log with all my commands, and picked right back up where I left off. What is the moral of this story? I think I had better pad my estimates to factor all these interruptions in there.

Non-Technical Challenges on the Job

I got my next assignment from my team lead. Needed to figure out the code to create a bunch of database tables. Then I need to write the code to put data in those tables. The good news is that we have the blueprint of the tables from another system. And somebody has written some database views that we are converting into tables. So most of the work is just the details.

Thought I would actually have some fun with this task. Then I got the catch. I had to split up the work and assign some of it to another developer on the team. This other guy has hours to work on our project. And he needs some work. The reason I figured this was a setup was because I have worked with the guy before. He needs a lot of hand holding.

Now I don't mind helping out a junior developer or even a new developer. But the guy I needed to work with is supposed to be a senior guy. And he is not new any more. So the management folks figure with his help, we should be able to get things done more quickly. On paper that is fine. In reality, not so good.

So I carved out a little over 25% of the work to give to the other guy. He had some questions early on. I tried to explain the answers to him. The he went loose. When he got to the one piece that was a bit more complicated, he was lost. I had to spend a bunch of time going over it with him in detail. It
took a few sessions. But I think it got through.

The last part of the task was to roll up both our work into one package. It all needs to go out into one release. So I did what I would do if I were developing the work myself. I slowly added the other guy's stuff into mine one small piece at a time. And let's just say there was pain as I debugged the errors and got the stuff to work. How can I get out of this type of setup? Maybe that is the point. I got to figure out how to work in this challenging situation.