• 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
  • Tim Cooke
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Liutauras Vilda
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Java developer with 10+ years of experience seeks advice for his next move

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello,

So I'm a generalist Java developer and I've more than 10 years of experience. After five years spent in the same company, I'm forced to search for another job: because of contract policy I can't stay anymore at my position and I'll have to move away in 5 months.

During the past years I've been working for different domain (finance, administration) and with different technologies around Java (Swing, JSP, EJB 2, Struts1 and 2, Spring 2 and 3, Hibernate, and recently Groovy, Grails and BPMN with a Java engine).

Now when I look for a job, there are plenty of different profile, just for server side: JEE, Spring+hibernate, Vert.x, and other esoteric frameworks or non java (node.js)
Add a mixture of client side stuff (CSS3 and HTML5, JSF, other JSP technology, GWT (and Vaadin), a sick amount of js frameworks leaded by angular , and even a bit of Swing and/or JavaFx).

I've started to look for a new job, I even had some interviews, but it's hard for me to be proficient in technologies I've not used for years (JEE) and often it's required to be proficient in a target techno that I don't know (vert.x + angular or Vaadin for examples).
I'm a bit affraid of finding only maintenance project, that will bury me into the 'has been' developer pile, working with legacy JEE5 / Struts or Swing.

In another hand I'm a bit afraid of not being able to sustain the surge of new technologies to learn to stay sharp on the market: I've learn a lot of stuff that are not relevant anymore, and picking the right next technology is quite a gamble today. I have to admit that with the years I have less time to spare on experimenting and learning new stuff, and reading tech books is now less fun for me that it used to be. I'm somewhat bored with the "everything is computer" attitude I used to have, and I have now a family to care.

I've started to actively learn JEE6 and 7 to sell myself as a Spring and JEE expert, and I'm working on passing few Oracle certification to give myself some credit. Ultimately I think that having a JEE Architect certification can help me going further the developer role.

But right now, I'm totally sure of what could be a smart move, I'm a bit concerned about the future: what will be the technology, the skillset (BigData, AI, ...) and even if a developer will still be required in 10 or 20 years.

In my shoes, what will you do (or what path have you already chose) in this situation ?

Many thanks for your attention and feedback.
 
Sheriff
Posts: 17734
302
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

Guill. Ame wrote:even if a developer will still be required in 10 or 20 years.

In my shoes, what will you do (or what path have you already chose) in this situation ?


Until IBM Watson becomes self-aware and starts cloning itself out on the Internet, until it achieves technological singularity, then I think it's a safe bet that developers will still be required in the foreseeable future. Besides, when singularity happens, we should just pack our bags and head for the hills or the nearest underground network of tunnels because the terminators will soon be out in force to round up all the humans.

Seriously though, with the kind of messed up systems we have right now in the real world and the kind of code that keeps getting pumped out day in and day out, singularity will be an elusive dream. There will always be a need for developers until that dream becomes a reality.

As for the path, I would say choose an aspect of software development that you're really passionate about and enjoy doing, thoroughly understand the principles and practices that apply in that area, then look at specific technologies. In that order. I have been in this business for almost 30 years and I'm still getting hit up by tech recruiters all the time. The differentiator for me is that while I may not be up to speed in all the new technologies, I have a deep understanding of principles and practices that make these technologies work. Technologies come and go but the principles and practices that make them work will last you much longer. For me, longevity lies in agility and being able to adopt and adapt to changes quickly. Knowing how to write clean code will always be a plus, no matter what language you're using or what technology you're dealing with. Knowing about good design and how to recognize bad design when you see has also been very beneficial for me.

Bottom line, IMO, it's best to have solid general skills and knowledge that you can use to learn specific technologies. Without this deep kind of understanding of software and software development, learning about specific technologies becomes less valuable in the long term.
 
Junilu Lacar
Sheriff
Posts: 17734
302
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
And Welcome to the Ranch!
 
The only thing that kept the leeches off of me was this tiny ad:
We need your help - Coderanch server fundraiser
https://coderanch.com/wiki/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic