5

I work for a software company. I started as an "analyst", but in my spare time developed tools and applications that were then used by my coworkers, then within the company. I then got promoted to my current role which consists of doing what I was previously doing during my spare time.

As word continued to get out about the contributions I was making to the company, some higher ups within the company got together and decided that I should probably be working as a 'software engineer', and had me interview with managers from different software engineering groups within the company.

The interviews went well for the most part, though I felt that in most cases the managers (and I realize that maybe it's all in my head) had little interest in hiring me and bothered with the interviews mainly because their bosses told them to interview me.

Feedback from the interviews was that, overall, the managers were satisfied with my technical knowledge but expressed concern with my ability to fit in with the rest of the team given that most of the work I've done has been solo.

In the end, one of the managers agreed to take me as a 'software engineer', but with the caveat that there would be some sort of testing period during which it would be determined whether it would make sense to have me continue working as a software engineer or to find me a different role within the company.

To be honest, given the lack of enthusiasm from the people I'd be directly reporting to, I'm not even sure I want that role anymore. I feel like I'd be working for people who don't believe in my ability and who will be waiting for me to fail. And maybe they are right; I have been solving problems on my own and doing things "my way" for as long as I've been writing code and perhaps they noticed personality traits that indicate that I'm not the kind of person who thrives in a 'team' environment. Yes, the people above those people are rooting for me, but they are not the people I'd be dealing with on a daily basis.

However, even the people within the company whom I trust the most have made it clear that accepting this promotion is the right thing for me to do and that not accepting it or going in a different direction will likely be significantly less beneficial for my professional career.

Probably so, but if I am going to be miserable, feel alienated, and lose the energy that has allowed me to get so much work done in such a little amount of time, is refusing the promotion / transfer a reasonable decision or would it ultimately be detrimental to my career and my future with this company?

closed as off-topic by Jim G., gnat, Jan Doggen, Garrison Neely, Michael Grubey Dec 18 '14 at 16:09

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Real questions have answers. Rather than explaining why your situation is terrible, or why your boss/coworker makes you unhappy, explain what you want to do to make it better. For more information, click here." – Jim G., gnat, Garrison Neely, Michael Grubey
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    Enjoy the rise in status, try to get it translated into more power to do what you want to do (maybe you need another monitor, more software, whatever) and see how working with these people really is. They think of you as a lone gun and you might actually want to enjoy and leverage that label. If the situation gets too annoying, try to negotiate for a better one, or leave... – Dan Rosenstark Mar 29 '14 at 17:33
15

I'm very puzzled as to why you insist on taking the most negative outlook on something that is clearly positive. My hunch is that you believe that becoming a "team player" will somehow compromise your abilities and feeings of self-worth - perhaps you'd rather "do your own thing" without any undue responsibility. IMO this is a mistake:

Contrary to what @MeredithPoor states, I can honestly say that in my 20 years in the industry as a code jockey, I have met neither a "team developer", nor a "solo developer", who was any good! A good developer mixes and discusses and learns from the team, then goes back to the work and writes code alone - solo, incorporating what has been absorbed from the team. No matter how good you are, additional perspectives and insights are always helpful and important (even on apparently simple matters), if you only allow them to be.

My advice to you is to grab this opportunity and make the most of it. Forget about what you think you "ought to be" and what you anticipate, and just do what you need to do to succeed in the role you are being offered.

Perhaps some people are indeed hoping that you'll fail - there's no denying that those things do happen - office/company politics can get very complex. But if that's the case, it should just be an incentive for you to make sure that you don't fail. If you come upon situations that lead you to believe your being forced into failure, cross that bridge when you get to it, probably by going to upper management, in a very delicate way.

Not everyone gets such a chance - you'd be a fool to turn it down.

  • 2
    I was in a very similar situation at my first "Real" IT job. I had started on the help desk and was going to college to get a CS degree with a Software Development focus. I got the chance to move up and took it setting the expectations with the managers that I would need help and guidance. Best decission I ever made. I have since moved on but will always be grateful for the oppertunity to learn on the job that they gave me. (I still have yet to finish the degree, the experience I gained has allowed me to succeed in Software Development with out it.) – RubberChickenLeader Dec 16 '14 at 18:22
  • 2
    There is no chance for advancement that does not come with risks and challenges. "If you don't take chances, you haven't got a chance" - Vector-1997 – Vector Dec 16 '14 at 18:41
6

I was once forcibly assigned to a boss I did not want to work for who didn't want me to work for her in corporate restructuring. There was no choice except leaving and I didn't want to do that. So I made it work. I did my absolute best work for her and a year later things were working out pretty well. I tell you this so you understand, it is in your power to overcome intial scepticism and make the change work for yourself.

Now the change here might be difficult, but the role you are in right now is at its limit. You have to either make the next step into becoming someone who can work in a software team on big projects or stay where you are. This move is critical to your career advancement and if you turn it down, don't expect to get it again at this company. You might still make the transition to a software engineering job, but it would end up being somewhere else. And that somewhere else might be expecting you to have everything you need to work at the level you are hired for and will offer less support in the transition that doing it at this company.

Things to do to make it work. First spend more time listening than talking at first. When you do talk, ask questions. Do not try to push your ways on them. Adapt to how they do business. This is especially crucial since they weren't wildly enthusiastic about you. One of the reasons they weren't enthusiastic is probably that they don't believe you have the ability to work well with others, so show them they are wrong right from the start. You will have your chance to influence decision making down the road. Wait until you have built up a reputation for delivering the work.

Next be aware that when you are self taught and working on projects by yourself, you have a lot of holes in your education. Have a good attitude about learning what you need to learn to fill in those holes. Accept criticism gracefully and gratefully. This is to help you be better in the long run even it if might be daunting in the short run once you find out exactly how much there is to learn that you currently don't know you need to know yet.

I personally would go to the new boss the first day you work for him and ask him exactly what holes he sees in your experience and what he thinks you need to do to get the knowledge and skills you need. Then follw his advice. This is a golden opportunity for you. He knows you are missing something, he knows he is supposed to make sure you get that something. And he offered you the job anyway. This person can be a great mentor for you. Take advantage of that. Find out his expectations, his way of working with the team and what he thinks you need to work on. This stuff is gold and you are thinking of throwing it away.

Some of the problem may not be you at all. Many people think they have the professional skills to convert to a software engineer after one or two personal projects at work which people liked. The problem is that many of those projects were nightmares to maintain and not actually well-designed. And many of those people are not able to make the transition. Many are of course (It is certainly how I ended up doing what I do), but if the interviewers have had some negative experiences in the past, that could be why they are sceptical.

You will want to find out about what your particular organization considers to be best practices. They will have their own ways of handling source control (Hey I didn't even know what that was when I first started), builds, coding/naming standards, exception handling and error trapping, database access, commenting, code review, unit testing and on and on. They may have design patterns they prefer to use and ones they prefer to avoid (and they may not exactly match up with what you read in books on websites as best practices). You are going to have to adjust to their standards and adjust pretty fast. No one can afford to have you putting things in the wrong place in source control or not using it at all or you pushing untested code to the main branch and breaking the build. There is a big difference in how you work when your work affects other people.

There will be some short-term pain as you adjust to this new work environment (True, actually, in all new jobs), but I think if you take it you will find that in a year or so, you will see it was something that positively expanded your abilities and skill sets and made you a better developer.

3

I believe you are taking the whole episode in wrong way or wrong perception.

Every role has requirement of different set of abilities, traits and attributes. In a software field not only technical abilities/skills and also there are non-technical skills or abilities like communication skills, team player attributes are very much necessary to deliver high quality of work.

Generally Project managers are responsible for deliverable with defined quality under defined timelines and hence they always look for a ideal candidate having all the required skills those can help them to deliver the work with accepted quality. So they might not 100% satisfied with your profile. But the good thing is the another set of managers like their bosses etc. are your side helping you to get promotion. Finally they come up with reasonable offer for you which works both of you. I believe this is win-win proposal.

When come to the question accept or not, I can not make that decision for you. You have to make the decision. I can provide the below suggestions and points.

I suggest check your interests or passion first on the role or work of "Software Engineer". If you are interested in "Software Engineer" role it is good opportunity for you to start with and opportunity to learn, explore and prove your self. And it also beneficial for Company by using your skills. If you are not interested you would have communicated them before starting the interview process.

It is not good to develop hard or negative feelings on those managers. Rejection straight away doesn't yield any good results to both your Organization and the managers who interviewed and yourself too. Everyone miss the opportunity to figure out how best fit you are to the software role. And all the effort and time spent on making this offer will become worthless.

-2

There are 'team player' developers and 'solo' developers. The 'force fit' is probably a bad idea, but the best thing to do is go with it until you discover why exactly it won't work. You may discover you'll work out just fine.

If you don't work out, the first outcome is that you might get reassigned to another software group, simply because they don't know whether it's you, the project, or your boss. If the second reassignment doesn't work out either, what is likely to occur is that they will create a role for you in which you're working as an 'internal consultant'. If the 'higher ups' like what you're doing, they'll figure out a way to make it fit.

It might not hurt to ask for the 'internal consultant' role now, so that you're doing the software work you like on the terms you like.

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