9

I'm a software professional working for a start up. I have worked on many different technologies and platforms at that company. I have been working for them for 1+ years and they are impressed with my performance. I got to know about about that in a meeting. My total experience is 3 years(including all my part time jobs).

I have some juniors and the majority of them are still learning. The juniors take too much time to complete their assigned tasks. I've helped them as much as possible. I can confidently say that if a deadline is in 4 days, submission will be done after 10 days!! My lead and I have struggled a lot but no use.

That ruined my lead. He was excellent at technologies, but due to team players problem he got a bad feedback he couldn't tolerate for a long time and he left. Now the company has turned their eyes on me and they told me at noon, today, that I'll be put on tech lead position starting Monday(after 2 days).

Since being told of the promotion, I'm been very concerned that My tech lead who was a genius, couldn't handle this. How can I?

I would like to reject this tech lead position's offer. I'm planning to say that I don't have enough experience. I can't think of any other reasons. You guys might say like "say the actual problem" that is caused from juniors, buy management already knows that. They tried to convince my tech lead with that as well (Company screwed him even after knowing that). The work is too heavy and challenging as well. We work for more than 12 hours a day (Start up as you guys might know). I don't like to leave this company but I need to reject this tech lead position offer.

How can I reject the promotion? Or how to handle things if I accept?

  • 6
    Perhaps take this as an opportunity to fix the problems? In some ways, it sounds like you have an estimation issue - you expect things to take less time than they do take and you need to adjust the estimates to account for how long juniors actually take. – Oded Mar 23 '13 at 16:29
  • 5
    Telling juniors clearly when the deadline is does not help them achieve it. How have you tried actually helping them to achieve this? The other questions you haven't answered is whether the company considers the performance of your team acceptable or not? It sounds like they shouldn't, but if it isn't then why are they promoting you? – DJClayworth Mar 23 '13 at 19:09
  • 1
    Completing their tasks isn't helping them to be better either. What your company will be looking for as a leader is for you to show them how to do stuff; teach them and explain things to them. – DJClayworth Mar 24 '13 at 19:35
  • 1
    The question presupposes that you must accept this promotion. You do not. It may cost you hassle, or even this particular job, but from what it sounds like, that would be a blessing in the long run from a professional perspective. Never forget you have power and deserve respect. – huntmaster Mar 25 '13 at 15:10
  • 3
    possible duplicate of How will management react if someone refuses a promotion? – Jim G. Mar 29 '13 at 14:56
27

Any company that ignores estimates, pays salary, doesn't give you ownership stake, and gives you half the time to complete tasks is exploiting you. The only reason the company is still operating is because they depend on their technical people to not understand this. They are bullying you into a position and using fear to control you and take your power away.

You can choose to be treated with respect but you risk their vindictive anger towards you. Nothing angers a bully more than being stood up to so they could fire you and give you a terrible review for not being easily exploitable.

Knowing these risks, be extremely confident and do not show any fear or emotion if you choose to turn this position down. Further make it known that you care about the success of the project and the company but that you refuse to be set up for failure. By laying it all out on the table, you make them and their motivations entirely transparent and this weakens their position. Again though, they will either concede your right to refuse the promotion and excessive overtime, or their weakened position may incite their rage. Be prepared for the worst case scenario but know that you are a free man able to make free choices.

If I were a single man with little to lose then I would choose my freedom. Even if I were interested in the position I would turn it down on the principle that it was being forced on me without my own choice. If I had a family and children that depended on me then I would make the strategic decision to accept the exploitation while slowly looking for a job that affords a better lifestyle.

  • 4
    That was a clear cut suggestion for me. I really consider your words. I'm really interested in taking my own decisions with some suggestions. You gave me one. Thanks a lot...+1 – Vinay Mar 23 '13 at 17:48
  • 2
    Maybe not looking for another job so slowly, however. Be picky in finding a better job, but don't be slow about it. – thursdaysgeek Mar 25 '13 at 18:24
9

If your juniors are having problems, why are you reluctant to help them? You are a lead...so lead. If they are taking much too time, find out whether the bottleneck is occurring. Do they not understand the requirements? Have they not figured out the best strategy for implementation? Do they need more training in the language and/or environment you're using? You can sit there and simply blame them because things are taking too long, you can take the time to find out why things are taking too long. Since you are the lead, you're driving the development process. I'm presuming you have either developed or have been given an architectural strategy to follow. It is your responsibility to make sure whatever your juniors produce fits into that strategy.

If your superiors don't understand that it will cost them more in the long run to replace you rather than give you the time you need to bring your people up to speed and to produce a quality product, then you really need to consider finding another job. Clearly, your superiors have no experience with developing systems. Software development is an investment...if they wanted an off-the-shelf, ready-to-use product, they should have bought one. You need to push back, manage their expectations, make them understand that this is a process, and guide your people along so that they can be more productive as they gain experience. It's a lot of responsibility for you, but if you expect to be successful in this arena, you're going to have to learn that nothing comes easy and our role is actually to help people work with systems they don't understand, just as much as we build systems that will allow people to be more productive.

  • I understood your words just now. Thanks a lot Neil. – Vinay Mar 24 '13 at 14:34
8

You need to sit down at tell your potential boss what your concerns are, most importantly why you think that you are not ready for a promotion. Listen carefully to what he/she says and see if the suggested promotion has been thought carefully through or if it is just a matter of choosing the best talent of what they have left.

