Short version of my story (Long version follows) I am a mainframe programmer/contractor using COBOL/DB2/CICS. I want to move into the world of OO using JAVA mainly in applets. I have a 4 year degree with 15 years of experience. I have been taking classes at a technical college here in Memphis, TN. to learn OO programming. I have decided that JAVA is what I want to focus on. I am currently learning all I can and plan to get certified later this year. Part of my problem is I am a contractor and it is hard to get new experience in something you have not already done. Also whenever a perspective employer looks at my resume, they want to hire me as a Mainframe programmer. I have decided the best strategy would be to find a full-time job with a company that has both mainframe COBOL and JAVA, prove myself, and look to move into the JAVA department. I am also open to taking an entry-level job as a JAVA developer even though this would be a pay-cut. I would appreciate any advise or stories that anyone can share to help me on my way. Long Version I started out in Programming in 1986 working with PC's. This was mostly assisting users and I wanted to get into Mainframe programming. I finally did in 1988 and have been doing it ever since. I have found that to learn a new skill, I had to teach myself. The only skills I picked up in college were COBOL and JCL. I learned DB/2 and CICS on my own and finally got on the job experience. I entered the contracting world in 1991 after being laid off from my job. It was rough going at first but I eventually got enough experience to keep myself busy all the time. Aroung 1998 I decided that after Y2K, it would be wise to finally start making the move to PC programming. I will confess, I have always liked MS Windows. This is from a guy who cut his PC programming teeth on DOS. If you want to try something fun, try building a complex directory structure using only the DOS line prompt and you will see why I liked Windows so much whem it came out. I know there is a lot of anamosity towards MS but over the years I have learned there is no perfect system, nor is there one system that everyone will love. So forgive me for mentioning the dreaded MS in a JAVA forum. My decision to move to PC's from Mainframe was influenced by my familiarity with Windows, and the fact that the majority of changes happening in the data processing world were in PC's. At the technical college here in Mamphis, I have taken C, Visual Basic, Access, C++ and JAVA. When I got into OO and the light bulb finally went off, I decided this is what I wanted to do at this stage in my career. I also came to the realization that I needed to focus on one or two things. You see, when I started in programming, there were only a handful of languages. There was no INTERNET, no LANS, only 3-4 languages, so you could try to learn a littla about it all. Now I have decided that JAVA is my favorite and alas, even though I like MS Windows, I will need to go into a UNIX operating system, which is fine. I want to do web programming as I also dearly love the INTERNET. In my present contract, we are converting a legacy database to ORACLE and I should be getting my feet wet with ORACLE. I have also found that all my years of experience make learning the new things easier. For instance, I have used IF/ELSE, for loops, arrays, etc. for years so the real learning is going from structured, top down, linear programming to OO with classes. Also I know a lot about the business world and how a lot of data processing shops work. As for my job hunt, I plan to finish this current project, and then my wife and I want to relocate to Florida, preferably the Orlando area. I am from Florida and my wife loves warm weather. I hope this post isn't too long but I wanted to give more info to anyone who wanted the long verson of my story. Any advise and stories would be helpful.
Actually, moving into the JAVA world doesn't necessarily mean you will be using any UNIX type OS. Many enterprise servers are run on NT based systems. In my environment we use ORACLE, and IPlanet Web Server and LDAP running on NTs. Still, I think learning UNIX is invaluable and will only serve to help you. Just wanted to let you know that getting into Java doesn't mean abandoning Windoze. Based on what you said, I would definitely leverage your Database experience and make it work for you. Get into JDBC, servlets, JSP, and possibly EJB as a start (and also probably in that order). On your resume emphasize your database experiences, particularly the ORACLE. I think there is a personal/trial/development addition of ORACLE that you can download. It might not be a bad idea to download that and figure out how to interact with it via JDBC. When you put on your resume that your professional ORACLE experience, and you also put on your resume that you know JDBC, the person reviewing your resume may very likely make a linkage between the two (as in assume your professional experience with ORACLE involved JDBC). Naturally don't lie, but they are free to make any assumptions they want. On another note, I don't know how true this is, but I've heard that many companies plan to migrate their legacy COBOL applications to Java. If you can find anyone doing this, this would probably be a great way to get your foot in the door, based on your COBOL experience.
Rod, I was in the same position you are in now(Almost exactly) about 1 1/2 ago. I will always be a Mainframe contractor at heart(10 years) COBOL/DB2/CICS/JCL. In that time I taught myself Java(Servlets/JSP/JFC/JFC), OOD, OOP. I obtained my Sun certification in Nov. 2000 After working my butt off and finally go someone to take a look and give me a chance. I have been employed as a Java developer for a little over two months. I found a position which allows me to leverage my Mainframe skills with my Java Skills therefore my contract rate is still close to the same. This is your best bet as well.
Let me give you some tips: 1.) Write Code - Find out how everything you use works. Even if your OO isn't all that great writing code will some you where your weaknesses are. 2.) Tighten Code - After you have figured out a solution to a problem try to improve on the design. Try to use Constant types, Abstracts, Interfaces, Singletons in order to see why and when you should use them. 3.) Optimize Code - If you look at your classes and see your are reproducing code that is a good indicator your OO needs work. 4.) Buy A Programmer's Guide to Java Certifcation by Mughal and Rasmussen. This the best book on the market in my opinion and a good reference 5.) Go through Sun's tutorials 6.) Learn XML(Soap, DOM, ect) - It might not seem important now but you will see soon that it is. 7.) Focus on core Java first - JFC, I/O, AWT, Collections, Threads, the basic concepts of OO. Don't worry about APIs like Servlets, JSP, EJP, ect until your core Java is strong. Actually I would wait until you can pass the Sun Certification, first. After certification: 1.) The world will not be your oyster. No it will not guarantee you 6-figures. It just show you understand core Java..that's it!! 2.) Set up your own Web/App server. I recommend the Apache/Tomcat combo. Practice writing JSP/Servlets/Java Beans 3.) Progress in EJB/RMI/CORBA with anything that implements J2EE(Weblogic, Websphere, Oracle) If you have specific questions drop me an e-mail or go by my site at: www.travismgibson.com Good luck...you can do it!!
Jason, Thank you for your reply and encouragement. Yes I feel strong about my database experience. I have used SQL a lot and I am very comfortable with it. One of my co-workers here has been helping me with Oracle and he loaded it on my computer here at work in preperation for migrating the IDMS database I support to Oracle. He is also letting me use a learning edition at home so that when the project heats up I will be somewhat up to speed. It is good to hear that I could stay in a Windoze environment snce I already know that pretty well. I have been fascinated with UNIX lately so I will train myself in the meantime. I did hear about some companies in Orlando that specialize in migrating legacy applications from mainframe to Java or other OO and web-based apps. I don't know the names but I will try to find out. Thanks again Jason and I will keep you posted on my journey into the world of Java.
Travis, Good to hear from you !! I will probably always be a mainframe contractor at heart also but the world is changing and I have always enjoyed learning new things. I most likely will leave contracting though, my wife and I have an 11 month-old little girl and she is staying home with the baby. Our most pressing need is group health insurance. We can't find the coverage we need outside of group so that has become the determining factor. Looking back on my past I have never failed to enter a new technology once I made up my mind and focused on it. I am sure I will get there eventually although this time it may be somewhat challenging. I do realize that getting certified is no panacea but with some experience it can be some help towards getting where I want to be. Awesome web site !! I love the links and I will be making use of them. I have a friend in Atlanta who did something very similar, he set up a website utilizing a database to show what he could do. He eventually got a job at a consulting firm there as a salaried consultant. He is a big Windows guy though, writes a lot of COMs and ASPs. I know the book you mentioned and I am planning to purchase it soon. What do you think of these books: Just Java2 by Peter van der Linden, Beginning Java by Ivor Horton, or the two Core Java books that Sun promotes ? I am looking for a better book than the one my technical college is using in the class I am taking. Any advise would be helpful. Thanks again and I will keep you posted in what happens on my journey.