What is the best approach for me to get a job?

Which Java technologies could one study to get a good job? I hear a lot of terms - J2EE, Struts, Hibernate, Spring, J2ME, Swing etc. And what would be the best approach to learn one or more of these?

  • I am an experienced programmer and kind of confident that I could  possibly study (one or more of these) and manage to clear an interview  and do justice to the job. Most of my experience is in C++ and in Product based companies, I have also done a little bit of stuff in Core Java and also spent an year doing web development in PHP. Unfortunately, I could manage to get very few calls (in the 2.5 months that I have been trying) with my current specialization and a slightly high previous salary. And I failed the interviews that I got called for (cleared the phone screens, reached the last rounds and did not get selected :( :( ).

  • Answer:

    Dude, if you are experienced in C++, I'd say don't leave it... VC++...

Bilesh Ganguly at Quora Visit the source

Was this solution helpful to you?

Other answers

As some one pointed out below , there is really no need to switch from C++ to JAVA, unless it is just for getting the job.   Now to elaborate.   Java  professional market  revolves around Web Technologies. To land up a job in service based companies, You need to know(i don't say master) below things 1. Core java + HardCore java: mostly OOP concepts, some language idiosyncrasies ,enums, generic, collections. By the time interviewer reaches Mutlithreading, they get a sense of satisfaction that candidate knows a good deal of Java. 2. Web Technologies: ( 1 technology in each layer of J2EE) 2.1 Persistence Layer(Hibernate OR JPA), Given the market trend go for hibernate, any related ORMs are easy to learn , once you know the basics. 2.2 Business Layer(EJB OR POJO) , EJBs are good to know but they need container support and has vendor dependency, there days companies are switching to Plain Old Java Objects(POJO) for loose coupling and vendor neutrality. 2.3 Presentation Layer(Servlets+JSP OR JSF / or Struts) JSF although a  lot of companies are reluctant to embrace this technology, JSP plus servlets is a great combo to have in your CV. Struts MVC is the one companies are after these days, not necesarily but you should learn it. 2.4 Client side scripting (Javascript +HTML+ CSS) : Although not all companies will want you to know these, but these are good to have. 2.5 Middleware (Application servers like WAS/JBOSS): Just an entry level knowledge of these would suffice.   3. Database part (any RDBMS)  Oracle and MySql are the hot cake. Must learn Pl-SQL also.   4. Good to know frameworks /technologies 4.1 Spring framwework: Almost in every interview they will ask you whether you know Spring. 4.2 Webservices: To give an aesthetic touch to your  knowledge of Web technologies 4.3 Any Workflow engine:   its a bonus feaure in your CV.   Just to get a job, focus on points 1 ,2 ,3 . If you have a prior knowledge of java and programming experience, you will need 3 months of preparation before you can project yourself as a JAVA professional.   And speaking of career, since you are in C++, try for gaming companies ar any product based companies. Dont change your technology just beacause you want a job.   Thant said, i am no expert and would love to hear opinion of  other experts.   Reference material are available in plenty on web. START NOW.

Vikas Kumar Pandey

If you are perfect in C and C++ it hardly takes few months to learn Java. Java is usually categorized into 3 divisions: 1) JSE (Java Standard Edition) that covers the major portion of C and C++ concepts and other pure object oriented concepts. They term it as Core Java. This technology ihelps in building general desktop applications. 2) JEE (Java Enterprise Edition) that covers advanced Java concepts like Servlets, Java Beans, SOAP etc., and is used to build client-server architecture models and enterprise level applications. 3) JME (Java Mobile/ Micro Edition). This is used to develop mobile applications (like JustDial kinda applications) . But since Android has up-beaten this technology this is not that preferred these days. But if you want a strong programming knowledge go for it. There's nothing wrong in learning extra things. 4) Struts, Hibernate, Springs, JSF all fall under Java framework (to improve the speed of building applications). These are not separately used but instead they are automatically interlinked with above technologies. Remember when we use one framework we need not use the other. Depending on likely of your choice you can choose any one of them but however you need exposure to all the technologies while building any application. But the only difference is that you could become champ in any one of the technologies only by undertaking related projects. And if you ask me what could be the best approach to learn all these I tell you even I'm sailing in the same boat :P Java is vast and beautiful. There are hell lot of sources both online and offline. I approach Google :-) Any corrections and help welcome!

Rashmi Bhatia

1. I would study Java language and libraries, which come in jdk. Follow https://thinkinginjava.quora.com, . 2. It would be good for you to understand concurrency, so read Java Concurrency in Practice. 3. For network layer, I would go with . 4. I assume you are good, with algorithms and data structures. If you want to refresh on these and get good grasp on implementing these in java, read . Now the frameworks. It really depends on what the teams around you are using. I personally recommend looking at the frameworks coming out the echosystem - Play Framework or , . These are the most modern. is probably the most mature, popular and nice to use. I would not use J2EE, unless this is absolute requirement for the job. Same to Hibernate and Struts. I have no idea if anyone uses SWING, definitely would not go there. I would not go J2ME route. If you want to use java for mobile devices, you can use . I would say go through 1..4 and see what other companies use. Frameworks are easy to pickup, being good with Java is the real challenge.

Sergey Zelvenskiy

You should have knwoldege in Core Java and also J2ee and any of the framework such as hibernate or Spring to get better job.

SuneetPadhi

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.