0

TL;DR bold text is the important bits.

I work at a small company (<20 people) and I've noticed what appears to be a gradual worsening of favor with my boss. I do programming work primarily now but it isn't what I was originally hired for, and software is supplementary to the business's bottom line.

On several occasions I have been assigned a project of low to medium-high (but not top) priority, that involves long-term work that I can get done mostly self-sufficiently. In each case these projects are ones I am quite excited for and I find I learn a lot in the process. I also feel satisfaction as I believe they would be of long-term benefit to the company.

However, each of these projects ends the same way. I reach a blocking issue where I need a straight answer to a certain difficult question that I am not in a position to guess or declare myself. I politely ask for an answer through email, always met with radio silence. I use weekly in-person meeting time to ask him the question directly (which HR specifically set up so I can ask him things), and he dodges the question, or the meeting entirely. Example:

Me: "I'm unclear on the intended behavior of this [currently nonfunctional] feature, what should it do under circumstance?"

Boss: "This feature is supposed to be similar to other_feature, but I added it because history and I wanted to do vague_something in different_circumstance...anyway..."

Me: visible confusion

After weeks or months of various attempts to squirrel an answer out of him (as the lack of an answer is a blocking issue), he puts the project "on hold" (which here always means abandoned) and tells me priority should be elsewhere on higher priority tasks.

Note that I'm already doing the higher-priority tasks when working on the larger projects, but I finish them fairly quickly that I'm able to get back to the bigger project by tuesday or wednesday each week. This has happened three times now in the past 8 months.

I don't enjoy these top-priority tasks, for several reasons:

  • I have been told in the past that when working this this area of the code, to avoid adding new classes and methods unless necessary (this is C#, making classes to represent different things is the whole point). This forces my hand into writing bad code, and it feel like it's damaging my habits as a programmer. (On top of that, I feel dirty when I write code like this.)
  • The tasks are often repetitive, and does not teach me anything new. I feel like my growth is being stifled.
  • I have very low confidence in what I am told to do. Typically part of a niche feature requested by a prospective customer, which is insisted to be strapped on to one of our programs it's ill-suited to. (It's not the idea that bothers me, it's the design I'm told to implement.)
  • I am literally wasting time because I'm not allowed to do work otherwise. I can try to ask for work, but how do you ask for work from an evasive manager that is perpetually unavailable and gave you strict limits on what you can work on?

I still get them done, quickly and quietly. But it's demoralizing when this is all I can do.

More significantly, the pattern of shutting down communication about non-critical long-term projects I work on, forcing them to stagnate, then canning them, sets off alarms for me. To me, it seems like the boss does not trust or respect my abilities beyond short and simple code-monkey tasks.

I have not asked him about these concerns directly. I doubt I'd get a real answer even on a good day, and I definitely haven't worked up the courage to make the attempt.

All of this is very stressful on a day-to-day level and I feel consistently helpless about it.

There's also a bit of paranoia that tells me that tells me all of this might be an intentional effort to get me to quit without firing me. Blocking communication, limiting my usefulness, assigning me exclusively to seemingly doomed tasks, they seem like if they were intentional, would all point to wanting to be rid of me. It could very well be paranoia over simply bad communication, but I honestly can't tell anymore.

Is he trying to get rid of me? If so, what do I do to try to improve my situation while I try to look for work elsewhere? If not, is there any hope of me getting these issues addressed, or do I still have to find a way out?

Also: I lack proper qualifications for a real programming job (college, years of professional experience, evidence of my proficiency claims), so trying to stay in this field will be very difficult if I need to leave.


EDIT: To be clear, I understand that the unfulfilling top-priority work needs to get done - I always do so, without visible complaint. I also understand that a lot of projects (especially non-top-priority ones) will fall flat due to changing circumstances.

My problem is that they stall from lack of necessary definition or executive decision, and that stalling ends up getting the project canned, which reflects badly on me, as if I'm not fit to work on it. It feels like I'm not given a fair shot.

9
  • 2
    They’re a lot of programmers in your field that never went to college and are very successful. Computer Science is one field that doesn’t have a single qualification standard, and most, can be earned on the side if that’s what you are worried about.
    – Donald
    Commented May 21, 2023 at 13:34
  • 1
    @mattfreake My boss is the one putting the projects permanently "on hold", if I wasn't clear. He's never explicitly stated, but he implies the reason to be in order to focus on the top-priority work (which I was already doing in a timely manner).
    – tageta72
    Commented May 21, 2023 at 19:45
  • 1
    One thing, you say " I can try to ask for work, but how do you ask for work from an evasive manager ... ". You tell them "I have finished X priority task and have no other tasks since non-priority task Y was canned. What should I do, I have literally no work" Commented May 21, 2023 at 19:50
  • 1
    @mattfreake Exactly. Though tageta72 says they have other work to do, and are doing it. Maybe the boss thinks they aren't working hard enough on that, or that they aren't being proactive enough on that, or that there are parts which aren't being done well enough. Let the boss know exactly what you're doing and if you feel you have spare time ask them what else you should be doing. That may not be what you wish was the right priorities, but it's the priorities you're getting paid to work on.
    – keshlam
    Commented May 21, 2023 at 20:09
  • 1
    TALK TO YOUR BOSS. Tell him that you're spending more time idle than you're comfortable with and ask what his priorities are for that time. If he still gives you a blank, ask him whether he'd object to your using the time to improve your skills, and which skills he thinks will be important in the near future. Coding isn't the only way to be productive, even for a code monkey.
    – keshlam
    Commented May 21, 2023 at 23:32

