15

I have been working for three months as a programmer for a state bank. At first thought it would be like the other jobs in my field, that there would be a manager or coordinator who would pass on tasks to me, but it was nothing like that.

First I was put in a small team to provide maintenance for a very old system. I did everything asked without complaint, dealt with insults and jokes at my expense, but I was never rude to anyone.

Then my work dried up and I spent entire weeks without doing anything. I repeatedly asked my supervisor for something to do to but he said I should wait.

One day it was brought up that I was always on the internet, and I said that there was nothing to do.

Only then I was told that developers own have to find work to do and solicit other teams for more work.

I have since been discharged and am a bit confused, as it has always been my experience that management assigns work, and not this structure where programmers have to seek it out on their own..

Is this common that programmers are told to seek work from teams outside their own for people they have never met? I could understand if this was a start-up, but this is a bank, a financial institution.

I have read many questions here, but to be honest, I'm a programmer, I do not need to be political, my job is to code and not stand around shaking hands and making friends !

I'm senior java programmer, certified and with a lot of projects already published, why do such work environments still exists?

Cronax
  • 8,300
  • 3
  • 30
  • 40
lambdapool
  • 525
  • 4
  • 12
  • 1
    This whole thing was very difficult to read. Could you perhaps try to rephrase parts of it and be a bit more concise? – cbll May 06 '16 at 12:14
  • 10
    I'm not quite sure what you are asking. It seems you are a "senior" dev who basically expected people to hand you tasks to accomplish. To me, this isn't something that a senior developer does (especially if you were just surfing the internet instead of mentioning this to anyone to find things to do). – enderland May 06 '16 at 12:18
  • Sorry I don't speak English very well and used Google translator. – lambdapool May 06 '16 at 12:20
  • Why I cannot expect a manager getting me the tasks? I'm new here and don't know the big picture. I always worked like this, why do I'm supposed to mine tasks inside a complex ecosystem that I really don't know anything about? – lambdapool May 06 '16 at 12:22
  • 1
    I guessed at your intent and cleared up the translation as best as I could – Old_Lamplighter May 06 '16 at 12:29
  • 7
    "I'm a programmer, I do not need to be political, my job is to code and not stand around shaking hands and making friends" Being professional and cordial with your colleagues and working with not against management is far, far more important than writing good code. – Lilienthal May 06 '16 at 12:43
  • Reading this http://technologyadvice.com/blog/information-technology/are-project-managers-irrelevant/ i realized that my "manager fails at least itens 1, 3 and 6, specially at 3. He didn't express any interest at my work and conditions here. – lambdapool May 06 '16 at 12:44
  • 1
    @Lilienthal thats according your opinion and interpretation, I never treat anyone bad here. – lambdapool May 06 '16 at 12:45
  • 9
    @lambdapool Your manager may have been bad, but you're the one out of a job. We're trying to advise you on how to avoid that in the future. People in here are helpful, not hostile. Please, don't be so defensive. – Old_Lamplighter May 06 '16 at 12:55
  • 3
    Programmers do need to be political as do all employees who wish to do well in their careers. It is counterproductive to think otherwise. – HLGEM May 06 '16 at 13:15
  • 2
    See also "What can I do at work when I have no work?", as well as the linked questions listed on that page. – David K May 06 '16 at 13:22
  • 1
    I'm in a similar situation (intermediate dev) - our manager is a very busy guy, and very hands-off. Coming from a very strictly controlled environment (very tightly run ship, with managers inquiring about the state of projects, and setting priorities on a daily basis) it was quite a shock for me to suddenly have to find my own work, set my own priorities, etc. I had to overcome my own hesitation to dive into our older, complex systems, start learning the code, made my own DB diagrams, and flowcharts, etc. Then I came up with suggestions for improvement, or took on user suggestions/bugs. 1/2 – AndreiROM May 06 '16 at 15:58
  • 4
    2/2 I do not understand the mentality - especially from a senior dev - of simply sitting there and doing nothing, with the expectation that someone should walk over and place the work on your plate, as it were. *Three months* of slacking are bound to get you fired, what did you expect? If my boss walks up to me on any given day I can tell him what I'm currently working on, and give him 2 or 3 ideas for improvements to existing systems. I wouldn't even dream of going up to him and saying: "Yeah, so I have nothing to do". There is always something to do. Always. – AndreiROM May 06 '16 at 16:00
  • If you are now unemployed then yes you should seek work. – paparazzo May 06 '16 at 16:06
  • @lambdapool I didn't say that you treated anyone badly. I wanted to point out that your assumption "my [only] job is to code" is dangerously incorrect. "Working well with others" is a job requirement just like writing good code or documenting your work. Getting along with (the majority of) your coworkers is one of the most important elements to being a high performer. Perhaps things are being lost in translation but you come across as fairly entitled and naive about universal workplace norms. – Lilienthal May 06 '16 at 19:19
  • @AndreiROM this is not a startup buddy, this is a financial institution! No scrum masters, no managers, no Jira or something for discovering new tasks to do. And by the way I asked everyday my supervisor for work and he only said to me there is none. – lambdapool May 09 '16 at 14:03
  • 1
    @lambdapool - you're supposed to be a senior developer, buddy. I get it. You don't agree with how things are done there. You expected more structure, to be told what to do, etc. But 3 months of internet browsing later you're surprised that they're not happy? You can be as angry at me as you like, it doesn't change anything. For what it's worth I'm not saying they're blameless, but they probably expected a lot more initiative and leadership from you (at least that seems to be their message). – AndreiROM May 09 '16 at 14:08
  • It seems like @RichardU is the only one to tickle with the insults from the very beginning. lambdapool as you said, you asked for worked, they didn't get you any on purpose then fire you. Are you sure you just weren't targeted by some form of discrimination ? Whatever the others say about professionalism and being a Senior Dev, i think they miss way too much the part about the insults from Day 1, likely saying IMO that even if you would have been what they said. They would have find an excuse to fire you – Walfrat May 13 '16 at 12:17

