Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Has anyone out there done this? Did you have to spend a few years learning .NET before you could get a job or were there employers just willing to throw you into the fire based on your Java experience?

I'm wondering if it would be good for me to start learning .NET now in case a few years down the road I end up wanting to make the switch or maybe I don't need to worry.

share|improve this question

closed as not constructive by gnat, Kilian Foth, Martijn Pieters, Jalayn, thorsten müller Apr 10 '13 at 13:42

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

java2dotnet *.java –  Job Jan 16 '11 at 0:05

5 Answers 5

As a Dev Manager, I'd be willing to hire a Java guy for a .NET job. Especially if we were using C#.

I might start them out a little lower (salary) than someone with .NET experience and make up the difference in annual raises as they learned the new platform, but that is the brakes when switching to a new technology.

share|improve this answer
It doesn't take someone a year or year(s) to transition to a new technology...at least I hope not. I am a little surprised by your statement. –  Pemdas Jan 15 '11 at 23:35
I wouldn't expect that it would take a year for me to do it, but I wasn't sure what an employeer's expectations would be. –  stevebot Jan 15 '11 at 23:39
Depends on the person. I'm not talking about transitioning, I'm talking about catching up with a candidate who already had experience on the target framework. Plus, I didn't say what the pay differential might be. However, it would be something since the experienced .NET developer brings a shorter ramp-up time to the table. –  JohnFx Jan 15 '11 at 23:47
I'm happy to say I am almost 1 year in as a .NET developer now. Thanks for the advice! –  stevebot Apr 17 '13 at 16:43

It will no doubt be harder to find a job in C# as a java dev. But it's not impossible. To that end, insert the usual advice about working on open source projects in the desired platform so you have some demonstrable experience. Often, Java for 5+ years with 1 year of .net will open many of the same doors as 6+ years of .net.

I've known people who've made the switch. Most are successful. A few keep their feet in both afterwards. A few never look back. A few hate it. The last group in my experience is mostly die hard MS haters to begin with and never gave themselves a fair chance. Most folks still prefer java but that's because they have more experience in java and it's easier to do what you know more thoroughly.

I did the switch in 2003 from a VB6 and java background. It was at that time relatively painless. Now, I think they've had a while to walk down their own roads and the difference is wider, but nothing dramatic. Things like LINQ will pleasantly surprise you I suspect.

I would also say that anytime I've looked at other platforms, I've learned other perspectives that have helped me on my platform of choice. Poking around in other technologies is nearly always rewarding for me.

Finally, I wouldn't recommend it unless you can be happy with the choice though. As I said, the people who fail in picking it up in my experience are those with strong anti-MS feelings. If that describes you, I'd do some soul searching.

share|improve this answer

I switched over to .NET from Java around 2003. Back then, Microsoft was doing a lot to attract Java developers to the platform. Besides the similarities in syntax between C# and Java, a lot of the .NET framework is structured similarly to the Java framework.

I'd recommend hopping on board an open source project if you want to make the transition. Because each language is more than just syntax but also it's idioms. For instance in C# we use PascalCasing Java uses camelCasing. LINQ is a big deal in the .NET world and learning how to leverage it for deferred enumeration is important.

There are a lot of other things that you can only pick up through immersion. So jump in the water's perfect!

share|improve this answer

I switched from java to .net more or less by accident - Interviewed for a java project and ended up talking to the .net team lead instead. At the time I had used .net for some personal projects over the past year - enough to know the platform but not enough to get a cv past recruiters looking for keywords/years of experience.

Technically the switch isn't hard to make - if you are a good java developer you will find it fairly easy. Build a couple of things in .net to get the feel of it and you should be at pretty much the same level as you are in java. Actually finding a job mostly comes down to who you talk to - some will understand that the java experience counts and some will be looking for keywords and see only that you have no commercial experience with .net.

share|improve this answer

I switched from Java to .NET and back again to Java/Clojure.

This switches were really very easy - made easier by the fact that C#/CLR is, at its core, a slightly modified clone of Java/JVM whatever Microsoft may protest to the contrary :-).

I'd personally hire a good C# dev to code in Java or vice versa, probably with just a bit of allowance for them to take a few months to get up the learning curve on the differences in the core libraries etc. For me, a talented developer is a talented developer, and should be able to handle the switch without too many problems.

share|improve this answer

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