• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Career assistance

 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello all, i am Ignatios, 23 yo. I would like to ask for some advice. I have good knowledge of the Java SE 7 APIs and 1 mounth ago i earned the OCP certification. I wish to be a good developer who can understand and write some quality piece of code, which i know it demands years of practise. From someone who has experience working in the field, i would like some recomendation on what to do next. There are so many different frameworks, technologies that employers ask for(Spring, Hibernate, JSON, ..) and i know none of them. Which of them are widely adopted in the software development industry and are good for me to learn? Should i get along with Java EE first, maybe by earning an other certification? I already tried building a few small applications like an adressbook, and a picture represention program using Swing. What should i do now? I am confused.
 
Marshal
Posts: 79177
377
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Welcome to the Ranch

I think this discussion would fit better in a different forum, so I shall move it.
 
Bartender
Posts: 10780
71
Hibernate Eclipse IDE Ubuntu
  • Likes 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ignatios Glinos wrote:Hello all, i am Ignatios, 23 yo. I would like to ask for some advice. I have good knowledge of the Java SE 7 APIs and 1 mounth ago i earned the OCP certification.


Congratulations! And welcome to JavaRanch Ignatios!

I wish to be a good developer who can understand and write some quality piece of code, which i know it demands years of practise. From someone who has experience working in the field, i would like some recomendation on what to do next. There are so many different frameworks...


Indeed there are, which is why my advice would be not to dive in too soon. Frameworks come and go, but Java has been around for 20 years; so make sure you really understand the basics well before you start mucking around with things like EE, which is NOT for the faint of heart (quite apart from the fact that it seems to be being supplanted by other, less "heavyweight", frameworks).

And to that end, since your cert was for version 7, my advice would be to install version 8 and spend a few weeks at the very least getting familiar with all the new stuff it offers - particularly lambdas and Streams. It's arguably the biggest change to the language since it began, and certainly since version 5.

Other things I would make sure you're really happy with before you start "branching out" too far:
  • Generics
  • Annotations
  • Dates and times (also new for version 8)
  • The Java Collections Framework (Maps, Lists, Sets...what's on offer, when to use them, and why)
  • Multi-Threading
  • Locks - specifically, ReentrantLocks (←click).
  • Recursion
  • Reflection (although I wouldn't go too mad with it )

  • technologies that employers ask for(Spring, Hibernate, JSON, ..) and i know none of them. Which of them are widely adopted in the software development industry and are good for me to learn?


    Now here I can't help you so much because I'm not up on the latest and greatest. But again, I'd start a bit further back.

    One thing that all these "webby" frameworks have in common is that the applications they help to build are likely to use databases, so I'd get really familiar with how to communicate with one - and to that end I'd suggest having a look at JDBC and JPA. You don't need to spend vast amounts of time on them, but at least knowing the basics will help you with something like Hibernate (a product I really like), because it's built on the backbone of those frameworks.

    After that, the sky's the limit. I'm sure others will be able to give you good advice on technologies to look at, but I'd make sure that your ready to take them on before you dive in too deep.

    Hope it helps.

    Winston
     
    Ignatios Glinos
    Greenhorn
    Posts: 2
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    Thank you for your advice. I will strongly consider it.
     
    Sheriff
    Posts: 17644
    300
    Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    Please also consider some of the recommendations here: https://coderanch.com/t/662783/java/java/write-software#3086326

    The advice there may seem somewhat "fluffy" to a novice like you who is mainly looking for specific technologies to learn. However, without a good grounding in basic principles and practices, I find that technologies become more difficult to understand and easier to misuse. Uninformed and inexperienced developers using advanced technologies without a proper understanding of basic good programming practices and principles are like soldiers fresh out of bootcamp who don't know how handle their weapons safely in a life-and-death, real-world combat scenario. Not that I'm assuming that you're writing bad code but in my experience, 9 out 10 developers do, even when they have a few years of work experience under their belts. Those basic "fluffy" things will help you keep everyone, including yourself, safe(r) from bad coding.
    reply
      Bookmark Topic Watch Topic
    • New Topic