126

I'm a data-analyst for my company and I also perform full-stack development work.

I have a web-development project I've been working on for the last 8 months, and the primary focus from my boss and management has always been "when will x be done by". Deadlines/due dates are up-front over anything else. I'm supposed to spend the majority of my time working on this project. This is even a project I enjoy(ed), and I made the push for it to be started.

I am also involved in managing a reporting dashboard for a problematic internal team. Every Monday is dedicated to them, and ideally the rest of the week towards the development project.

In reality, I'm constantly being pulled away from the development project to work on providing novel analytics for this team, and addressing their never-ending list of concerns. The majority of the time I spend is correcting for issues/errors caused by the team's inability to house and manage their data, and rebuffing invalid issues (issues spawned from a fundamental lack of understanding of the systems they are using).

I can't concentrate on programming for a significant period of time without fear of being pulling into a completely different and strenuous task, and I feel like my productivity is suffering. Since the interruptions have picked up, the time I do spend programming seems to be much less effective. I can't get into the "flow", and have a very hard time bringing myself to sit down and sort out tough and complex problems (problems I used to go after, specifically because they were hard). It's mentally exhausting to be hours deep into a very complex problem and to be interrupted and pulled away for the remainder of the day, only to have to spend a significant portion of time getting back into it the next day under the fear of being pulled away in the middle again. My motivation has all but evaporated, and dates and deadlines are constantly looming over my head.

I've communicated this to my boss, but the eventual solution ends up being some form of "That's just the way it is". I'm getting very little done with my time, and my wife is even noticing my frustration outside of work.

What can I do?

17
  • 93
    Run away! Seriously, with the current market demand for programmers, there's no good reason to tolerate that level of stress.
    – aaron
    Jun 14, 2017 at 15:48
  • 58
    Everything you've described is completely normal. But there's an even more important way to look at it: Your actual jobs is in fact to be able to balance all the shouting and deadlines, and get stuff done. If you look up "programmer" in the dictionary, it says "Person who balances ridiculous amount of erratic shouting and deadlines, and gets stuff done." As a small footnote it says "understands some Pascal syntax". That is your job. By all means get a new job, as aaron says doing so is trivial, but it will be exactly the same!
    – Fattie
    Jun 14, 2017 at 16:19
  • 107
    @Fattie, some software companies actually have competent management and keep people on task. And they actually hire enough people and pay them well. It's not easy to find, but it does exist.
    – JPhi1618
    Jun 14, 2017 at 17:54
  • 27
    Is the word "no" not an option? It's a part of my vocabulary, and something I have no problem saying. I strongly recommend adding it to yours. Jun 14, 2017 at 18:12
  • 21
    The "problematic team" clearly has an indomitable Will to Failure. No help you provide will change anything for them, therefore providing them with 1/4 as much help, after a 24 hour delay, will have no actual cost at all. In an ideal world, you would set up an autoresponder in Outlook to reply to all their emails with obscene ASCII art and then bin the emails unread. For reasons I can't comprehend, that's considered unacceptable in corporate life, but don't drop everything. Politely tell them you'll get to it tomorrow and put it out of your mind. Everybody has priorities. Enforce yours. Jun 14, 2017 at 19:35

16 Answers 16

54

I'll try to provide the shortest possible answer to this excellent question - which applies to all software development everywhere.

The answer is:

You must learn to say "I'm busy".

It's honestly "just that simple".

Two further great tips:

It never hurts to be overly polite. So: "That is a fantastic idea, who thought of it - you? I would definitely love to be the one to do that, but damn it - I am busy."

Also, you can work in office politics: "Fantastic idea. Damn - I am busy. Why don't you ask Old Steve, he never seems to be doing anything, right!"

(Just joking there! :) )

In short, you must learn to say "I am busy".

That's just "all there is to it".


You may be thinking, "oh if I learn to say 'I'm busy' like that damned guy suggested on the SO site, they might sack me..."

So, that's inconceivable. But in today's market if it happened you'd have a new job in a half-hour.

If you think about it the only thing your post is about is "fear". Without trying to sound like a Richard Bach book, everything you are describing - all the pain and annoyance - amounts to fear of being sacked, if you say "I'm busy".