6 Answers6

38

How should seniors find tasks to do?


You can't call yourself a senior developer and then act like a junior.

If you do not have any work, there are a few things you can do:

  1. Sit and wait for someone to assign you work
  2. Ask for work from your boss/others
  3. Identify things to work on and suggest them to your boss

Juniors normally do the first. They wait until someone else tells them what to do. Seniors should be doing the last thing. Taking initiative and showing an understanding of business is part of being a senior.

Management sometimes assigns work. Sometimes they assign project priorities. When you are at a senior level, you are expected to be able to manage yourself somewhat.

No one wants to hire a senior developer and then spend time assigning them tasks. If your manager has to assign you tasks constantly why would they not just hire a junior?

Dealing with problems with management


Additionally, if you have problems with the way you are being managed or how things are going, you should not wait three months until your boss has to fire you. You should take initiative to ask your boss questions like "what should I be doing in order to find more work?" People such as yourself seem to view bosses/managers as work-dispensing-things. A good employee finds ideas and suggests them to their boss.

Understanding this idea is a people-skill that is important for senior level people. You can choose to "not be political" but recognize you will lose opportunities and not be seen as a successful senior if you do this often.

It is much better to suggest to your boss, "I was thinking about working on X, Y, or Z, what are your thoughts?" than "please tell me what to do."

Preventing this problem in future


In the future, I suggest finding information during interviews about how tasks are assigned. Ask questions like:

  • How are tasks assigned? Who does this?
  • How are project priorities determined?

It will help you to find a job where you have a better fit for your expectations.

