Win a copy of Node.js Design Patterns: Design and implement production-grade Node.js applications using proven patterns and techniques this week in the Server-Side JavaScript and NodeJS forum!
  • 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
  • Rob Spoor
  • Tim Cooke
  • Junilu Lacar
Sheriffs:
  • Henry Wong
  • Liutauras Vilda
  • Jeanne Boyarsky
Saloon Keepers:
  • Jesse Silverman
  • Tim Holloway
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Mikalai Zaikin
  • Piet Souris

Starting out in Java development

 
Ranch Hand
Posts: 72
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi

I actually used to be a QA, and have worked with Java in testing frameworks for about 2 years, and before that Ruby.
My old company offered me a role a developer, due to demonstrating effort and commitment to solving live issues in the code base, and a fortunate opportunity of a move at the right time.
So, I worked there for about 6 months as a dev, not really writing much green fields stuff, more bug fixing and amending existing functionality, but I learned alot at that time and enjoyed it.

I always felt to more experienced members in the team, that I was way behind in skill and knowledge. Mostly experience I guess.

Working with Java in a testing capacity is quite different from development, because development is OOP based, and although the test framework was attempting to be, the code and structure was not as well implemented, nor thought out.

So I thought, as I am at a disadvantage "experience wise", I had better push myself to learn in my spare time, so I studied and passed the OCJP. I enjoyed it, although it doesnt go into much practical coding, it did help lay out the fundamentals, particularly regarding collections and generics. I also spent alot of my spare time writing my own blog engine from scratch, I posted on here 6 months or so ago, how to improve my knowledge and alot of guys posted that I should build the engine in Java only, and avoid using frameworks, which I did. On top of this, Ive begun studying for the OCJWCD...

Anyway, my old place started to move into a very front end, angular based domain, and I didnt particularly enjoy it, so I decided to move to a new place, and luckily, through my chances, I managed to land my first real developer role. Its been good so far, challenging, i still very junior like, which is expected I guess as I made it clear to my employers regarding my level.

So my question is, how can I continue to grow skills, knowledge and exposure. Is there anything further I can add? I guess one obvious thing is missing, like attending meetups etc, which right now I feel too exhausted to go to, because the learning curve at my new place has been really steep, but enjoyable.

Any further advice, tips etc welcome, thanks for reading.
 
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations, Ben, it sounds like you're already doing all the right things!

OCJWCD is probably a good thing to look at in the short term, as it covers widely used web tools, although a lot of people seem to be looking beyond these, as you've already noticed. Given your QA background, have you looked at some of the more interesting alternative tools for testing like Spock, ScalaTest etc, that might be useful at work? How comfortable are you with your build and integration tools e.g. Maven, Gradle, Jenkins, etc? Do you know anything about databases or NoSQL?

Are there particular areas that you find interesting, or where you might be able to find opportunities to expand your skills at work? If you're looking at things to learn about in your spare time, have a browse through online courses at Udacity or Coursera as these can be a great way to get a quick start with new ideas/technologies. For example, I picked up some functional programming and big data skills last year by doing a few Coursera courses, and I recently started working on a big data project, which will allow me to develop those skills in practice and is also a heck of a lot more fun that what I was doing before. And you can learn a bit about MongoDB (currently the most popular NoSQL database), for example, by taking one of the free MongoDB for developers classes that run every few months at https://university.mongodb.com/courses.

I guess the trick is to keep looking out for opportunities to learn new stuff.

In the meantime, get a copy of The Well-Grounded Java Developer - I guarantee you'll find something new in there!
 
Arch enemy? I mean, I don't like you, but I don't think you qualify as "arch enemy". Here, try this tiny ad:
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
reply
    Bookmark Topic Watch Topic
  • New Topic