Let go of any fear and say "I'm busy". Your total outlook on the job will likely change: you'll find yourself intensely and enjoyably working on the task at hand. All of the noise will just become background noise. Enjoy.

8
  • 10
    Followup: critical language tip. Never explain yourself. When you state something like "I'm busy" use only those two words. If someone asks you "on what" state the project name. If someone asks you "until when" state in one word a certain day. Never add decoration or explanation to the phrase "Ahh, I'm busy". (As I say, add polite filler words: "Damn, bad luck, I'm busy - bummer" "What a great project that would be; I'm busy." and so on.)
    – Fattie
    Jun 14, 2017 at 17:41
  • 5
    I would like to add the contrast to your answer here. I do just the opposite of what the answer says. I try to accept everything that comes my way, and sometimes to put myself in the way of tasks. I had so hoped that being the guy who gets everything done for everyone would make me shine like a lighthouse and be on the fast track to the positions and situations I wanted. Sadly, I have been doing so for years now and it does not seem to have paid off. I often have 2 or 3 large projects I am contributing to simultaneously, yet I still meet my deadlines. I feel I am no better for it. Stressful :(
    – Aaron
    Jun 14, 2017 at 23:11
  • 2
    @Fattie Thanks for kind words. I should add that my skills and contributions do not go unnoticed; I have gotten lots of praise, and today I had someone (again; not the first time) tell me that I am a "miracle worker." What I did that caused that comment was not a miracle so much as it was me putting in extra, unpaid time, and even thinking about design decisions while at home. This is common for me, and these kind of comments are too, and I always get stellar evaluations, so it's not like nobody notices. But when I ask for raise/promotion, all is temporarily "forgotten" the rest of that day.
    – Aaron
    Jun 15, 2017 at 17:50
  • 2
    Basically, even though I do not do what your answer says, I am supporting your answer by showing that those of us who do the opposite don't get much from it (at least in my case, from what I can tell so far). I know we are supposed to "not attribute to malice what can be attributed to stupidity," but I find that difficult to swallow when the they benefit from the malice in this case.
    – Aaron
    Jun 15, 2017 at 17:54
  • Old Steve is very busy actually! Jun 16, 2017 at 8:13
162

To triage while looking for a different job: start pushing back. Phrases like:

  • "I will look into that first thing tomorrow"
  • "I'm in the middle of something, can I get back to you in X minutes/hours?"
  • "Can you run that request through my boss?"

Learn to use them. And use them. Assuming you are planning on quitting, continue to use them to delay the day to day and carve out blocks.

Block times on your calendar. Turn off your notifications (phone, email, IM, whatever) and block off the time. Move locations if necessary.

Ultimately though managing priorities is an issue which you cannot change at your level.

5
  • 31
    Or just "Could you open a ticket for that and we'll talk on Monday?". If he could concentrate as many tasks as possible to the day dedicated to these issues, he could improve performance. Furthermore, I bet many of the issues wil misteriously vanish by Monday.
    – ecc
    Jun 15, 2017 at 8:09
  • 2
    Telling people these things is still distracting. I know people who either: used a different desk than normal on some days, so people can't find them easily - the only way to contact them is by e-mail. Or another who have a set period of time during the day when he is available to answer question/fix issues and then they go to a meeting room with a laptop and do their development.
    – Ola M
    Jun 15, 2017 at 10:16
  • Work from home of shifting your hours to early/late could be other options, but with the second one it is hard not to start working longer hours...
    – Ola M
    Jun 15, 2017 at 10:18
  • 4
    "Telling people these things is still distracting." Yes, for the amount of time it takes for them to learn that this is what they'll be told if they intrude. It's worth the effort it takes me to re-set the expectations of others. After not-long, they'll stop expecting to be able to behave this way toward me.
    – Beanluc
    Jun 16, 2017 at 20:05
  • "Telling people these things is still distracting." As a team lead/manager for a software group, and someone who still has to get occasional Real Work (tm) done, it's something you have to work into a routine so you can do it without disengaging your brain from the task. Pick a time before the end of your day that you can honestly read their e-mails, tickets, etc... and actually do it (this is important). Jun 17, 2017 at 3:23
104

Short answer: Just quit.

Longer answer: I've been where you are and it ended very badly for me. I ended up having a stroke from all the stress at the ripe old age of 40.

IF you stay where you are, one of several things are going to happen:

  1. You get fired
  2. You burn out, and THEN get fired
  3. You burn out and end up in the hospital.

Management has made it clear that they are unwilling to accommodate you. Update your resume and get out ASAP.

THIS says it all

I can't concentrate on programming for a significant period of time without fear of being pulling into a completely different and strenuous task, and I feel like my productivity is suffering. Since the interruptions have picked up, the time I do spend programming seems to be much less effective. I can't get into the "flow", and have a very hard time bringing myself to sit down and sort out tough and complex problems (problems I used to go after, specifically because they were hard). It's mentally exhausting to be hours deep into a very complex problem and to be interrupted and pulled away for the remainder of the day, only to have to spend a significant portion of time getting back into it the next day under the fear of being pulled away in the middle again. My motivation has all but evaporated, and dates and deadlines are constantly looming over my head.

Best case scenario is you are being set up to fail. Worst case scenario, you end up going down and taking your mental and physical health with you. This is a toxic environment for you and you can do yourself no good by staying if management is unwilling to work with you.

I've communicated this to my boss, but the eventual solution ends up being some form of "That's just the way it is". I'm getting very little done with my time, and my wife is even noticing my frustration outside of work.

Again, I've been there and ended up destroying both my health and my relationship with my wife. GET OUT ASAP. No job is worth what this is doing to you.

EDITED TO ADD:

I know that this is the "nuclear option", and I wouldn't normally recommend it, but it seems that your situation has already degraded to the point that it's starting to affect your health and your relationships. IMO, that's the point of no return.

11
  • 45
    +1 I don't normally advocate the nuclear option of quitting except as a last resort but from the sounds of it the OP has already raised this issue on multiple occasions and not got anywhere. Like Richard I've been there, done that, had the breakdown and it's not worth it
    – motosubatsu
    Jun 14, 2017 at 15:44
  • 4
    I agree with this as a last resort, but have you sat down and told your boss the extent of the stress you are enduring over all of this, or did you just kind of say it in passing causing it to be brushed off. If you have actually had a sit down to proper explain all this and nothing changed, get out while you still can. Otherwise, you will sink and probably never leave. Jun 14, 2017 at 17:06
  • 3
    I disagree with this. I don't have your experience, but I'm convinced there is a solution here. He accepts to do the other team's job right ? No one is forcing him into it. If the team reports his unwillingness to help them all week to the manager and then the manager explicitly asks OP to do impossible tasks (as he is doing right now) THEN he should quit. Jun 15, 2017 at 9:58
  • 2
    I disagree that quitting is the right course of action here. The OP hasn't described any constructive action yet. The only things we have evidence of him doing is complain to his boss and on an internet forum. He needs to learn to stand up for himself. Otherwise, he'll just be exploited by the next person who values his time less than he does.
    – Technetium
    Jun 15, 2017 at 15:57
  • 2
    @Technetium He does need to learn that.... elsewhere. Too late for where he is now. Jun 15, 2017 at 16:03
42

I've communicated this to my boss, but the eventual solution ends up being some form of "That's just the way it is".

What can I do?

What you can do depends on what they mean by "That's just the way it is".

If they mean that you must continue to have many tasks, all of equal priority, all with inflexible end dates, and must constantly be interruptable, then you could quit, or wait to get sick and take time off to recover then.

If they mean that there are a lot of important things to be done, then you have a bit more leeway.

When I've been in this situation, I sat down with my boss, explained all the tasks that were coming my way, and asked for help prioritizing them. I explained that I could only work so many productive hours per day and that I had more tasks than the hours would permit.

My boss and I arranged tasks in priority order and marked off a few "essential" tasks that needed to be completed in a specific timeframe. I was given permission to work on all the others on an "as time permitted" basis.

It worked out okay.

If they mean that certain tasks must be all completed by a particular date with no wiggle room, and the sum of the tasks don't see achievable by that date, then you still have an option - you could spend less time on each task.

In my case, it was software testing. My estimates might say that it will take 2 weeks of work to do a proper testing job, but the calendar says I only have 1 week with no chance of getting extra help. So I made sure the 1 week of testing I was allowed to spend was the best testing I could provide in the time given.

There are equivalents for pretty much every profession.

None of these may be optimal, but for business reasons if "that's just the way it is", then they may have to suffice. While striving for perfection is nice in the abstract, in the real business world striving for "good enough" almost always fits the need - particularly if the deadline is the most important attribute. Letting go of the need for perfection is an empowering feeling (and this is coming from a long-time QA professional!).

Discuss these options with your boss and ask for help in choosing. Confirm the plan in writing. Then just "do your best" with what you have. That's all you can do.

2
  • 12
    Just be careful that if you cut corners, it doesn't come back to bite you in the ass. It's all too common to get orders to "make it work one way another" and then get a bad performance report for delivering "low quality code".
    – Erik
    Jun 14, 2017 at 17:36
  • 5
    And put those plans in writing and get their approval in writing.
    – FreeMan
    Jun 15, 2017 at 11:46
26

On reading your question I see that one word stands out above all. In your third paragraph you say "Every Monday is dedicated to them, and ideally the rest of the week towards the development project." Your problems are rooted entirely in the word "ideally". This is unacceptable. The term must be "strictly".

The pain you are feeling arises from cognitive dissonance, which is the result of the difference between your picture of your priorities and your boss's picture of your priorities. When your boss says "When will your project be done by" and then says "That's just the way it is", he is demonstrating a lack of commitment to your project. I don't know what you did to sell him on the project, but do it some more. A lot more. Get him to say he really wants the project done. Then tell him you need time and space to do it.

A good example of sustainable boundaries in this case might be: tell the problematic internal team they can have all day Monday plus the last hour of Tuesday thru Friday. Any problems that cannot be resolved in that time must wait until your next meeting.

Another way to set boundaries is to find a more private place to work. I used to keep all my project materials on a small table in the computer room, half hidden behind the two VAX/780s. You just have to make it harder to find you than to look up the answer themselves.

Your boss may then instruct you to tear down your boundaries. This is a clear message that you have not yet completely sold your project and your boss still needs more convincing. Failure to close this sale will lead to a clarification of priorities in your mind, and an integragion of your intentions. You may decide to stay, and work the project essentially on your own time, or you may decide to go, and find a situation where your proposals garner more respect.

If you force the issue of your priorities you will resolve your cognitive dissonance, and you will be happy with whatever decisions you make afterwards.

16

Douglas,

You have more control in this situation than you think. The first step in this evolution of yours is to learn how to push back and say "no". Here's a good article from Forbes.

I'm putting this up because your post is indicative that you're maybe not so great at managing expectations. The very first line, where you're both a data analyst AND a full stack web developer, is the hint. I don't think anyone can profess to do both of these jobs well when the situation requires that both be done. But a lot of the fallout comes from volunteering to do too much, and being too available, and "absorbing" the company's stresses into feeling obligated to be Mr. Fix-It-All.

Richard U's answer here lays out the most extreme case. I'm going to bet that in some combination, you may be showing up early, leaving late, not taking lunch breaks, taking calls about work while you're away from the office, and have the general idea that there are things that need fixing and you're the only one with the talent to do so. The behavior and the mentality will put you in a hospital (or graveyard!!!) somewhere.

But I disagree with Richard U in that if you've got these traits, you're only going to do the same thing elsewhere if you switch jobs. Sure, you may have a pushy boss, but if you're not exercising your right to say "no" to others' messes, who's really at fault here? Incorporate enderland's response into your daily practice, and learn how to slow down and take care of yourself. If there's more work than time available, your company will hire additional resources at the point where you stop volunteering to be a human sacrifice. But first you must love yourself, because work doesn't love you back.

When you've taken a good look at your part in the situation, and made corrections, and then there's no change, then it's time to find something else. But start with yourself.

2
  • Thank you Xavier, this is solid advice, and you hit the nail on the head that I have a hard time managing expectations, and that I have that idea that things need fixing and no-one else seems to be able to fix them. My goal is to be a full-time developer, I have very little interest in purely data analytics, but that was my foot in the door at this company. Jun 14, 2017 at 16:48
  • 1
    The way someone schooled me on this, long ago, was that I should do my best to "under-promise, and over-deliver". Don't box yourself in with time-to-deliver estimations that leave you no wiggle room - generally, add 25-30% more time. We want to keep you far, far, far away from needing a Xanax prescription.
    – Xavier J
    Jun 14, 2017 at 17:01
13

A lot of the answers here assume you have co-workers who will sit down and be rational. I'm going to assume they're not going to be (since your question implies they aren't). There's two problems you've identified

  1. Coworkers don't respect your time. Either they're oblivious or just think they're more important
  2. An apathetic management

While quitting was floated, I'm assuming you want to keep your job and they're wanting you to stay. So here's what I would do: you need to explain the "flow" to them. In detail. Non-programmers don't get this (hence why this comic is so funny)

Here's a similar one

Programming requires a "stream of consciousness". You have to be able to hold the program in your head before you can write the code that will do it. It takes time to get to that point and if anything else happens you often have to start over. So 10 minutes doesn't cut it. You need long blocks of time (hours) without interruption. You have to make the other people understand this. Then, and only then, will people respect any scheduling decisions you make. Because even stopping for a few minutes to say "No" can be detrimental, especially to a programmer.

Here's another thing I would do: Scope their project out. Not as in looking at it, but forcing them to write out what they're trying to do. They may hate you for it (I'll bet you anything they have no clue), but it might let you schedule their stuff into your own.

7

The problem here is a lack of boundaries established by you and your colleagues. There are conflicting priorities (this internal team wants the best dashboard data possible, and you want to work on this web application) that both require the same valuable resource: your time.

Define some boundaries that you feel are fair to this internal team as well as yourself that will address their concerns and give you the time you need to succeed on your personal tasks. For example, maybe you can require that issues are put into a bug tracking system or support ticketing system instead of tapping you on the shoulder. This is common for support roles. For most web services, when you ask for support they do not pull someone randomly in to solve your problem. Instead, they have you create a ticket and respond based upon their own predefined boundaries (priority of issue, hours of support, et cetera).

Your boss did not solve this for you, and assuming he is not part of this problematic internal team, this makes sense. It is not his problem to solve. It is yours. He cannot intuit what makes you, personally, find fulfillment in your role. You must tell him. After you establish a sane way to manage these conflicting responsibilities, tell him the boundaries that you have come up with and get his guarantee that he will back you up. Iterate on them with him as needed.

If your attempts to improve the management of your time are sabotaged by your boss or this internal team, restart this process. If it continually happens, only then would I give up. Learning how to be assertive is a valuable skill, and this is a great opportunity to practice it.

0
6

Include the other Team

Explain to the other team that you have pending deadlines that must be met and are unable to continue to assist them on days other then Monday.

Tell them that from what you observe, they need help throughout the week not just on Mondays as originally agreed upon.

Tell them that you need uninterrupted time and feel that a different arrangement is needed to help everyone be successful.

Suggest a few ideas to them (i.e. first 2 hours of every day, first hour of the day and the last, etc).

Ask them to offer ideas as well. This includes them in the solution, ensuring their buy-in, and hopefully avoiding having to go Up the Chain.

Up the Chain

But, if they are not reasonable, even after being offered a "win-win" solution, even after being asked to offer their ideas to come up with a solution that benefits everyone, suggest that a meeting may be necessary to iron out the glitches in the current arrangement. Do this in an email, and CC in your manager.

It is important that you show three things (1) you want to help them succeed, (2) you also want to succeed on your project, and (3) you are open to any solution that permits you to meet your deadline while also helping them be successful.

Hopefully, you won't have to go your manager, but, if so keep it positive and focus on "win-win".

6

First up , you need to have a serious talk with your boss about priorities.

From your comment:

Thank you Xavier, this is solid advice, and you hit the nail on the head that I have a hard time managing expectations, and that I have that idea that things need fixing and no-one else seems to be able to fix them. My goal is to be a full-time developer, I have very little interest in purely data analytics, but that was my foot in the door at this company. – Douglas Gaskell

It seems as if you actually are a data analytics person and that would be the number one priority for your job in any company I have worked for. Managers tend to want people to do the job they were hired to do or they give them a new title and job responsibilities. Therefore, the fact that they continually take you off of your pet project is not at all surprising. It is amazing that they let you take on the project frankly.

Now as far as managing these priorities, first you make sure the data analytics task is indeed the highest priority. If it is then, every time they take you off the other task, you notify your boss with how much it will delay the second task and officially move the deadline down. If they decide the other project is higher priority, then your boss can fight it out with the team with the dashboard. But first he has to see the actual movement of the deadline based on the interruptions.

Further, you need to work on getting a better relationship with this team you do data analytics for and do what they want the first time, so they are not continually changing their minds and interrupting the other project. Get rid of the attitude that they are problem; it part of why they are a problem be cause nobody likes to deal with someone who treats them with disdain.

I know you dislike this work and I would guess you are blowing off doing it well just from the way you write about it. Stop thinking of them as the enemy and start making friends with them and be serious about finding out their needs. I would wager they are as frustrated as you are with your support.

Spending a little more effort up front tends to result in a lot less changes after. You also need to understand the company importance and meaning of the data you are analyzing for them. It may be critical to making millions of dollars for the company or it may be more minor in effect. But you need to know what the data is being used for and understand why it may be critical to support it above your pet project.

You appear to be making the mistake of thinking that what you prefer to do is more important because it is your preference. Business needs don't work that way.

1
  • For clarification, I was initially promoted to a data analyst position because of the work I was performing a more than 18 months ago. My job duties slowly drifted away from that work as my greatest contributions to my team and the company was in the way of development. By the time this project started, my duties had long drifted away from being a data analyst, but my title within the company will not change (They would happily have a phone agent doing development work if they could get away with it. They don't like changing titles here). The project is not my sole idea. Jun 14, 2017 at 19:23
5

While most answers focus on saying no, I think your biggest problem is your attitude. So before you get so stressed out that you start drinking, you might take a look at the AA

https://en.wikipedia.org/wiki/Serenity_Prayer

God grant me the serenity to accept the things I cannot change,

Courage to change the things I can,

and the Wisdom to know the difference.

So you have to realize first that you cannot change the problematic team and also that it doesn't matter. From there on it's easy-peasy.

Every problem they run into is their problem and theirs to fix. Tell them what you would do, and let them do it. They will fail and come back, but it doesn't matter, it's their problem and their job to fix it. Repeat "helping" them until they get it, or maybe they don't, but it doesn't matter. You have your tasks, they have theirs.

If people start complaining or anything ask them why you have to do their jobs additionally to yours. But say it in a normal tone, never get upset. As your boss says, it's just the way it is, make the best out of it.

Find out what your core working hours are, when you are most productive, for example before lunch and block them. Check your mails when you come in if there is anything urgent, but don't reply before you had your half day of work and a nice lunch.

And then you can start to say you are busy without a bad conscience, because you are. You have work to do, a lot! And to get it done you need uninterrupted time and if you get that you will be better at "helping" people out than when you are all stressed out.

Even if you go for another job, it will be the same their. Use your current company to train this mental state and the default responses.

Enjoy life, work is only work, it pays your bills, maybe keeps you entertained, but it's nothing to worry about once you leave the company premises, even there you should not worry about it.

If you know you are doing the best you can then you are good. Measuring yourself to a fictive performance only achievable under perfect conditions is just insane. You will never have that, anywhere, that's just how life works.

Good luck!

2
  • I wanted to downvote at first but it makes sense. Taking a step back is very important. I'm not sure it's possible short term. One doesn't change his point of view that easily. Jun 15, 2017 at 16:54
  • Great answer. "Even if you go for another job, it will be the same there. Use your current company to train this mental state and the default responses." – this is so true. If your mindset is to solve every incoming problem, you could get close to exhaustion even if working as a bus driver. Escaping from the problem only postpones solving the personality problem to another year, to another job. Escaping is not a solution, the OP needs facing the problem.
    – miroxlav
    Jun 16, 2017 at 17:45
2

I had a nearly identical situation. I was months into a large project. (Not sure how long, but around 8 months like you). It was clear the project required 95% of my time to do well, but I was constantly taken off it to "quickly" work on other things. It was clear the core problem was that we lacked the number of developers to have such a large project in development. No matter how amazing it was, my boss couldn't be expected to postpone projects forever that only I could do.

I know you said you talked with your boss:

I've communicated this to my boss, but the eventual solution ends up being some form of "That's just the way it is".

If it's clear your company lacks the resources to have a project like that in the works by a developer it needs to be made clear that they hire someone to handle these extra tasks or the project won't be feasible. In my case we decided together to mothball the project so I could seriously address other issues with other projects on a full-time basis. It sucked, but it turned out alright and I was under a lot less stress. (I was working 10 hour days regularly so I could keep my concentration and handle the small side projects while meeting deadlines). The project is always there and could be picked up again when the company has the resources, but we made a tough decision. You might have to do the same.

1

You may not be able to not reply to emails all day, or to say no due to managment structure at the company however you can get yourself short bursts of time and focus.

Have a look at the Pomodoro Technique, in short set a short amount of time and a definitive task to complete in that time and then focus on nothing else. You can then move back to fielding questions if there are any.

If you can get a few of these focused bursts done in a day you may find your productivity improving. The trick is to make sure you shut out everything else while you are in focus mode. Knowing that whatever it is can wait until afterward.

0

Some good answer here. Some additional tricks:

  1. Look into productivity tools, such as TFS. Enter tasks for all of your work and keep the statuses up to date. When you receive a new task, review the list for priority. Share the list with your manager on a regular basis.

  2. If you need uninterrupted development time, set a meeting for yourself in Outlook, where you are the only invitee. Set your IM to Do Not Disturb and do not read emails during this time.

0

Lots of reasonable points here about communication / saying no / delegating / deferring. However, regarding...

It's mentally exhausting to be hours deep into a very complex problem

.. if you can break up the problem lots of much smaller problems, each (ideally) releasable, then even if you can't/won't say no to any requests, you are much less likely to be hours deep into a complex problem when they happen.

It's not possible for all problems, and you might not be able to plan all the micro tasks in advance, but if you get into the habit of trying to split the problems up, for me at least, it can help a lot.

Keeping all changes (theoretically) releasable, so it compiles, the interface works, etc, also means it's easier to get back into it after an interruption, as what the program does, if it's working, tells you where you are, and what needs to be done. Commiting each working change (even if just locally) can help with getting you back into it, as you can look at the step-by-step history of what you have done.

If a task needs some refactoring, I often do lots of small micro-refactorings (if possible), ahead of the actual feature change/addition, which also helps break the task down.

0

I'm missing one thing in most answers here: the team you are supporting is a team, which means it's a group of people.
I have the impression that, when an individual from that team is having a problem, his/her first actions is to come to you and ask you for help.

This is wrong!

The situation should be: when an individual from that team is having a problem, he/she should write it down, and try to continue until a new problem comes up. He/She should also ask for help from his/her collegues inside the team, and at fix periods the team should send you a list of issues they are not capable of solving by themselves. Those lists must be visible by your boss, so that he has an idea what you need to deal with and this procedure must be agreed upon by your boss. This is in fact a good test for your boss: you are creating a procedure to enhance your situation, if he's not supportive to such an approach, you might conclude that your boss is not benevolent, which is indeed a good reason, either to go higher than your boss (if possible) or to leave the company.

Next point is your ability to enforce such a procedure: it's one thing to invent and propose it, it's another to enforce it. From the fact that you are exhausted by the current situation, I derive that you are not able to say no to a person, an attitude which is commonly referred to as being non-assertive. For a good understanding, by assertiveness I mean the capability to:

  1. have respect for other people (you are willing to help that person)
  2. have respect for yourself (you are capable to express yourself)

Lacking of 1 is referred to as aggressive attitude.
Lacking of 2 is referred to as passive attitude.
Lacking of both is referred to as manipulative attitude.

In case you recognise yourself in one of the "Lackings", I propose you to follow a course on assertive behaviour, and so again we have a test for your boss: if he's benevolent to the procedure, he should also be towards giving you the possibility to enforce it yourself, so he should be easily convinced to let you follow such a course.

Good luck

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .