3

I work in a small company that is expanding quickly, as a result there are many high priority assignments that come up with very quick turn around. I can't complain about the assignments, they have very good visibility, I get the resources to address them how I think is right, there is generally enough time to address them, and I am not penalized for triaging tasks that cannot be accomplished in parallel. Most imporantly, it fits my working style, but they consume 100% of my time.

There are lowest priority general maintenance tasks that require my attention and are related to my work. For example development infrastructure maintenance, regular technical review, and addressing technical debt (bug burndown) that are being triaged away, always

At this juncture it is starting to effect my productivity because usually a delayed maintenance task that becomes a gating issue for a high priority task means high priority maintenance. Or I am spending my personal free time doing these background tasks. More troubling, however, are mistakes due to this maintenance debt has caused errors that require a lot of time to fix.

In addition to communicating the issues to the management team, what steps can I take to manage or incorporate the regular low priority tasks into a work day that is interrupted by high priority tasks?

  • 1
    I don't think this really has a general answer. It seems like you just need to take some time now and again to do such tasks. But we don't know what your workday or these tasks look like, or how you like to schedule your day, so we can't really say when or how you should take this time. – Dukeling Nov 6 '18 at 8:04
  • @Fattie that looks like an answer to me – Kilisi Nov 6 '18 at 9:12
  • 2
    Possible duplicate of How can I convince my manager that we need to reduce technical debt? – gnat Nov 7 '18 at 9:58
3

You're facing "code debt".

This is the very nature of software engineering.

Every software project, and every software engineer faces this, continually.

It is the central nature of the industry, the science, the art, the technology of software.

In spite of trillions of dollars being spent over the 20 years of modern software on trying to solve this problem, there is no solution.

(There have been lots of hilarious attempts, which have amounted to: nothing.)

That's it. All you can do is

(1) constantly explain that you need another staff member

(2) juggle and balance

{Noting though that 1 is pointless. It would be like stating "breathe". Every single software team, group, enterprise, individual, constantly, 24/7/265/60/60, has the overwhelming problem that they are desperately short-staffed. So it' utterly pointless bringing this to the attention of your management.}

Really this question should be migrated to "software engineering", I think.

  • 3
    option 1 would work with me, I'd look into the work and hire someone to help, it's a normal part of the expansion process. – Kilisi Nov 6 '18 at 9:48
  • 1
    I would argue point 1 may not be pointless. Given the small nature of the company and their ever-expanding attitude, they just may not have realized they need to hire more to keep up, its not necessary they 're aware and they actively avoid it per se. Its worth at least a mention in regards to technical debt and demonstrating how it can derail oncoming priority issues and cost the company far more dollars in the long run.. – Leon Nov 6 '18 at 10:23
  • Also, its worth noting, when I get super busy with maintenance and new delveopment, I get my team leader to send me an email with what I ought to be working on. If the things at the bottom of the list keep getting pushed down due to other priorities, that's not my fault, its just the list I was given. – SaggingRufus Nov 6 '18 at 11:25
  • 1
    and then you get a new team member, and you have to explain why we're not getting new features faster – rath Nov 6 '18 at 13:21
  • Option 1 would work with me as well (and has in the past), I've also successfully used option 1 to get an additional staffing resources. – motosubatsu Nov 6 '18 at 15:22
1

This is also an issue that needs to be measured, and discussed with project management. Keep a record of what you do each day – what requests come in, and how you spend your time. (Project Management software, including the ubiquitous Microsoft Project, is extremely helpful.) I use a simple time-keeping application which runs on my desktop all the time. I also use it to keep a "running log" for each project which I update throughout each day.

I'll stress the importance of gathering measurable data, because these data will not reflect "what you thought or remembered them to be."

Your present experiences obviously represent technical risk to your employer and to the projects that you are responsible for, and these risks need to be objectively and continuously measured so that project management and senior management can objectively determine where the risks are, how serious they are, and what ought be done about them. (Really, all of your co-workers should be doing the same thing. It takes a little practice to get used to it ... but the insights are priceless, and usually a surprise.)

0

Face it, you don't have time for analytics, presentations and long business meetings about this.
Stuff just needs to get done and you need time to do it.
If management can't get their head around that then all hope is lost.

I used to be in the same situation.
And getting out of it requires you to start playing the senior developer/management cardgame.

Gather how much time per week or month you need to do for certain tasks.
Make a 4 week schedule for days and half days dedicated to each of your tasks.
This is your budget of hours that will be spent on those tasks.
Make it clear that critical bugs are only the ones that completely take away a key functionality and cant be delayed.

Only these 'real' critical bugs can move the schedule but you are still going to use that budgetted time before the end of the month if you need it.

Only spent over time on critical bugs and tasks that can't be done during working hours.
Nothing will go into personal time without pay, don't let them take advantage of you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.