I currently hold a degree in computer science and have done enough java to master at least the basics (Enough to program a Calendar Application from scratch). But everytime I look at job requirements i see other aspects (requirements) I have absolutely no experience in (e.g JSP, AJAX, JDBC). Ultimately I want to get a job as a Software (java) Developer, or a GUI Developer ( I know the basics of swing as well). I am currently studying for the SCJP exam which i will take in June. I am ready to put 6 months aside to study and take different Cert. Exams if needed. I want to know all i need to know so I can at least get a job as a Junior Developer. So my questions are what aspects of Java should i focus on? What exams aprt from the SCJP sjould I take? What are the common requirements employers look for when hiring a developer (Entry/Mid - Leve). I
I will be done with my masters in computer science by December, so i have 6 months to get myself together.. Please help
Java is used mostly on the server, so if it's employability you're after then I'd focus less on Swing and more on APIs/libraries that are used on the server.
Servlets/JSP are crucial, as is JDBC, even though both are often used underneath some framework; but it's still important to understand them. For other things (like AJAX and web services) it's probably sufficient (for a recent graduate) to understand them on a conceptual level without having much actual experience.
You'd also be surprised at how many employers will hire you even if you don't meet EVERY requirement on the job listing.
I had only been programming in .NET for about 1 and 1/2 years and found a job at the local county for a .NET developer with
5 years + of experience.
I said what the heck and sent in my resume... and now I have a job at the county. Better pay and benefits.
I would apply to the job anyways, I mean you have a degree and you never know that might get you the interview
all by itself.
You down with OOP? Yeah you know me!
posted 11 years ago
Thanks guys, really appreciate it, but right now i just know the basics and fundamentals of java and ive been applying for a developer position for about 6 months and nothing. What can i do to better myself in the meantime? Java has so many branches and I am not even sure which path to follow, what are the must haves for at least a junior developer position? I just want to be comfortable in my skillset.
I found myself in the exact same position 2 years ago, only I had no college experiance either. I'm not going to go into what I studied so much, I think it'd be more helpful to know what I would study if I had to go back and do it again knowing what I do now. The Java language itself is a small piece of the full picture, as I'm sure you noticed when looking at job listings. Don't get discouraged though, when going for a Jr position the employer expects that you have not had much hands on experience. This is to your benefit actually. The more hands-on knowledge you go into an interview with, and they aren't expecting, the better chance you have of beating the competition and landing that job. Get your SCJP for sure then learn as many different things as you possibly can. Sure, it's nice to go into an interview and be able to say you are a master at J2SE and JMS (java messaging service), but if those are only 2 out of 15 things they are looking for they will probably be more interested in a candidate that has at least used 10-12 of them once but is not a master at any of them. Here are a few simple, free, things you can play with to increase your skill set, and would be my list if I could do it all over again.
- Write as much code (by hand) as humanly possible
- Download MySQL and ConnectorJ then write a program using JDBC to interact with the DB.
- Write a small program that uses JMS
- Write a small JSP (java server pages) program
- Start studying J2EE and web technologies asap. The world runs off the interwebs these days and if you can only write programs that run locally you will have little value.
- Check out as many frameworks as you can... especially Hibernate and Spring. I'm sure people will argue with me over this one but I still see tons of java job listings with these being the 2 most popular frameworks that are used together.
- Learn the in's and out's of as many IDE's as possible. Some popular ones are Eclipse, RSA (rational software architect by IBM.... built on top of Eclipse), NetBeans. Those are the big ones as far as on-the-job IDE's go, but there are a ton of free ligh-weight ones as well.
- Last but not least, read as many terms as you can and learn all the accronmys. The last thing you want to do in an interview is look like a dear in headlights. If they say, "Have you ever used JNDI with a JSP over JMS?" (I'm making this up), you'd atleast want to reply with an intelligent no answer instead of a "I don't even know what you just said" type of reply. Easiest way to learn them? Reading through J2EE tutorials/articles.
Took me a year and 1/2 of studying and interviewing to land a job but I didn't have a degree either. Looking back though if I had studied a bit less on core java and more on API's and frameworks + more web uses (read server) for java I think I would have been hired a lot faster.
Good Luck, and make sure you visit the SCJP forum. They're a life saver!!
~Currently preparing for SCJP6
posted 11 years ago
If you know the core basics pretty well, I would say study for your jscp and the j2ee certs.
I mean between the bachelors degree and the certs(if you get em) you shouldnt have as much
of a problem getting in, and like it was said build a portfolio with code examples letting the employers
know that you are enthusiastic and good at what you do.
I know you can google and find volunteer spots on open source java projects.
I suggest learning a bit about software design including the differences betwen programming and designing. To impress an good interviewer, you should demonstrate sufficient knowledge about software design principles such as coupling, capacity, cohesion, etc. And, you should be familiar with non-technical aspects such as extensibility, scaleability, security, performance, etc.
And lastly, learning to program with another language is helpful, e.g. Korn Shell, Bash
The ability to describe your designs with visual diagrams and written text narratives is very important.
James touched on a good point. I have listed 14 key areas that you can use to impress your prospective employers and interviewers. It will also look good in your resumes. Check the free sample downloads from my website for more details.
I cannot thank you guys enough, I will spend this whole summer looking into everything you guys have said, i am currently studying for the SCJP and will take it sometime in June. That should be a good start for me. If you guys have any other advise i am still open to suggestions.. Cuz i really when put time into this and get it right.
Hi Roye, hope you are having a good time exploring the vast ecosystem of java ee.
As a quick start, i'd highly recommend you the Arluk's book.
The sheer number and vastness of different technologies in enterprise java keeps me hooked into it, so learn 1-2 things at a time and most importantly, enjoy learning them and comparing them with other related technologies.
Best of luck
posted 11 years ago
Thanks Sumit, whats the exact name of the book? I searched for "Arluk's book" didnt find anything on java.