enderland
  • 110,742
  • 49
  • 328
  • 478
  • Probably I didn't understood the "corporative culture" here. – lambdapool May 06 '16 at 13:38
  • 5
    @lambdapool that's why the last section is really important. When you interview, make sure to ask questions about things like this that are important to you! – enderland May 06 '16 at 13:49
  • 7
    "No one wants to hire a senior developer and then spend time assigning them tasks. If your manager has to assign you tasks constantly why would they not just hire a junior?" Because a junior developer will make a total mess. Fortunately I have never in over 20 years worked somewhere where there was not a management provided roadmap of features to implement for the products they sold, and therefore always something to work on. Places where developers are "bored" and have to mooch around for tasks are toxic work environments to be avoided, it indicates disorganised directionless management. – user467257 May 06 '16 at 17:42
  • @user467257 that was somewhat rhetorical :-) – enderland May 06 '16 at 18:12
  • 3
    I feel like this answer misses the point. As a senior developer, it's okay to be in charge, but you should have a basic idea of what has to be done, especially as someone new to the company. Also, if you're in charge of a team, this should be clearly stated to you. The way I read the question there was not even a basic direction of what should be done and no one who he could be in charge of, which is an entirely different problem. – Sebb May 06 '16 at 18:29
  • 1
    @Sebb: In a number environments I've been in, the Sr. Devs work pretty closely with people in other parts of the business. They know the systems they are working on and the people that are using them. When you stay "plugged in" with the business then it's easy to identify areas that need improvement or even new areas to branch into. However if you are one of those that can't or doesn't interact with the rest of the business then you aren't really a Sr. Dev. – NotMe May 06 '16 at 19:06
  • @NotMe I agree with you, but I feel like he's lacking a proper introduction to his job then. I don't know which side failed, but when I'm intruded to my workplace or are asking for work I'd expect to hear "please ask our users what features they want and need" or "if you need work, simply check the issue tracker" if I'm expected to do so (Note: I'm pretty sure he'd been intelligent enough to use the issue tracker if there would've been one). – Sebb May 06 '16 at 19:43
  • 1
    @Sebb if you sit around surfing the web for three months until you get yourself fired, I think it's pretty easy to see which side was failing some of their responsibilities. The company has some responsibility here but the OP is not at all free of blame for "what should a senior dev do" - they had a lot more responsibility than they did. – enderland May 06 '16 at 20:15
  • @enderland I don't think he made everything right, but from my point of view he did it basically as last resort because the company failed to instruct him despite him asking several times. This could be a misunderstanding on his side, but if not he was probably forgotten somewhere and this possibility is not mentioned in the answer imho. – Sebb May 06 '16 at 20:28
  • 3
    @Sebb: the op said "my job is to code and not stand around shaking hands and making friends"; that to me says he didn't do what he needed to do to integrate into the environment. He might be a capable programmer, but, imho, the Sr title is reserved for those that are more than just code jockeys. – NotMe May 06 '16 at 20:29
  • @NotMe True, but I'm not sure if this all to him not finding work. Though, this makes him a rather bad Sr. – Sebb May 06 '16 at 20:37
  • @user467257 I think you understand exactly how my work place works today. I know people who didn't do anything a full month because they didn't have any manager helping out. – lambdapool May 09 '16 at 08:56
  • @NotMe I didn't have any access to any businesses, so that was not my option. – lambdapool May 09 '16 at 09:02
  • @enderland Although OP should have asked something instead of waiting for 3 months, I don't see why an employee can come up with ideas to work on? This is the job of the business. They know what problems the company has. I can't just invent tasks at my job if nobody needs them. This is not my job as a developer. If I am also coming up with ideas of which program to write, and also writing them I am more than a developer. This could even be a separate job description - a person who comes up with projects to work on, like an R & D department. –  Oct 06 '22 at 13:29
8

As you've learned, there are very different ways places do business.

Chalk this one up to a "bad fit" and move on. In the future, when you see you are not getting work, ask for more. If you don't get any, it's time to update your resume/CV.

From what you've described, they didn't really know what to do with you, they didn't treat you well from day 1, and eliminated responsibilities until they could justify dismissing you. The situation you described sounds like you were set up to fail.

No, what was done to you is not normal business practice, it's a company that wanted rid of you.

In the future, document everything. Use email instead of conversation, and when you DO have conversations, send follow up emails. "As per our conversation, I feel I am not being given enough work, please advise how I may take on additional duties and responsibilities".

