Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Where I work, projects take a significant amount of time because the teams are large, there is a lot of "design and analysis", a lot of documentation, and work always gets pushed off. I work in the middle tier and I always have to wait for the services and client folks to get their work done. Oftentimes there are weeks at a time when I can't get any work done. I feel bored and weird just sitting here scrambling to at least appear like I am busy. Management seems to do little when asked for more work.

What do you do in such cases?

share|improve this question

closed as not constructive by Walter, gnat, maple_shaft Aug 30 '12 at 16:22

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
Documentation can always be improved... –  user1249 Aug 30 '12 at 18:00
add comment

2 Answers 2

In that situation, I try to figure out why I'm blocked from doing work, and then I do work to remove the block, even if it is speculative and won't get approved. For instance, if you're waiting around doing nothing because you need service code to be delivered to you, start writing and consuming that service code yourself, in a playpen somewhere. Worst case scenario is that you learn a lot more about providing that service. Best case is that get accolades for going above and beyond and remove a block keeping you from doing useful work.

My general mantra there is to figure out what's blocking me and what it would take to remove the blockage. If others aren't willing to remove it, I'll do it for them.

share|improve this answer
    
+1: Make a branch and start work on the thing that is being delay as best you can or a nice to have that will only ever get worked on if there is down time. –  unholysampler Aug 30 '12 at 16:01
add comment

I learn. By that I mean spend my day reading blogs, visiting varies sites on StackExchange and answering questions when I can, throw-away code to try new things, work on understanding a language better, look at different languages than what I work in, tutorial videos.

One of the things I love about this job is the constant learning. There is always something new that you should at least understand to have in your tool kit, even if you don't become an expert at it. There is functionality in languages you might not know, but that could make your job easier. New design patterns, new ideas behind development. And it is all at your fingertips on the web.

I don't think any development company would be troubled by their developers bettering themselves.

share|improve this answer
    
+1 LEARN. Well said. –  ClintNash Aug 30 '12 at 17:13
add comment

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