This week's book giveaway is in the Agile and Other Processes forum.
We're giving away four copies of DevSecOps Adventures: A Game-Changing Approach with Chocolate, LEGO, and Coaching Games and have Dana Pylayeva on-line!
See this thread for details.
  • 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
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Tim Cooke
Sheriffs:
  • Rob Spoor
  • Liutauras Vilda
  • paul wheaton
Saloon Keepers:
  • Tim Holloway
  • Tim Moores
  • Mikalai Zaikin
  • Carey Brown
  • Piet Souris
Bartenders:
  • Stephan van Hulst

Is it better investing more time in framework study or work experience as a junior Java developer?

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello everybody,
I am a maturing Java developer (starting to see some code in action!) from Italy, name's Adrian. Pleased to meet you all
Even tough the workplace situation might vary deeply between different countries I had a question to address to members of the CodeRanch forum who've had some experience under their belt in working with Java in enterprise environments. I've been studying Java now for a couple of years (with no prior programming experience at all before that) together with C, PHP, SQL and some other scripting languages. I'm well acquainted with OOP practices and concepts, I am now studying thread-safe design patterns in Java and Joshua Bloch's Effective Java among other things; I have some difficulties with Generics even if I'm fine with Collections and I sense that I'll eventually get them with a little more tinkering and careful study.

As a CGI PHP isn't very scalable compared to Hibernate ORM as I've recently discovered, because of all the boilerplate code needed to handle data access on one hand and the non-existing object/relational mapping on the other (I feel all those hours of study in OOP are wasted, I believe there's a framework somewhere out there to solve that, but I've decided to do backend things the Java way). Now it's a good thing to have a simple solution as PHP/MySQL for my personal websites or some smaller client (friends, really), but how about Spring AOP and Hibernate for larger projects I wonder? I feel PHP it's a career dead-end.
My question is, can I (or should I) start looking for a Java junior developer position and study Hibernate ORM and Spring AOP in my spare time (since I know them conceptually but seriously lack of experience in implementation), or should I wait some time to study those new technologies and get a better job position right off the bat (as I've never worked before as a developer in a team)?
In many job ads years of experience are required, so I need to start to work as soon as possible, so a java junior developer position would be a good fit, but I'm afraid that starting to work would preclude me from studying programming paradigms and frameworks that could be a good investment for the future. I can be a burden on my family for a little more if it's worth it on the long run, so I hope I can both move out and not end up being a developer in a dead-end job position.

Also I'm studying hard thinking that everyone will be a genius in the workplace (I totally ignore how task are being assigned to developers in the team), I imagine co-workers programming B-Trees with both hands tied behind their backs, so I'm writing this post also out of fear of not being skilled enough, I wouldn't want to do a series of interviews just to be rejected by each and every one of those, which would be a waste of time and an under the belt hit on morale... even if there's a more cynical part of me that fears I'll be working in a Dilbertian workplace if I don't aim high enough. Honestly I don't know what would be worse, lol.
Whoa! I've written quite a bit, sorry but I really don't know have Java friends to talk with about these subjects, and as you've probably noticed I have a lot of doubts due to a lack of hands-on work experience. I had to leave my CompSci degree and postpone it for later in my life for various reasons, and still haven't got any Java certifications, but I was considering on getting a couple. Exactly how many traps am I walking into?
Thanks
 
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Likes 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Adriano - welcome to JavaRanch!

I'm an experienced developer, but most of my experience is not with Java, so I'm not the best person to ask about working as a Java developer. But until the real Java developers turn up...

The hardest things to get in any area of IT is experience. You can study all you want in your spare time, but it won't help you if you can't get a job using those skills. So I'd recommend you take any opportunity you can find to get hands-on professional experience with Java. Work for free if you have to and can afford to e.g. on open source projects. You will learn more by applying the skills you have - and developing new skills in response to real-world challenges - than from studying on your own, and you will find it much easier to get your next Java job if you can already show some real experience of working as a Java developer.

It's a tough job market, and you may have to send out a lot of job applications, but don't wait until you think you are a "genius" before trying to get a job. Keep learning and practicing on your own - try working through tutorials on popular Java EE frameworks etc, or look at getting some Java certifications, but if somebody offers you a junior Java developer job in the meantime, grab it with both hands!

Good luck!
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Likes 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This post reminds me of a folk story that I had hear back in India: In Indian mythology, you have stories about people who perform meditation or do some sort of penance to impress the Gods. Once a god gets impressed, the god offers the devotee a boon. So, there what this guy who started doing penance. After long time, a goddess appeared before him and asked him what he would like to have. The guy said "hmm... if I were stronger, I could work in the fields more.. But if I were smarter, I could manager my business better". The goddess asked him "Well, you have to pick one. You want to be smarter or stronger? I have 2 cups of water here. Drink from the red cup and you become stronger. Drink from the blue cup and you become smarter". The guy thought about it and said "I can;t decide. All I can think about it is that both cups might taste differrent. May I take a sip out of each cup before I decide". She said "Of course". Well the guy took both cups... and drank both of them

Moral of the story: Sometimes choices are not binary. You can become smarter and stronger. You can get a job and learn frameworks. You might not be able to spend as much time learning frameworks if you are working. However, having real life experience will help you understand the frameworks faster. You can do both. You will have to do both,. Shoot.. by the time, you learn a framework, it;s obsolete already. If you are going to wait to learn the latest technology, you are never going to get a job, In this industry, learning new frameworks is a lifelong effort. You'll have to keep learning even after you get a job.

My advise is
1) look for a job
2) if you find a job. take the job. learn on the job
3) If you don;t find a job, learn at home.

 
Adrian Woodhouse
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thank you so much for your replies and for the warm welcome to the forum. The allegory was a cool addition, too
I will consider both of your advices, as soon as I finish reading about JSP, Servlets and design patterns by the end of the month I'll start sending CV's to work as a Java junior developer, see where that'll bring me. If I don't find a job I'll start developing something on my own (endless learning without building something is starting to become tedious) and keep on looking for a job.
What I wanted to do originally was to work as a freelancer, but in order do that I'd have to be an "indipendent contributor" in any project that may come my way - hence a senior developer.
I'll cross my fingers, thanks guys.
 
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Adriano Gattabuia wrote:as soon as I finish reading about JSP, Servlets and design patterns...


Studying frameworks by reading up on them is not worth much without practical experience, IMO. Luckily, servlets and JSP make it easy to get your hands dirty - install a servlet container like Tomcat, check out the examples that come with it, and start altering those and developing your own. Why would you want to wait before creating something on your own?
 
Adrian Woodhouse
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:

Adriano Gattabuia wrote:as soon as I finish reading about JSP, Servlets and design patterns...


Studying frameworks by reading up on them is not worth much without practical experience, IMO. Luckily, servlets and JSP make it easy to get your hands dirty - install a servlet container like Tomcat, check out the examples that come with it, and start altering those and developing your own. Why would you want to wait before creating something on your own?



Oh no no, I usually read, memorize the essentials then practice what I've learned; I agree that practical hands-on experience is important (as well as more stimulating) but I personally need to see the greater picture before diving into details. Thanks for the input, actually I'm working right now on some simple web app with MVC (Head First JSP and Servlets).
 
Not looking good. I think this might be the end. Wait! Is that a tiny ad?
Smokeless wood heat with a rocket mass heater
https://woodheat.net
reply
    Bookmark Topic Watch Topic
  • New Topic