Surviving Multiple Projects
Working on multiple projects can be very difficult. It’s hard to switch between different goals and even different versions of the software you’re using on different projects. Some may be older that you are maintaining and other may be newer using more modern technologies.
While the projects may seem similar in objective, they likely involve working with different software products, different development and business teams, different timelines and different locations. These need to be manages as separate projects, but you still have to keep yourself organized and productive.
These are just a few ways to help manage yourself and your projects to make working on multiple projects survivable. The best way to get good at working on multiple projects is to gain experience. Start by joining smaller projects once you are comfortable with your main project at work. Use these tips to help keep yourself productive without becoming overwhelmed while working on multiple projects at the same time.
Projects will have different priorities at different times. Tasks within those projects will also have different priorities. In order to succeed with multiple projects you need to be able to prioritize tasks and the time you spend on each project. Once you know your priorities you can plan out your time accordingly.
08:40 Prioritize Your Tasks
Make checklists of items needing to be completed. Compare items that need to be completed in the next hour vs next day vs next week. Know the priority of tasks, which are more important than others. This includes which are due before others. Without this you can work long hours and still fall behind.
“I have learned this the hard way.”
You don’t have to reply to every message immediately. Create regular intervals to checking various mediums. Such as checking Email in the morning, before or after lunch, and in the evening. Other mediums may be more frequent such as Slack, though you may want to turn off notifications. Make sure to have a way to be reach in an emergency.
Create a list of tasks to go through during your day. Classify and prioritize them based on the projects you are working on. Use things like weekly reports to keep up with what tasks are due next. This is like a weekly version of a Daily Stand-Up. List out what you have accomplished, what you are planning to do, and what if anything impedes your work. Check them off after you finish each one.
15:55 Focus on Tasks at Hand
You’ll be more productive if you use your time wisely. This means staying focused on your priorities. Find the environment the helps you focus. This is going to be different between people.
“We have our business meetings at coffee shops, restaurants, and bars because it helps me focus better.”
Put your full attention on the task you are doing. This will take discipline and practice. If you’re used to interrupting one task half way through because a random thought about another project popped up, try to push it away and stay where you are. This is a focusing exercise that takes practice, and it will get easier over time. If you’re worried about losing a good idea, write it down. If it’s a truly a good idea though, it will return.
Time blocking is a technique to increase productivity when working with multiple projects. Start by carving out time for a particular task during the day and sticking to it. This could be time for one project or for one task. It could be for a set of related tasks or client specific tasks. This reduces the cost of context switching because you are focused during that time. The trick is to be able to work without interruption during this time.
“I get 25 minutes in and I’m on a roll, so I’m not stopping.”
The Pomodoro Technique consists of choosing a task to do and working it for 25 minutes without distractions. It comes from the tomato (pomodoro) shaped timer used to time units of work. Focus on undistracted work for 25 minute segments. Set a timer and stop working when it goes off. The Pomodoro technique considers rest time as important as working time. For each pomodoro rest for about 5 minutes. After four pomodoros take a 20-30 minute break. As a side effect this will make you better at estimating tasks.
21:50 A-B-C-A-B-C-A-B-C vs AAA-BBB-CCC
When managing multiple projects many people jump from project to project. For example with nine weeks to complete projects A, B, and C they will bounce between them. They work a little bit on Project A, a little bit on Project B, a little bit on Project C and then start the sequence all over again. Trying to complete multiple projects this way quickly becomes overwhelming.
“Switching branches is a half hour process for me.”
All those transitions will cut back on your productivity and waste time. Notice that each unit of work requires switching to a different context. It’s not possible to switch tasks and make transitions without some sort of loss in effectiveness. Every time you switch tasks, you have to start, stop, go back a few steps, and try to regain momentum and get back into the mindset that you’ve since lost.
If these are projects that will earn you money, it’ll take longer for you to start filling up your wallet. None of the projects will not be completed until the last three weeks. In the AAA-BBB-CCC method, you work on a single project for three weeks. Once you finish it you’ll start getting results. This happens before you move to the next project. You lose less time and momentum between tasks. You’ll also actually have something finished. This means you’ll earn money sooner.
When working on multiple projects you’ll need transparency about what tasks are coming up and when you and other members of your team have time off. Resources aren’t just people. They include internal and external services you connect with as well as hardware and software you are using to create, deploy, and manage your application.
26:55 Review Workload Regularly
Keep an eye on your workload throughout the week. Plan what’s coming up in the next week or month. Make sure that you will be able to do all of your upcoming tasks. If you aren’t able to perform them all, organize them by priority.
“Putting that back on management and making them make that decision in many cases is very valuable.”
Each week set aside some time to review your task list. Compare this to your priorities and project due dates. Reorganize your list of tasks to do by priority.
Go through your overall To Do list or project schedules. Review critical tasks and how long they are going to take to complete. Make sure you have enough time before they are due to complete them. This may mean you won’t be able to accomplish lower priority tasks. If you have deadlines you’ll need review requirements. You may have to judge whether it is better to be late one project in order to accomplish higher priority task on another.
“Yeah but for a big chunk of that we didn’t have agile.”
Watch the time you spend on any given task. Use a time tracker to monitor and record how much time you are spending. This will give you a good idea of how much time each project is taking. You’ll see if one project is taking up most of your time. Other projects may be suffering as a result.
32:20 Know Your Abilities and Max Amount
It’s natural to feel a need to say yes to everything. You want to make your team and management happy. Taking on too much will have the opposite effect. You’ll get overwhelmed and run the risk of not meeting any commitments. This will hurt you and your team. You’ll not impress management, more likely you’ll make them angry.
“What actually happens is he goes from a 40 hour a week job over a period of about two years to an 80 hour a week job and gets burnt out.”
It is necessary to know your own limits. Taking on too much of load will make you unproductive. There is nothing less productive than a unfinished urgent task. Figure out how much you can do on your most and least productive days. How much do you get done when you have no interruptions. How much do you get done when you are constantly being interrupted.
“People assume you’re running a marathon when you’re sprinting, Usain Bolt doesn’t run marathons.”
You also need to know your style for handling multitasking. Some developers like juggling a few tasks at a time. Whereas, others like to drop deeply into one task for hours. Many development tasks require more of this deeper diving. Interruptions can really hinder this style of task management. Learn to say no properly. Turn the “no” into a larger conversation. Provide an alternative solution. You’ll build a reputation as a problem solver.
If you are overwhelmed or can’t finish on time ask for help. It could be that the tasks you are working on are harder than expected. Tell your team and let them help you with it. This may mean breaking it down and spreading it out. It could be reducing other responsibilities while you focus on the hard task. Don’t try to be a hero and suffer in silence.
41:55 Overlay Project Plans
Put all of your major due dates from different projects onto the same calendar. Look for weeks where several projects have key deliverables due. You may be able to move some work around so you don’t have too many major deadlines come due in the same week. If you can’t get them moved you’ll at least know when you’ll have a lot of work due. You can then predict when you are going to be stressed out or stretched thin.
“You’ve got to manage your state.”
Complete something every day toward your project goals. It’s easy for some to never get that sense of completion. Select one task to complete every day. Focus on it and don’t leave your desk until it is finished. Once completed take time to enjoy the sense of completion. It’s important to stop juggling multiple tasks and enjoy a job done well.
You’ll need to keep communication open with your team, management, and stakeholders. This will help manage their expectations of what to expect from you. If you run into impediments they’ll know sooner and upfront.
44:35 Know Your Teams
“You don’t learn the fire departments number when you’re house is blowing cinders.”
Start by figuring out who to ask for help on each of your projects. Leverage your each of the teams your are on to help address your strengths and weaknesses. One team may be stronger in areas that you can use to help another team grow. You may be able to take over certain areas and teach the rest of the team. Get to know them and what they are interested in doing or learning. That will make it more fun, and it will make you more productive.
Learn to identify your teammates’ strengths and weaknesses. Figure out who you can go to when you need help to solve a problem, and who you can learn from. Also look for who is likely to ask you for help and be prepared to guide them.
“This is like saying Ice-Cube is an expert on the Titanic because one sank it.”
Even less experienced people in your team can help you. They may be more up to date on newer technology and techniques. Experience can (at times) become baggage holding your older developers back.
Make use of your coworkers and team members by delegating tasks. You might be able to delegate whole projects. You may only be able to delegate parts of projects, but even that means they are off your To Do list. Delegating doesn’t mean that you absolve yourself of everything to do with the task. You still have to provide some oversight to your colleague. This will let you know that the work is being done effectively and to the required standard.
50:40 Stay Organized
Use your work tracking tool to see a snapshot of the state of your projects. You’ll be able to tell what features/bugs need to be addressed. Your tracking tool needs to be set up correctly. Most importantly, you need to have buy-in from the whole company/department. This ensures that it is used consistently by all teams.
“We kinda write a lot of stuff down.”
You can use an agile workflow to manage planning, estimation, and workflow, etc. Break your work down into sprints. Organize tickets or stories within the sprint board. One way is to create a board that consists of “To Do”, “In Progress”, “In PR”, “QA” and “Done” columns. Features and bugs don’t get moved into the QA column unless the developers are confident that the acceptance criteria of the tickets have been met. There are several variations on this pattern that use only a few or more columns on the board.
53:00 Manage Expectations
Check in with your boss just enough so that he/she is aware of what you’re doing. If you’re juggling a few related tasks and don’t see the connection, ask about them. Check with your co-workers before going to management. You can use them for second opinions, check-ins and other questions. You don’t want to rush your manager. Instead, prove yourself resourceful. Know what question to ask and when to ask them.
Manage the expectations that your teams will have for your work. There will be times when you can’t get everything done for everyone. Let your project teams know when you are available and when you plan to have work completed. Make sure to let your managers and stakeholders know as well.
Let the people affected know as soon as you can if you can’t keep your commitments. This keeps everyone in the communication loop and everyone knows what to expect at all times. Include a revised estimate of when you’ll be able to finish their tasks.
Turkey Temperature Tracker
Ever wonder what temperature your Thanksgiving turkey really is when the timer goes off? This project uses a thermistor to determine the temperature of the turkey while it is cooking. A thermistor is simply a temperature dependent resistor. The resistance changes as the temperature increases. A positive temperature coefficient thermistor increases the resistance as the temperature rises. A negative temperature coefficient thermistor the resistance goes down as the temperature rises. The temperature is measured from the amount of resistance on the thermistor and transmitted to a dashboard using Losant.
Tricks of the Trade
The trick with juggling is not to drop the ball. The trick to juggling knives is not to do it. I was told a long time ago never to try to catch a falling knife. It’s a good way to get cut. This “Tricks of the Trade” isn’t about knives, rather, it applies to how you handle really bad situations. When you see a situation that is bad enough, you should ask yourself whether you want to be involved, rather than assuming automatically that you should be involved. Sometimes, trying to fix it isn’t worth the risk. Be careful that you don’t take on something that is going to come back to bite you later. This is also true of personal relationships as well