9

I am currently an iPhone developer with 2 years of experience. I have a situation where my organization wants me to switch to a C# developer because of significant rise in .NET business they are getting. They've assured me that I'll be working on iPhone in the future as well, but I'm not sure how long "the future" will be.

I never want to leave iPhone development, or at the very least if I have to do a switch, I want to do it in another mobile technology like android or designing.

This is a very critical decision for me. What should I consider when deciding if I should accept this offer or not?

  • You could try doing iPhone development in C# with Monotouch/Xamarin – Spoike Jul 20 '12 at 9:30
  • 1
    I'm not sure this question is on topic; first it's very focused on nitty-gritty details of specific job functions, keeping it from being a general Workplace issue. Secondly it's close to the Not Constructive/Too Localized area of "What should I do?" where there's no clearly defined, solvable problem, instead answers are just recommendations. – Rarity Jul 20 '12 at 14:28
  • 1
    @Rarity I've suggested an edit to the question that will hopefully keep it on-topic for the site and prevent it from getting closed, without changing the question too much. Please reconsider closing it :) – Rachel Jul 20 '12 at 14:58
  • 2
    My humble suggestion: never believe vague promises about "the future". – o0'. Apr 2 '14 at 13:16
  • You are too vague, I fear. You did not specify several important factors, such as 1. do the switch also imply a pay raise or better conditions? 2. do you feel they might fire you or deny career improvements if you refuse? 3. i.e. why exactly should you accept this offer? It's totally unclear. – o0'. Apr 2 '14 at 13:18
15

First, a disclaimer: I believe that attachment to a specific technology is overrated. Having experience in different technologies gives you more insight and broader knowledge and, often, allows you to come with different approach to a problem than you would otherwise (as in Law of the instrument).

Having said that, I don't consider you have only one viable option:

You may want to stay to:

  • see how you like the new technology
  • learn things that broaden your views
  • learn completely different class of projects (C# won't be anything close to iPhone apps)
  • get yourself out of your comfort zone
  • grow your career within the ranks of your current organization (if it is even a case)

You may want to go to look for other mobile development job to:

  • keep honing your iPhone development skills
  • stay focused on a single technology so you eventually become awesome in this
  • exploit your current skills in most productive way
  • are convinced that mobile development is the thing to do for you
  • find a better job considering your current skill set (if it is even a case)

All in all, the decision should be mostly driven by how you picture career in a couple years of advance.

Note, that you can pretty safely stay for a while to see how it goes and then eventually leave if you don't like it. What more, if you work for healthy company you might be able to state that openly. In such case, again it is possible, that if you don't like the new role you might be offered a switch back to the current one. It is however about how your org is functioning and what kind of relations you have with your bosses.

  • Thank you so much. I'll definitely think about what you suggested. – Nitish Jul 20 '12 at 9:02
  • 4
    I just want to +1 the opening disclaimer here. – acolyte Jul 20 '12 at 13:49
  • Piggy backing onto this: development languages rise and fall in popularity over time. From a career perspective it's FAR better to have breadth of knowledge. Also, it makes you a better programmer anyway. – NotMe Aug 1 '14 at 23:03
6

Early in your career, you need to get the broadest experience you can get. While iPhone development is hot right now, it may be totally obsolete in five years. Technologies change, sometimes fairly rapidly.

As a young developer, your boss is doing you a favor moving you to the C# team which will broaden your skills and perspective and make you more valuable to the company. Further, the organization needs you where they need you. You can't expect that assignments will always align with your personal preferences in any job. The company needs what they need and all jobs eventually have some work you would rather not be assigned to do. Step up and do a great job and impress people.

  • Thanku very much for your suggestion and your over whelming push :) – Nitish Jul 23 '12 at 12:52
  • 1
    "Further, the organization needs you where they need you.": on the other hand, if my organization needed me to flip burgers all day long, I would probably refuse. It all depends on what your priorities are. – DistantEcho Oct 5 '12 at 15:05
1

It depends largely on trust. Do you trust your manager to get you back to mobile development since that's what you want? Do you trust your company to compensate you appropriately for essentially delaying your career progression towards a more senior mobile developer role?

In my experience, you shouldn't. If C# work is there, they'll keep you there and care very little about your career.

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.