Details and Big Picture

Details are important. Small problems can wreck a whole project if not handled correctly. A missed semi-colon can prevent code from compiling. I wrong dependency can cause your code to fail at runtime. An off-by-one error can cause your application to do all sorts of weird things. The big picture is also important. Not keeping track of where your project is going as a whole can result in a useless product. It can prevent you from completing your tasks. It can cause huge losses in time and effort. You may find yourself swept away with one of these and neglecting the other, either because you find one particularly fun and the other boring, or because you simply get in the zone or a state of flow and the other slips out of your mind. In my own experience, I've noticed that I tend to fall into the details (also, in my boss' experience; he's the one who initially pointed out that I have problem with this). I get stuck trying to figure out how to make one small thing work, not realizing I've spent hours on something that is really only worth a half-hour. And I'm sure many people think of many great of how to make wondrous things, though never end up getting to the point of making their ideas real because they can't focus on getting the little parts that make up the picture done. It would sure be nice if you could consider all of the things that need to happen while simultaneously getting them done. Unfortunately, I don't think you can. Or if you can, I think it isn't optimal use of your brain's resources. Or at least there is a trade-off of benefits in seeing multiple levels of detail at once, where the more you hold in your brain, the less effective you are at making progress on any one of those levels. What I've found works well for me (and hopefully will for you) is regularly moving up and down between different levels of detail. I spend some time looking at the big picture to make sure I'm on track and separately spend time looking at the details, completing my work. More specifically, I do the following. Hopefully this will prove helpful to you in sorting out your own methods of navigating the details and big picture: At the company I work, we use the Scrum model of project management. Following that model, we take a few hours every two-to-four weeks for a "sprint planning meeting". This is where we re-evaluate where we're at in our project and what we want to do next, then divide up the tasks. We also discuss what is going well and what we could be doing differently as a team. That's about as high-level as it gets for me within the context of working at this company. I also keep my own spreadsheet of all of the tasks that I have to do. This includes administrative tasks like entering hours to track my time. It includes the specific support tickets I have to answer. And it includes all of the development tasks I'm assigned and need to complete. Following each sprint planning meeting, I add all of my new tasks to this personal list. It is the top level big picture for my own use at work. At the beginning of each week, I take some time to look over my list of tasks and consider the situation. Is there anything that seems like it could be done more efficiently? Do I still think I have time to complete all of these? Does it feel like something is missing from the list? I make adjustments accordingly. Every morning, after checking my email, I take that spreadsheet and copy it over to another page as the start of my daily to-do list. I then look over the items and delete the ones that don't apply or I don't think I can complete this day. After that, I go over to my timesheet spreadsheet and timebox all of the items in my daily to-do list. From there, I am able to go through the items of the day, devoting my whole mind to the task at hand. And I feel confident that I'm not missing anything important.

Comments