3 Answers 3

13

A lesson I took from my first programing job was this: At some point you need to make a decision and execute on the project. To me, it looks like your boss simply cannot care to think about these side-projects.

Briefly, here's how this issue came up for me: For the first time my workplace thought it would be a good idea to do code reviews. This was in an era when no automated tools for assigning responsibility for that existed. So I had a meeting with a half-dozen engineers, presented a design, and got feedback on things that should be changed. And I presented that in another meeting, and then another meeting. There was no process or responsibility to actually "approve" or sign-off on the design. So my lead said to just make up my own mind and declare it done to my best judgement.

Consider this: When a question like this comes up, email your boss -- and include a suggested best-guess resolution. If the boss is unable to answer on their end, implement that solution. If it turns out to be sub-optimal, they were informed in advance. Politely say that's what you'll do in the query email.

Other answers may have alternate strategies you should consider. This is broadly what I do in my academic job for a tough, time-sensitive student-behavior issue -- alert my chair with the question, say what I would think to do by default, and that if they're too busy to reply I'll plan to do that in a few days time.

Addendum based on comments -- It seems like there may be a preponderance of evidence that the climate for development in the OP's position is not good. E.g.: (a) boss demands advance confirmation before executing changes, (b) boss declines to give that confirmation, (c) no long-range planning (1-2 months) is done or possible, (d) no bug or feature list is officially maintained, etc. Note that the OP says programming work "isn't what I was originally hired for".

Together I think this suggests that the OP, with the experience they've gained to date, is at the right stage to take the next step in their career, and get a dedicated programing position at a different company, one that's structured to focus on and support that. Consider sending out resumes and see if something better is available to you.

2
  • 2
    I have actually tried this on the most recent project he canned. Given a suggested best-guess resolution. I started to rework after a couple days and got called in once he noticed, and firmly told me I need to be confirming with him before I make a decision like that. The next day the project was canned.
    – tageta72
    Commented May 21, 2023 at 15:43
  • 2
    It sounds like what the boss wants you to work on isn't what you want to work on. Talk to them, find out what they want you to work on, deliver that in an outstanding fashion. If you want to "skunkworks" something, do so on your own time and present it as a solution ready to be tried.
    – keshlam
    Commented May 21, 2023 at 20:11
0

I suspect that from the manager's perspective the situation is more of: let me find a project to give this young person who has extra energy. The projects are not important but might help some customer. However, I need the young person to work on high priority stuff when it comes in. And when the young person hits a wall, drop that unimportant project and find another. The manager doesn't have the extra time to find the reason for the wall so that the unimportant project can continue.

Remember that your job is to work on the high priority stuff. This programming work is to fill up your slack time.

Therefore, the issue needs to be how to get past the walls that you run into. That you get stopped is more worrying than the project getting put on hold.

5
  • The thing is, it's not me "hitting a wall", like I don't know how to implement something and I need help. It's executive decisions that I have no business making. If new_feature should be A or B for the end user, or whether to make use of A or B paid service for an administrative problem. I try to ask, but I can never get an answer out of him. In places where it's technically possible for me to guess, I've tried guessing, but if I guess wrong he gets upset. I'm not a mind reader; if he won't tell me what the requirements are, of course I'm having problems.
    – tageta72
    Commented May 21, 2023 at 15:35
  • 1
    Ask him to write out what your priorities should be for the next month or two, "to help you focus on them." It may not be new features; it may be bug fixes (how deep is the backlog? You should know that!), documentation, refining existing features, security... In fact, if there is a backlog stored in Jira or some other prioritized issue-tracking system, and the boss is maintaining that correctly, that gets you a long way to knowing what the boss needs you to be working on.
    – keshlam
    Commented May 21, 2023 at 20:14
  • 1
    1) I can guarantee any request to him to organize my work will result in silence. We have scheduled weekly meeting time to basically do just that but it's useless. 2) We have no issue tracker (believe me I've tried), but in lieu of it I've been maintaining a txt file with brief descriptions of known bugs. Backlog is long, and nearly all of these bugs have met the same "on hold, don't work on it" fate as larger projects.
    – tageta72
    Commented May 21, 2023 at 23:37
  • 1
    When you say "will result in silence" what does that mean? When you say "what should I work on next?" does he refuse to answer? Is his answer unclear? Something else? Commented May 22, 2023 at 11:44
  • @tageta72 - Short of somebody telling you what to implement something, you must learn to make those decisions yourself, and notify your manager of the reasons you made those decisions.
    – Donald
    Commented May 22, 2023 at 17:14
-1

There are times in life when listening to your paranoia should be internal red flag to you. The Boss by reducing your workload in an attempt to frustrate you in quitting instead of firing you or laying you off. When he evades responding to you this is another attempt to frustrate you. Same objective different technique. Don't bother with H.R as they work for the company not the employee. The answer to all your questions is a definite YES

Consider very strongly updating your C.V. and look for employment elsewhere as this is not worth destroying your mental health. In your next interview go out of your way not to dump on a former employer as that will destroy your chances for being hired. The reason for this is simple. If you dump on a former employer during an interview the recruiter is thinking "What is this new guy going to say about in the in the event that he leaves the company in the future?" That is not a professional attitude regardless of how tempting it may be.

If you are worried about what your former employer will say about you. Employee information is confidential and they are seriously limited about what they release because risk being sued.

A wise man once said "If everyone is out to get you paranoia is wishful thinking"

You must log in to answer this question.

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