If you can't see that they have thought about how you'll be able to tackle whatever the problems are, state them much more clearly and make sure that they are understood. Make it clear that promoting you means helping you to solve those issues with whatever tools, resources and people that may be needed.

After having had that talk, check to see if they are ready to provide you with something convincing, or it's just a "sure", "whatever you say" - reply.

Your gut feeling doesn't have to be good in the sense that you feel that you're in your comfort zone. This could well be a challenge that will make you grow, and that's never comfortable in the beginning.

4

I can clearly say that deadline will be after 4 days and submission will be done after 10 days!! Like we take too much of time. My lead and me have struggled a lot but no use.

You are causing the problem here. What do you expect from setting arbitrary deadlines that don't reflect the actual work rate of your team? You've suggested that you are not entirely in control of this process, yet you do clearly have some influence. It is your responsibility to refuse to comply with unrealistic demands, for the sake of yourself and your team, and make the demanders understand why.

If I were in your position, I could only imagine taking the promotion on at least two conditions:

  • The company must help me to become a better mentor and help my team members improve their productivity, which will entail specific, timely, measurable objectives for continuous professional development (for myself and for the team). For example, the company commits to sending the team lead on an agile methodologies course before the end of the year and they MUST actually do so.
  • The process of setting the development schedule will be based on actual measured productivity of the team and not on what management desires to deliver. Unrealistic deadlines will be missed and the result will be poor quality code and a burned-out team.
  • You two conditions are really helpful :) – Vinay Dec 20 '13 at 4:35
2

There are 3 scenarios here:

  1. You turn it down
  2. You accept, and fail to improve things like you predecessor
  3. You accept, and succeed

If you turn it down, they may find a lead who can sort things out, or another who doesn't know the situation and fails too; given the history I think the latter is more likely.

If you accept, then you will have to do something different to your predecessor. Management is not about miraculously making your junior employees work 2.5 times quicker, in order to please the higher management. It is about coordinating your team on one hand, and protecting them from excessive workloads on the other.

You can accept the job, but you will need to step up your game - you cannot just say yes to management and whip your juniors. You need to improve your relationship with them and earn their respect, while giving clear feedback to upper management about what work you will accept.

A lot of technically brilliant people are bad at managing people, because it is a completely different skill set; why would being good at writing code make you good at coordinating humans? Be aware that if you are pulling most of the weight on the team, adding management to your responsibilities will lower the capacity of the team as it will take up your time and energy.

So I would say that if you are willing to change your skill set to be a manager, and willing to change your attitude towards your juniors from frustration to support, then accept the position. It will not be easy, but if you step up to it, you may be able to turn the ship and make your team one that delivers on time, where the word of the team lead on what can be achieved in the available time has meaning to upper management.

-5

To put certain things in context:

I discovered in the 1970s that the amount of trouble you could get in was a function of the available memory, thus the scale of what you would promise in 1975 was roughly $60K, by the late 1970s $120K, and by the mid 80's $640K. Now it's obviously in the billions.

People mistake the complexity of the software platform for the complexity of the problem, thus if it 'fits' in a 4Gb single core server it's 'less complicated' than if you have to compile and run it on a server cluster of 16 cores of 8GB each.

The US has decided to implement a 'Universal' health care law in 2 years. This is a deployment affecting 20% of the economy. In the 1960s we decided to launch a man to the moon, a project that took 8 years and some fraction of 1% of the economy at the time. Thus politicians have mandated software deadlines in thousands of companies without any respect for available resources or physical capacity to comply. Politicians do this all the time. Management hands directives down to staff and consider their part in the matter settled. 'If only' it were that easy.

In a startup, there is a certain amount of cash, and something has to work before that cash runs out. If the original estimate was optimistic, the money runs out and the investors are left stranded, including most likely some of the company management.

Realistically, in the problem stated above, there are insufficient resources. Some of these may be inherent - 9 women cannot make a baby in 1 month. Others appear to be 'solvable' by throwing more bodies at the problem, but then one runs into the 'mythical man month'. This asserts basically that as the number of actors increases, the overhead of communication and collaboration increases to the point where the project takes even longer.

There are several ways to slice the software developer pie. One of them is to count the number of organizations and/or departments with 50 or more employees, and divide that by 1.2 million. In short, count every large school district, every military base, every large municipality, every commercial wholesaler, every manufacturer, every airline, etc., etc. and figure that each of these companies needs either one or a team of software developers. At some point there is a 'surplus' of either employers or developers. At present, given the heavy recruiting going on around the country, it appears that the supply of developers runs out first.

The second one is the 'venture capital puddle'. Supposedly there is $2 trillion on corporate cash accounts and another $2 trillion in individual cash accounts. Some component of this cash could be invested in startups. A raw division yields $3.3 million per developer, in short there is enough cash floating around idle to pay a typical programmer a lifetime of income with money left over. Therefore, there is a lot of pressure to form startups (at least in the financial centers such as NYC and CA). Under such circumstances half-baked business plans are the norm, not the exception. Executive naiveté is more or less assured. This lands on the shoulders of people tasked with delivering. Unless the team leads and the developers understand the forces at work, they will beat themselves to death for what is likely to be a lost cause.

If you know the project is a disaster, refuse to take the lead position. If you're trying to explain why, send your managers a link to this answer. If you don't trust these numbers, see if you can find another that is more realistic. It is safe to say that the entire developer community is overloaded and that this is a fundamental constraint. Your problem is simply a paper thin slice of the bigger picture.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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