Subj : Typical work day To : comp.programming From : Anon Date : Tue Sep 27 2005 10:49 pm I thought I'd share my typical work day and am interested in other developers to see how it compares. This is related to the constant interruptions post I'm making at the same time. I've changed the names of people and projects here. ProjectA refers to the main project I'm working on this week. Often I'm given a project, do a nice plan for it and estimate it'll take about 3-4 weeks excluding documentation and testing and within a week a higher-priority one comes along that I'm asked to work on immediately - in this way there's always a long list of half-done projects. They tend to get done eventually but never really according to plan due to all the new ones each day, plus smaller tasks that *absolutely have* to be done the same day they're issued. I've used ExistingProgram and a letter to refer to existing live programs that have needed changes. Minor and a letter refer to smaller projects with a duration of less than a day. Actual work day btw is 9:00 to 17:30, these samples do not include the whole day. 09:00 to 10:05 - Reading and responding to emails and helping Bob with SQL searching on Booleans (65 mins) 10:05 to 11:10 - Looking into new problems in ExistingProgramA and ExistingProgramB (70 mins) 11:10 to 11:15 - Setting up user permissions for 3 members of staff who have changed departments (5 mins) 11:15 to 11:30 - Not enough time to be worth starting project work before lunch so went through flagged emails, archiving completed items (15 mins) 11:30 to 11:50 - Project plan update (20 mins) 11:50 to 12:07 - Meeting with IT Manager on MinorA (17 mins) 12:07 to 12:51 - Lunch (44 mins) 12:51 to 13:11 - Checking e-mails and helping network admin with Outlook issue (10 mins) 13:12 to 13:17 - Helping Bob with SQL subqueries (5 mins) 13:17 to 13:30 - Helping network admin with registry issue (13 mins) 13:33 to 13:48 - New feature request for ExistingProgramC (there's no spare monitors so now the program needs to speak to the user!) (15 mins) 13:52 to 14:48 - Work on ProjectA (56 mins) 14:53 to 15:10 - Providing user assistance (user forgot how to use one of the lesser used features in ExistingProgramB) (17 mins) 15:11 to 15:15 - Checking latest error reports (4 mins) 15:15 to 15:21 - Seeing a user about a rare bug with in ExistingProgramB (6 mins) 15:22 to 15:42 - Looking into problem a user reported - problem caused by mistake by someone in another department (20 mins) ---- Another one... (times are start times) 08:45 Explaining to Bob where data is stored and how the tables link together that relate to his project. Told Bob to write the information down, he made a few notes but I mean "few". Also answering questions from IT Manager about ExistingProgramD. 9:48 Work on ProjectA 10:01 Answering questions from IT Manager about ExistingProgramE. Giving Andy more help on the databases (recap of what I told him earlier). 10:26 Work on ProjectA 11:26 Helping network admin with VBScript. 11:41 Modification to ExistingProgramE 12:50 Got back from lunch to Bob wanting a reminder on the information I gave this morning. 13:03 Work on ProjectA 13:42 Showing Bob the databases / tables he now needs to use as a result of new features for his project requested from IT manager. 14:17 Updating IT manager on progress of ProjectA and Bob's project. 14:47 Producing daily work report (had to do this anyway as managing director requested it, it isn't just for this post). 15:01 Slight change to ExistingProgramF (just making an OK button the default instead of cancel), the rest of this block of time was spent refreshing Bob's memory of the database. 15:17 Work on ProjectA 15:44 Re-explaining the database to Bob 15:53 Adding extra feature to a component in a class library required for ProjectA 16:04 Re-explaining the database to Bob 16:12 Continued work (and completion) of library modifications for ProjectA 16:40 Reading and responding to emails, also sent email to Bob explaining the database. 17:02 Update of daily work report. ---- Then again this has at least progressed considerably from the chaos of approx 1 year ago when one morning started something like this (this actually happened and many of the other days weren't that much different)... 8:50 - Get into work to be informed by the IT manager (this was a different one to now by the way) that the web developer left a 60 GB file importing into SQL server overnight, the hard disk got full, the data has all been corrupted and the backups are all corrupt. All we have left are a few tables containing semi-accurate data (our databases are extemely messy and information about an order is duplicated in many different places. I had to "do a quick program" to convert the data in these other tables over to the main one. 8:55 - All phones in the building stopped working. The phones all went dead. The network administrator had the responsibility for the phone system (he just sort of got lumbered with it). 8:57 - Someone walks in asking me if I can install a printer cartridge in their printer since they can't find the network administrator. 9:00 - Something overheated in the server room just behind my desk. Network admin left the phone system to deal with this (lots of smoke etc but I think it was dealt with before any actual fire). During this time, every phone in the building had just started ringing repeatedly (even when off the hook). 9:05 - Phones stopped ringing, and all went back to normal, other than they were now in german (menus etc) 9:07 - Someone chooses this moment to walk in and start requesting new features for the clocking in and out software. I say I'm a bit busy now dealing with a problem and she gets upset saying "IT always busy" and goes off to complain to various managers. 9:10 - Phones back to permanent ringing 9:15 - Completion of "quick-fix" program to repair the data. .