tags:

views:

87

answers:

5

Other than learning java, spring, hibernate, servlets, jsp's, how to use eclipse/netbeans, databases like mysql/oracle/postgresql, JMS, JUnit, etc.

What other skills are essential?

Coming from a MS background, and I am just a little overwhelmed by all the things going on in the java world! (btw, you guys have TONS of dlls also, a big eye-opener for me in my java pursuits)

Other things I can come up with so far are solid linux skills, maybe how to use a mac.

Other than that, there are so many of these tools that I see referenced, which so far I am pretty much clueless how to use:

  • ant
  • maven

what else is there that are common or important to know?

+2  A: 
  • Debugging techniques
  • XML technologies (SAX, DOM, XPath)
  • How to find libraries that do what you're attempting to accomplish, rather than writing them yourself.
Jherico
+2  A: 

The number #1 tip for you:

  • How to research.
Noon Silk
+1  A: 

It depends. When you are experienced with the foundations (automated testing, design, know how to 'learn' generally, modeling, working well with other programmers, etc.) you are lucky :) Technologies change often but you can adapt extremely quickly if you have the much less changing concepts in your head and fingers.

Still the frameworks + techs are different. So get used to new tools (Java has different tool-set and IDEs as MS-tools), this also includes build-envs like maven or ant. For getting used with new tools find a little private project (with small scope). And then step by step puzzle together + solve your technology todo-list.

Parallel to that download a little open-source project based on Java and see how they did the stuff. And read a lot of code done by others!

manuel aldana
+1  A: 

how about documentation - javadoc

darren
Given your question history, mrblah, this might be the most important one in this thread.
delfuego
+1  A: 
  • Debugging techniques
  • How to learn a new API/framework
  • Java concurrency API
  • The standard tools (JConsole, jmap, VisualVM, etc.)
  • Profiling techniques
  • GC tunning
  • The Java memory model.

As well written/well thought Java code to read and learn from I would suggest Google-collections (or Guava) and maybe Functional Java and Guice.

superfav