Skip to main content
7 answers
8
Asked 1322 views

Job for self-taught junior java developer?

What is the best way for a self-taught Java developer without degree in computer science to get hands on the real project to gain experience?
#java
#java-development
#core-java

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

8

7 answers


6
Updated
Share a link to this answer
Share a link to this answer

Tony’s Answer

My suggestion would be to try your hands on some open source projects. There are usually projects out there that are welcoming of fresh devs. Github would be the best place to start. Think of it as your personal portfolio.


You can then show your work off to potential employers which might help land you a job.

Tony recommends the following next steps:

This looks promising ... https://github.com/MunGell/awesome-for-beginners
Thank you comment icon Thank you for response. I'll have a look at the projects. Do you think a technical degree is absolute must have for a successful job application? Victoria
Thank you comment icon A degree does help but I know several folks I work with that do not have a degree. The downside is it might be more difficult to get promotions, as that has been the case for them. It also depends on what kind of company you work for. Start ups are a lot more relaxed about degrees versus corporate companies. Hope that helps. Tony Andrade
Thank you comment icon It does, thanks you Victoria
6
0
Updated
Share a link to this answer
Share a link to this answer

Greg’s Answer

I was going to recommend exactly the same thing as Tony: open-source Java projects are plentiful, and I've never yet seen one that didn't have more open bugs than people to fix them. For example, Hadoop (a very popular and high-profile project on which I worked briefly in a company environment) still has a few bugs open that I filed more than half a decade ago. Some may not be relevant anymore, but at least one compression bug (which finally got some love a few months ago) definitely is.


Other high-profile Java projects include Kafka and Samza (both stream-processing, big data projects); I happen to work with the teams that created both of them. There are many, many others, however.


One thing to keep in mind (but another, related opportunity to help and gain visibility) is that the code in these projects frequently outruns the documentation. In other words, it can be a bit difficult to get things working in the first place, even with "official" sample code. Yes, it worked great when it was contributed, but the underlying bits have changed since then, and maybe it hasn't been tested and/or updated lately. So trying things out, asking questions online when they don't work as intended, and then adding or fixing documentation can be a great way to help out from the very beginning. And then once you have things working for yourself, you can start to tweak the examples, add more complexity, and then start looking at bugs no one seems to be working on. Diagnosing bugs is one of the most important skills a software engineer can have, but if it's not a critical, breaks-everybody bug, it may remain open for months or years without attention from the main devs.


By the way, if you submit a bugfix and get review feedback that you've taken a bad approach or should refactor something to share more code or whatever, don't take it too hard even if the tone is a little harsh (which, sadly, happens a lot online). Persistence and patience are two more traits every software engineer should cultivate. ;-)

Greg recommends the following next steps:

Look at a number of open-source Java projects, try out a few, and then check their open bugs and documentation for places you can help out.
0
0
Updated
Share a link to this answer
Share a link to this answer

Micah’s Answer

In addition to the feedback you've already gotten about open-source projects, I would add that now is a great time since it's hacktoberfest. And, you can search on github by language.
0
0
Updated
Share a link to this answer
Share a link to this answer

Nitai’s Answer

There are plenty of resources available :
1- Download an IDE (Eclipse - https://www.eclipse.org/downloads/) or other IDEs (IntelliJ - https://www.jetbrains.com/idea/)
2- Here you find many projects, which can be useful -
https://medium.com/javarevisited/20-amazing-java-project-ideas-that-will-boost-your-programming-career-75c4276f6f5
https://medium.com/javarevisited/15-java-and-programming-articles-you-can-read-during-covid-19-fcf6266f211d
3- This is a good place to explore - https://www.codecademy.com/learn/learn-java
4- While learning, you could look at some questions and different approaches to solve the questions in terms of complexity, space and performance. https://www.geeksforgeeks.org/java-how-to-start-learning-java/

Good Luck and All the best.
0
0
Updated
Share a link to this answer
Share a link to this answer

john’s Answer

I'll echo with everyone else that it's great to contribute to open source projects.
I'll also add, that any project is better than no projects. Any little idea you have that could be a project; spin up a project in your github account and take a crack at it. You don't have to finish it. You don't have to publish it. It can be ugly, simple, whatever. Just simply the act of doing the project will teach you a lot and will show interviewers that you are motivated and someone who wants to learn. That desire to learn is very very sought after in employees and can help you land positions that you would normally struggle to be noticed for.
0
0
Updated
Share a link to this answer
Share a link to this answer

Suhitha’s Answer

Hi, Start learn any programming from basics For Example: considered You want to become junior java developer learn java from scratch (w3schools.com), Learn advance Technology like spring and hibernate. practice technical programs from Hackerank. It helps you to become good programmers
0
0
Updated
Share a link to this answer
Share a link to this answer

Domenica’s Answer

hi Victoria!
I found that Udemy can be an excellent resource for basic tutorials on Java and other languages.
0