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.

This question already has an answer here:

I'm primarily a VBA/VB3-6/VB.Net developer of 15+ years with several years of C# experience. Myself and another developer (a seasoned senior level java developer) were hired on at this new company at the same time. Our goal is to replace an internal web application built (in flash) by a third party. Since my coworker is at a higher level and has more knowledge overall for all the moving parts required for this project, the decision has been made to go with java for everything. I have very little java experience. Any recommendations for surviving the transition and not being a total ball and chain on this new project? Should I take a class? Buy a book (which one(s))? Watch youtube video tutorials? Does anyone recommend I look for a .NET shop job instead? I like this company a lot and would rather stay but I'm a huge Visual Studio/.NET fan. Thanks in advance!

share|improve this question

marked as duplicate by MichaelT, gnat, Bart van Ingen Schenau, Kilian Foth, GlenH7 Feb 6 at 17:02

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

1  
You will find that compared to C# it will feel limiting when it comes to language features, however you get the added benefit/curse of more libraries and frameworks available than you will know what to do with. –  maple_shaft Oct 17 '11 at 19:58
    
@MarkTrapp I was inclined that way at first though this is "his company is switching to java" rather than "he is tired of being in the same place and wants to move but local companies outside his only use Java". –  World Engineer Oct 17 '11 at 19:59
    
Yeah I saw that one, I felt my situation is different because it's not a dead end job, I have much more experience, and the .net jobs are plentiful in southern california –  brettville Oct 17 '11 at 21:08
add comment

5 Answers

A. Do you want to become a Java developer?

Yes.
You are on the right track.
No
I agree that you may learn some tidbits going to Java as a .NET guy (E.G. Java has a pretty API IMO). But, overall switching to an entirely new framework that you do not want to program in is not highly beneficial to your career aspirations.

B. Do you love this place enough to leave .NET behind?

Yes
You are on the right track.
No
.NET changes all the time. If you leave now, how long do you think you will be gone? Will your old skills still be useful enough to land a position you desire? Or, are you ok with becoming a Mid-level again until you catch up?

C. Will the company switch back to .NET soon or otherwise provide .NET maintenance?

Yes
You are on the right track.
No
.NET changes all the time...

If you answered no to all three questions then consider a new position. Otherwise, no one can better judge what you should do than you. Hopefully I offered something worthwhile to ponder.

share|improve this answer
add comment

C# is a different way of spelling Java (Not quite, but pretty much). If you know C# you won't have too much of a hard time going for Java.

I had the opposite experience. Was big on Java but had to learn .Net. Thank God for C# which made the transition a breeze. There are, ofcourse some specifics you will need to wrap your head around, but It will be familiar coming from C#.

As for books on the subject, I am a big fan of the Head First series. Check this one out: Head First Java.

share|improve this answer
1  
I'll add to this that Effective Java 2nd ed is a must, it tells you about the languages little annoyances and best practices around them. –  Martijn Verburg Oct 17 '11 at 19:57
    
Thanks for the suggestions! –  brettville Oct 17 '11 at 20:56
add comment

I'd not think it'd be especially difficult to transition over. It's only another technology stack. This question covers the gotchas and what nots. I don't recommend Head Start Java if you are already a programmer. I do recommend something like Java in a Nutshell or Oracle's online Java tutorials.

Fundamentally, you like where you work. That is priceless. We are programmers, retraining is cheap but a good job is forever. I'd say stay and adapt rather than running for the hills. You could always do side projects involving C# and what not.

share|improve this answer
    
Yeah this boss seems like he will be the best I've ever had, I'd hate to pass that up. –  brettville Oct 17 '11 at 21:06
add comment

With your years of experience, especially with c#, I don't think you will have any trouble transitioning. I would not recommend looking for a new job with a .Net shop instead just because Java was chosen. Look at this as a great opportunity to learn something new. When you are done you will be that much more knowledgeable and have Java experience to sell yourself with as well.

share|improve this answer
add comment

With 15+ years of experience I don't see how the transition would be difficult. However, you might get frustrated with Java here and there as .NET has some modern constructs which Java doesn't have. Probably the best way to get started is start developing and look for help where you need it. Be prepared to listen to your more experienced colleague for pointers on conventions, etc ...

Last time I had to develop in Java it was a pain in the ass. No proper generics, no events, no lambdas, ... :-( On the other hand it does have a few things out of the box which .NET hasn't got (by default) like dynamic proxies.

It is definitely worthwhile getting some hands on experience with Java so you can decide for yourself. The most important factor should be whether you like the product you would be working on more than some other .NET job. I wouldn't pass the opportunity for an interesting project just because it's in Java.

share|improve this answer
1  
I would like to add as another benefit (although small) is that Java has much more useful implementation for enum's. –  maple_shaft Oct 17 '11 at 19:59
add comment

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