Don't ever make the mistake that being good = job security. Office politics has taken out some of the best of us. A friend of mine was terminated because he was earning too much. Yes, there is that level of craziness out there.

As much as you may not want to hear this, playing politics is in fact part of the job. Next time, if insults and jokes start flying, apply for other jobs immediately while putting an end to the insults and jokes. You've seen what happens when you don't

Old_Lamplighter
  • 159,693
  • 108
  • 436
  • 585
  • Yes, thank you for advise. It was my second job in EUrope, the first one I was very good but have to go because personal issues. – lambdapool May 06 '16 at 13:36
7

@enderland has a terrific answer. I just want to add something about what you should have been doing as a senior when you are new to the organization. If you have no actual tasks to do then you should be learning about the current systems at that organization not studying stuff on the Internet or surfing it for fun.

You ask your boss which systems you should come up to speed on first and then dig in and learn that system in all of your spare time. Ask questions, create documentation, think of ways it can be refactored, etc. Until you understand the complex system to some extent, you are not very useful, so dig in and start learning them. Then if you still have free time, you go talk to the users of that system and find out what problems they have and think about whether it makes good business sense to suggest solving a particular problem. At a place like a bank, it would take considerably longer than 3 months to get up to speed on their systems so that would have kept you busy with legitimate work.

By not giving you tasks immediately, they were giving you the precious gift of time to dig in and learn the systems without the outside pressure of a deadline. This is also likely what they expected you to do when they didn't assign any tasks.

HLGEM
  • 142,324
  • 26
  • 258
  • 516
  • 1
    Very good points. At my work, we expect newer developers to spend free time and onboarding time learning the codebase of our products as well. – d0nut May 06 '16 at 17:58
  • 1
    Thank you for this response. I will be starting a new job as a junior developer soon, and this is immensely useful advice. – M.Y. Babt May 06 '16 at 18:02
  • @iismathwizard you expect but do you actively help them out on it? or just expect in your mind and just don't do anything leading to this? – lambdapool May 09 '16 at 10:20
  • @HLGEM I didn't have enough access to this real boss, I'm sit beside to my supervisor and didn't want pass through him. – lambdapool May 09 '16 at 10:21
  • 2
    @lambdapool, your supervisor is your real boss. I don't understand the point you are trying to make.HOw does that realte to what I said? – HLGEM May 09 '16 at 13:38
  • @HLGEM exactly, you didn't understand my workplace. I sit besides my supervisor, but the real manager is one guy above who ask me to leave project. – lambdapool May 09 '16 at 13:40
  • @lambdapool If they have any questions we will definitely help them understand something and it's quite obvious that if you're going to be working in a codebase you should get familiar with it. Wasting time on reddit, twitch.tv, or whatever would be looked down on and we would likely pull them into a side-room and let them know our expectations. At the very least it leaves a bad impression. – d0nut May 09 '16 at 13:40
  • 2
    @lambdapool If you were only willing to ask questions of your "real boss", and not your supervisor, then that is another problem altogether, but not one of HLGEM misunderstanding your work place. – Beofett May 09 '16 at 14:16
4

The key mismatch between your expectations and those of your manager/employer is that the expectation from a senior developer is generally that they will make the effort to get to know the ecosystem, so that they know where to go when issues arise or tasks dry up. The expectation of a senior in practically any field is that they are self sufficient, not needing someone to micromanage them.

A senior is seen as a building block, someone who can be relied on more than others and can take on more responsibility than others. How much development experience you have and how good of a programmer you are is part of what makes a senior developer, but communicational skills and self-management are also a very important.

In most companies, there will usually be a system in place that gathers up the tasks from the "business" side of the company can then be turned into projects to work on and which people can be assigned to, so it does seem odd that this would be completely absent from an organisation such as a state bank.

