views:

118

answers:

8

Hello;

I work as a PHP developer, and my boss is driving me crazy. He calls me every now and then, gives me tasks even when the previous tasks haven't been completed. Forbids me from meeting with clients and tells me incomplete specification verbally or over the phone, and expects to have working applications from the first deployment. Can any body suggest a way to curb this guys enthusiasm?

A: 

Talk to him about the communication problems. It's usually a two-way problem. If he's giving you incomplete specs, why aren't you asking for more complete ones?

If you just want to stick it to him, then find a better job. If you're committed to making it work, then put some serious thought into the root of the problems you're having, and get him on board with helping you solve them.

womp
A: 

I'd suggest having some sort of task list somewhere so that when your boss adds something to this list, he can see what you are doing and have estimates for how long some things will take.

As for the requirements being incomplete, this is why some like Agile approaches where you would get your boss in to test something regularly to verify that it is acceptable before putting something into production.

JB King
+2  A: 
  • document what you are spending your time doing.
  • document requirements as they come in (through whatever channel)
  • provide both of these to your boss as frequently as necessary in order facilitate conversation about missing requirements or prioritization of your time
RedFilter
A: 

As others have mentioned who can type faster than me, one thing you can do is to try setting up some type of project management/bug tracking system for him to use. I've used FogBugz with success which requires no installation and has a free plan for small teams. You can setup an email account that he can send requests to.

When proposing this to your boss, do it in a way that will show that your goal is to help keep track of your tasks and priorities. But also be prepared for additional work. If he is agreeable to it he may want to see frequent status reports and where you are spending all of your time.

Jonathan S.
A: 

If you can get more complete specifications this can help drastically. It'll help you understand the project better. It'll help you estimate time for completion. And my favorite -- it'll help prevent double-work. There's nothing worse than getting incomplete requirements, building something wrong, and then finding out that you need to redo it.

If you can I'd try to find a good way to suggest this to your boss without stepping on any toes. If he understands the benefits he may be more open to the idea of being more thorough with you. What it'll really do is make you more efficient at your job.

Oh, and you may want to take a look at my answer to this question relating to time estimation: http://stackoverflow.com/questions/1262963/how-am-i-supposed-to-know-how-many-days-something-will-take/1262988#1262988

Steve Wortham
+1  A: 

Start looking for another job and give him a pre-notice. This will curb his enthusiasm. Some people are to be avoided at all costs.

//Only two things are infinite, the universe and human stupidity, and I'm not sure about the former." --  Albert Einstein
Elzo Valugi
A: 

The other suggestions of keeping things in writing at least for yourself are valid. However, for the kind of boss you describe with which I have some familiarity, it may not work.

Some bosses just never learn or already know what they are doing is wrong and do it anyway because to them, saying "yes" to the client and getting a signoff on a bigger contract today is more important than programming methodology that could delay a payment for 3 weeks (testing? why do we need to test? you tested it, right? two weeks for function X?! all you have to do is add a button, right?).

To many bosses, programming is just one of the tools needed to run their business. To them, it's a business to make money and programming methodology/quality is secondary.

What you do to keep yourself sane and safe if you want to stay with this boss is at least keep written records of every request and when problems come up, remind him why they happened. If possible, ask that all specs be delivered at least by email instead of verbally.

You always have the choice of going somewhere else if things don't improve.

Good luck.

DyingCactus
A: 

I have struggled with this same problem at a few jobs.

I've observed that there is a type of programmer who can survive in this environment: one who simply works on whatever the boss says is the priority of the moment, and doesn't worry about deadlines at all. Just keep putting things on the back burner, and resume working on them the next time the boss asks for it. Endure the occasional tirade from your boss when something he asked you to start 12 months ago isn't done yet, because you've been working on whatever he gives you.

If you aren't comfortable with that sort of existence (and I would not be), then the best strategy I can suggest is that you have an open conversation with your boss about it:

It's important to me to do a good job, but I feel like the work requests are coming in faster than I can complete them. I know that priorities inevitably shift, so I'd like some help from you to understand when this happens, and how to balance my time among the tasks to best meet your needs. Can we talk about how to stay in sync about priorities?

If the tasks can't be prioritized, then I need you to understand that I can't be productive on so many tasks at once. It's just not humanly possible. Have you considered hiring additional programmers so we can balance the workload and get it all done in a timely way?

If he tries to stall or contradict or tells you to "work smarter, not harder" then you can escalate:

Let me put it another way: if you continue to give me tasks at the rate you have been, but don't prioritize them clearly, then you are going to hire another programmer. Whether this hire is your second programmer, or else my replacement, is up to you.

Basically, communication is good. Start by being diplomatic and phrasing everything in terms of how you contribute to his success. But increase the degree of bluntness until it sinks in.

Bill Karwin