Originally posted by subhadeep chakraborty:
hi,
Can i contribute to open source projects? The technologies that i know are servlet,jsp,struts,oracle.My doubts are :
1) Do they pay for it?
2) What are the pre-requirements ?
eg. net-connection at my residence.
3) How tough is the work? I am a average java guy. Can i do it?
4) Do you think one can take it as a life time profession.
5) I want to work on core java. Is it possible.
I am jobless and need one soon.Any suggesions will be helpful.
Thanks,
subhadeep
Ulf has summed it up. You can improve your chances of finding a job via open-source contribution, volunteer work, and an effective resume.
Contribute to open-source projects to gain much needed hands-on experience in sought-after technologies and frameworks. The choices are plenty ranging from widely used products such as NetBeans, Eclipse, GlassFish, etc to smaller hobby projects, which have been open-sourced by their developers. Pick the one depending on your level of experience, interest, and motivation. If your motivation is to learn Spring & Hibernate, then pick a project that uses both. How do you benefit from open-source project contributions?
Gives you a pretty good big picture of different technologies, tools and frameworks used in a typical application. A typical Java application uses Eclipse, NetBeans, or similar
IDE, Java,
JUnit, Log4j,
Ant, Maven2, Spring, Hibernate, Apache commons library, etc. Try to analyze and understand how all these pieces fit together.
You get to read a lot of code and learn from it. You can not only learn the best practices, but also can learn to identify potential issues.
Write your own small programs just to learn the language and libraries (APIs) used in the open source projects. For example, Java APIs and Apache commons library that has very useful utility methods such as StringUtils, CollectionUtils, MapUtils, BeanComparator, Validate, etc. Observe the coding and formatting standards.
Learn how to use the tools like CVS, SVN, Eclipse, Maven2, Net Beans, etc.
Experiment by making changes to your local copy of the code. Try going through
JEE deployment descriptors, Spring, and Hibernate configuration files to understand how different pieces are wired up.
Also try
voluntary work. Voluntary work shows commitment and initiative, even if it is not mentally stimulating. It can increase your industry knowledge, give you the much needed hands-on experience, enhance your soft skills, and give you something to write in your resume without any prolonged gap of employment. Since the task of applying for a paid full-time position can take up considerable time, you could start working voluntarily 2-3 days a week, even weekends if required. Even if it does not involve Java/JEE, provided you can gain any other sought-after technical skills like SQL, XML, integration technologies, Web development, etc and more importantly valuable soft skills, domain knowledge, software development processes and methodologies that are easily transferable to your future dream job.
Good luck