As more general advice, should you find yourself in a situation again where you have nothing to do, rather than waiting for new work to come to you I would advise going to your manager regularly (at least once a day) to inform them that you currently don't have any more work for project A. Ask them if they have any suggestions on what you could work on or where you could find more work. They might look at you strangely if they think you should be able to find the work on your own, but you should at least get some ideas on where you could look even if they don't have any concrete suggestions for you. Be persistent and make note of every attempt you make with your manager. This way, if they try to throw you under the bus for "not doing anything constructive" you can at least prove that you made attempts to remedy the situation.

Cronax
  • 8,300
  • 3
  • 30
  • 40
  • Here we have thousands of systems, layers and teams, separated teams coordinated each other. The issue is, I cannot just sit at ones tables and ask for a complete strange if I have some to do. I always need a help from a experienced one because I'm just aboard, I don't know anybody. – lambdapool May 06 '16 at 12:47
  • 2
    Your manager should be able to point you in the direction of the right tables, but you should definitely be able to go to the leader of a different team and tell them "I have completed my work on project A, is there anything I can do for your project?" – Cronax May 06 '16 at 12:49
  • It sounds like he did try that and that his supervisor told him to hang back, then tossed him when he did. Unless @lambdapool is a complete idiot, it sounds like he was set up – Old_Lamplighter May 06 '16 at 12:57
  • @RichardU that's why I would advise persistence. If you confirm with your supervisor twice a day that there's nothing you should be doing, there's no way they have any excuse to suddenly turn around on you and go "you should have been doing something". – Cronax May 06 '16 at 13:19
  • @Cronax and as always.... document everything – Old_Lamplighter May 06 '16 at 13:25
  • @RichardU good point, editing that in. – Cronax May 06 '16 at 13:27
  • 1
    @lambdapool - You need help from someone experienced because you are new. What most decent senior developers would do is figure out what you'd need so you don't need help from someone experienced and get it documented so future people won't end up in the same predicament. I agree with Andre; There's always more work to do than we have time for. If you can't find anything then you aren't looking. – Dunk May 06 '16 at 17:18
4

As others have pointed out, part of the issue is one of expectation for "senior" positions vs. what would normally be expected of less experienced positions.

However, one aspect that I haven't seen mentioned is one that is pretty universal regardless of seniority.

If you don't have enough work to keep you busy, then you are costing your company money. Short periods of this may be acceptable, particularly if you can fill the time productively (even if it is brushing up on your skills, or filling in gaps in internal documentation), but extended periods of "no work to do" can be expected to be a sure sign that eventually you'll be out of a job.

Your question asks if it is your manager's responsibility to find work for you. Even if you assume that it is, the end result is, as someone pointed out in comments, that you're out of a job.

Not your manager.

Even if someone higher up in the corporate structure talked with you about the situation, and you had opportunity to explain that you've asked your manager for work repeatedly, the best case scenario is that your manager would be in trouble... but you'd still be out of a job.

Because when it comes down to it, if a manager has difficulty finding work for someone, then management in general is going to feel that that position isn't necessary.

So regardless of what job you're in, if you find that you have too much time on your hands, and not enough work to keep busy, don't wait for someone to hand you more work. Find productive things to do, or start looking for another job. It's in your own self-interest either way.

Beofett
  • 3,019
  • 4
  • 22
  • 29
-3

Actually my favorite job would be to be paid and then left to let me do what i like. Then in my area of interest i can build open source software, read up on new technology install software and work with it. In fact the guy in japan who wrote ruby was working for a corporate with not much to do so he was able to create ruby. Not being busy is an opportunity. -)

john
  • 13
  • 1
  • 1
    yes my friend, unfortunately its not a option. in fact I was studying when they caught me. I was not watching any random websites. – lambdapool May 06 '16 at 16:06
  • @john I wouldn't recommend your suggestion to work on open source software to somebody new. Even under the best of circumstances it will usually take a year to be fully up to speed on a new job, unless there's not much to the job. Instead, I'd recommend a variation on your theme: Create tools to do tasks currently being done manually, write how-to documents, write/update the software documentation etc..You know, do something more directly related to the job. If you are a veteran then you will have a better feel for how far you can stray from directly work related tasks. – Dunk May 06 '16 at 17:25