General J2EE: How to become a sr Java & J2EE engineer
Hi I am a recent grad and have been working full time w/Java & J2EE for about 1 and 1/2yrs now after. I absolutely love the language and I want to grow very quickly in this field and become very good at it. I need some expert advice from all of you who have made it in this industry. What are some of the things I can do to master my command of the language as quickly as possible and what are the things I need to know. I appreciate all your comments.
- Posted by: Poetic Justice
- Posted on: June 07 2005 10:30 EDT
- How to become a sr Java & J2EE engineer by Poetic Justice on June 08 2005 11:01 EDT
- How NOT to become a sr Java &amp; J2EE engineer by Benjamin Possolo on June 12 2005 09:07 EDT
- How to become a sr Java & J2EE engineer by Brian Greene on June 10 2005 02:32 EDT
- How to become a sr Java Eng. enjoying the life! :-D by Damiano Altomare on June 10 2005 05:04 EDT
- How to become a sr Java &amp; J2EE engineer by Poetic Justice on June 13 2005 10:17 EDT
- How to become a sr Java &amp;amp; J2EE engineer by Benjamin Possolo on June 13 2005 01:05 EDT
- Thanks, AWESOME Advice! by Luis Murillo on January 24 2012 15:21 EST
- How to become a sr Java & J2EE engineer by Vasanta Sahyadri on April 23 2012 21:04 EDT
- Hats Off to you Brian by karthikeyan dandapani on June 13 2007 03:57 EDT
Funny how now one has responded to this thread considering the fact that Java developers and the community are allways willing to help and have great resource and tools for learning.
I am sorely disappointed w/the server side. I guess this is not the premier J2EE resource site. Thanks for nothing.
well perhaps the reason no one responded originally was because everyone had read your other thread "Why should i bother to learn EJB." I believe it was you that said "Sun clean up your act, get rid of EJB before dot net takes over Java's market share?"
I can tell you immediatly...approaching threads here on TSS with this mentality is NOT going to help you become a senior J2EE engineer. Id say mastering anything requires patience, hard work and open-mindedness.....3 things you have already demonstrated you dont have.
Step 1 in becoming a J2EE engineer: Stop bashing the people you are also trying to get help from.
first, there's no need to be mean because people didn't tell you how to be an overnight expert.
it sounds like a get rich quick goal. that said, I've been in the field for about 2 years and am far beyond that as a senior developer where I work. how'd I do it? simple - work.
1. read. download e-books from manning and read them. thoroughtly. work the examples.
2. get familiar with at least 2 app servers - tomcat, jboss, weblogic (they let you dl a free one for dev), oracle 10g (same dl as wl).
3. learn to make love with Ant. :)
4. learn at least one persistence framework in addition to ejb cmp
5. read. subscribe to TSS forums and read the threads where people have problems and pay attention to the solutions.
6. learn at least 2 versioning tools. cvs and subversion come to mind.
7. learn to use junit and its extensions and theories (cactus, strutstestcase, mock object testing...)
8. get REALLY familiar with one IDE. actually read the help files.
9. understand classloaders, the object contract, reflection, Collections
10. implement at least one large project in your free time - use it to play with the stuff you're learning. Do the WHOLE THING - I rented a server, set up the versioning system, fronted a clustered jboss instance with apache and a load balanced modjk connector - the works. then get people to play with your project.
11. try to work around people smarter than you - and work to learn everything theoretical they know.
12. read - the GOF design patterns book or "holub on patterns"
13. Read - the entire series of books by the pragmatic programmers.
14. be friends with the command line.
15. learn at least one web framework in addition to struts.
16. learn at least one java <-> XML binding tool
17. understand that web frameworks are servlets - if you don't get servlets you're lost.
18. write a ton of code.
19 read - JDJ, SD times, etc. take with a grain of salt.
20. download and build several large open source projects, and then several small ones with lousy build files.
21. download and play with a bunch of projects. read the docs and learn how to configure them. it's not the configs that are important, its the process of learning how things work.
22. get at least comfy with at least 2 RDMS, with at least one of them being oracle, MSSQLServer or DB2
23. get an rss feed reader and read blogs of the thought leaders in the industry and large project heads. ask questions. also read at least one blog by a fellow developer you don't know.
24. get on Sun's forums once a week and try to answer questions. not the crap where people want you to do their homework, but real problems they're having. You'll find out what you don't know, clarify what you do, get better at communicating technical things in written form, and derive a sense of satisfaction.
25. get really good at a few tools
26. look at the other side of things - if you LOVE hibernate, learn to understand the benifits of jdo.
27. READ THE SPEC. servlet, jsp, ejb, etc.
28. learn to write design documents for the code you're writing.
29. learn at least the basics of another language or a scripting language - if your only tool is a hammer - all problems look like nails
30. for lord's sake, note that J2EE is not a thing, but a collection of things.
31. learn at least the basics of LDAP.
32. work REALLY hard and love what you do. I still put in 60+ hours a week. 45-55 for the job and the rest on personal code.
that's my 2 cents. email me if I wasn't clear on anything brian at sticentralhub.com
... learn to make love with Ant. :):-) 32 rules, too much to remember for my limited brain! Furthermore, I could't spend all that time during the week to become a java Engineer, had to make love not with Ant (exsuse me, I'm Italian and like "dolce vita") and had to enjoy the life.
... I still put in 60+ hours a week. 45-55 for the job and the rest on personal code.that's my 2 cents. email me if I wasn't clear on anything brian at sticentralhub.com
My personal 4 rules to become a Java Engineer are:
1. Learn Java
2. Read MEJB, EJB Design Patterns, Articles and Books by Martin Fowler
3. above all Partecipate to many and many and many and many and many and many and many ... and many real complex enterprise projects with people that know their work
4. Be always intrested in new things, When you face new concepts go in internet or buy a new books to understand and master.
Thanks for all your comments. I guess I got a bit fustrated when I didnt get back any comments. If there's anything I've learnt so far is that learn from those who are more experienced. I appreciate all your comments and concerning EJB's I'll take a serious look at trying to learn it. Are there any really good online/books on EJB w/a good example being used in an application. I like books that dont just explain stuff but demonstrate it's uses in an application.
you can download Mastering EJB 3rd edition right here on the server side
you can also get several chapters from other useful books like Rod Johnson's One-On-One J2EE Design & Development. i believe this is the book thats partially available...if not its J2EE without EJB...either way they are probably 2 of the best books u can find
you can also find Struts Live...thats pretty good
I have to say O'reilly 'Head First' books, made a huge impact; enabling me to delve into more serious books later on. I've been also working with J2EE servlets for a almost a year. Compared to the industry standard, I still consider myself a padawan in training with an insatiable thirst for knowledge
This is a great list. I am not sure about the other guy. I believe it will help me move in the right direction.
Hi Brian, Thanks for your wonderful and exhaustive reply. It actually helps everybody in the industry. i just wonder how you find time apart from your normal work schedule to learn new things. i guess it is the love that you have towards the language. :-) Hi Poetic, Try to understand Java Language Specification, available online if you really want to understand the nuances of the Java language. Read as much as you can on the latest technologies. Have a passion for learning new things and applying the same. This one thing will make you stand tall in this industry. Cheers, D.Karthikeyan.