Originally posted by Harris William Tanu:
Let's say.. with my current working experience, I still believe, I'm far behind those guys such as Gaving King(Hibernate) or Marc Fleury(JBoss).
The easier question could be: "How can I be one of them one day when I work on my technical skills?" What are the steps?
That's really a very different question. I don't think those people are best described as *Java* experts, but better as *software development* experts. That is, there is much more to it than just knowing Java exceptionally well. In fact, focusing on Java probably is exactly *not* what made them what they are - it needs diversity to become really good.
Let me summarize the list of "goals of knowledge portfolio managment" from the book "The Pragmatic Programmer" - the whole book would probably be a good investment for you, it has lots of good advice:
- Learn at least one new language every year.
- Read a technical book each quarter.
- Read nontechnical books, too.
- Take classes.
- Participate in local user groups.
- Experiment with different environments.
- Stay current.
- Get wired. (That probably is the books way of saying "participate at JavaRanch"

)