I was hired as a software engineer contractor to solve a particular problem in a big tech company. I feel like I've solved it, because there is less and less work coming my way, but there is still 4 months left in my contract. I've been working less and less hours to try to spread the workload to hopefully finish it right before my contract ends, but it doesn't seem like I can do it. My thinking was that if I finish my tasks quickly and efficiently, the big tech company will give me more cool work, but they don't give any cool assignments to me for some reason. I don't know what to do. Should I just come to work and stare at the screen doing nothing, collecting my money? The company is big and famous and has money, so they will probably not mind me doing it, but I am afraid I will go crazy. I mean, it's 8 hours per day for the next 4 months of just string at the computer screen. I don't want to pretend that I work, because I would feel guilty doing it. And I would not even know what to do to pretend well. My manager wants weekly report on what I've done. Should I write "Stared at the computer screen" or "Pretended that I worked"? I would feel weird and guilty writing this in my report.
3 Answers
There is always something more to do in software. This sounds like a dream opportunity.
Think of the poor chap who will have to maintain your code:
- Is your documentation complete and up to date?
- Write more unit tests (you know you need them)
- Don’t try to tell me that your code has no FIME, TODO or XXXX comments
- And zero compiler warnings?
- Did you lint it (static code analysis)?
- And does it have enough comments? Are your variable names meaningful? Is there nothing to refactor?
- No new features that you could suggest to management?
- No support tools to make life easier?
- The first project in history with zero technical debt ?
If you truly have nothing at all to do, then you might find something you would like to learn, which you can pass off as work related to any non-tech who glances at your screen & sees you doing “programming stuff” (especially if you think it would help you in future projects with that company). But you really shouldn’t have to; just go through the list above.
And of course, there are always the alternatives of looking for another job and/or explaining to your boss that you are out of work & would like a new project (at the very least, subtly enquire if there are any new projects on the horizon & express an interest).
-
Exactly, the question is nonsensical. The answer is simply "refactor".– FattieJan 10, 2019 at 13:26
-
To be honest, I've never known a software professional who would have considered time to spend documenting as a dream opportunity. Jan 10, 2019 at 15:43
-
1I would add: are there any algorithmic or other performance improvements you could make (and benchmark them) Jan 10, 2019 at 17:23
My recommendation would be to go to the manager and let them know that you are running out of work and ask if there is anything else they need done.
Something like:
I'm almost finished with XYZ, should be done in about X days. Is there anything else you would like me to work one after that?
Generally I don't recommend just sitting around waiting for work to land on your desk, you want to portray yourself as being proactive and productive.
It is not uncommon but before you "collect money staring at the screen" you need to ask for assignments and further work.
If they have nothing to do at the time you may suggest to do R&D, training or some other company or future projects related work.
There is always something useful for yourself or the company that you could find to do, really.
However, if your superior suggests to surf the web or stare at the screen, by all means, go ahead and do that.
Make sure to have it in writing and a papertrail of your requests for work assignments.
Repeat every week or two to stay in the clear.