Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
The Almighty Buck

Returning To Software Development? 12

north.coaster asks: "I haven't worked as a software developer for about 10 years, but back then I was a pretty decent C/Unix programmer. Now I'm thinking seriously about getting back into software development, but I don't have much expertise in the latest technologies (Java, XML, etc.). What are the job prospects for a 40+ year old who has been away from the field for that long? Short of quitting my job and going back to school for a while (which is not possible in my case), what can I do to improve my chances at landing a reasonable job?" Yesterday Slashdot was asked "Does Age Matter?" when it comes to youngers getting a fair shake in IT. Now this question proposes a look at this from the other direction. You've already got the experience, but you've taken a break from the field for a time and want to jump back in. What things should you do to prepare yourself, and what kind of responses should you be prepared to get?
This discussion has been archived. No new comments can be posted.

Returning To Software Development?

Comments Filter:
  • by Kefaa ( 76147 ) on Wednesday February 07, 2001 @07:34PM (#447842)
    In all seriousness, you have a tough road ahead of you. While in many cases I see great advantages to us old guys, here is what I found. In the development world, technology gets you in the door, experiences keep you there. You need to get in the door first. In addition, you need pay that is going to keep you in your current lifestyle (what ever that may be).

    Since you do not mention what your recent past experience is, my general suggestions are this:

    Look for a company in your business area of expertise

    Go in as a Business Analyst or Project Leader. You can then move within the organization to reclaim your skills and experiences in the current technology.

    Expect to break even, salary wise, at best. You may do better than that but the market is fickle these days. Everyone wants to buy experience in the technology. (While claiming they want business experience)

    I find small companies are a better option that larger or contract type work in your situation. Small companies are often happy to let you do more, regardless of what you were "hired" to do. I have found larger companies try to keep everyone in their "job codes", while contract work tends to hire technology.

    If you want to lead the pack, I believe you may be better in XML technologies. The market is thinner and just getting off the ground. Someone who has the experience to recognize sale over substance is a godsend to many companies.

    Be optimistic, you will be able to learn the technology faster than the person who needs to learn business. In addition, you have a track record (good or bad) that will make people hiring you feel more secure in predicting.

  • The previous poster has some excellent suggestions. The only one I'd add is to start learning the technology of choice in your spare time and then make some functional demo apps.

    If you can come into an interview, open up a web browser, point them to a site and say "I built this using X, Y, and Z, which are the technologies you use here" then they'll be much less likely to worry about your age. Given the state of the job market, I'd hire a cephalopod as long as it interviewed well and its portfolio code was well-commented and functional.

    Also look for a way to make use of your old experience. No matter what you worked on a decade ago, somebody is probably running a copy of it. Being able to say "You know that legacy system you're interfacing with? I know it cold, and I'd be glad to write an XML-based interface to it," could make somebody's day.
  • by The Mayor ( 6048 ) on Wednesday February 07, 2001 @10:13PM (#447844)
    In addition to the other posts, I'd recommend learning an emerging technology. One where there are few, if any, experts available. Something like WAP (which relies on XML). Learn about generating WML (WAP's equivalent to XML) from Perl or Java.

    Now, that's quite a bit of learning, as you'll need to learn Perl or Java (focus on Servlets or JSPs for Java--this is how server-side Java is usually done) in order to generate WAP.

    Build a little application in your spare time that integrates stock quotes and Slashdot headlines. This will take a while. All told, if you're spending 2-4 hours a night on this, you're looking at 3-6 months, I would suspect (learning curve included). When you're done, start applying for jobs doing WAP programming. There aren't tons now, but it's growing exponentially. And the good thing is that there's a much higher demand than supply. Oh, and if they question your abilities, you also have a demo that fits in your pocket. Bring your mobile phone with you to the interview.

    That's just one way. There are lots of emerging technologies. Of course, the problem with any emerging technologies is that they usually rely upon one or more established techologies. Don't be afraid to learn, though. Moving from C to Java might open your eyes up a little. And the move from C to Perl really isn't that great a leap.
  • As long as you have some free time in the evening/weekends and don't mind your current job for another few months I don't see any reason you couldn't teach yourself java. It really isn't that tough of a language. Go buy yourself a few books and find some online docs. If this is something you really want to do, then you should be able to make the necessary time to learn a new thing.

    -Andy
  • by StandardDeviant ( 122674 ) on Thursday February 08, 2001 @12:58AM (#447846) Homepage Journal

    Just my two cents, but having had experience with C and C++ before learning Java, Java "feels" more like C than C++. If you can learn well on your own, I'd suggest Thinking in Java by Bruce Eckel, since you aren't a newbie programmer. It isn't really a syntax book, but it helps you understand how to think about problems in the Java way (like getting use to Strings instead of char arrays, as a trivial example; using objects instead of functions to organize code as a less trivial example). For a syntax book, definitely check the Java (tiger) book by O'Reilly, and the companion Java Examples book.

    XML is kind of a nebulous field. Sort of like HTML in the 96-era, it is far from certain how some of that stuff is going to settle out. Moreso becuase by it's very nature the XML you use on the job may not be the XML some other company is using, so you sort of have to know what you're going to do with it before you start learning it. "Just XML" by John Simpson is pretty good as a general overview from first principles. The XML pocket reference by ORA is also good; and I'm looking forward to reading their Learning XML book too (think it was just published).

    Also, keep in mind that Unix and C are still very valid skills to have[1]. Searching on dice.com or monster.com will surely underscore this (alhough Java and XML are of course nice icings to have). If you want to brush up on Unix cheaply, get an inexpensive used x86 box or use any spares you might have combined with a free unix like *BSD or linux (www.cheapbytes.com for uber-cheap media, www.used-pcs.com is a local (Austin, TX) store, good example of how cheap a perfectly capable machine can be).

    Of course if you have a hard time learning on you own (I sort of do, I didn't really grok java until I tooks some classes on it), there is always local community colleges and/or tech training classes. The advantage here is of course flexible scheduling.

    Take this next statement with a grain of salt, as I just turned 23: I think that a lot of the old-worker-bias-in-tech is sort of self-inflicted by the older workers. I know that as you get older and have a family and stuff, you may not have as much flexibility as somebody my age to learn every new tech that comes down the pipe. But taking a class or two a year can't be too impossible. In other words, if you're whining becuase nobody wants MVS or JCL or whatnot wizards, well, what can I say but that you've had a good 10+ years to realize that those things were falling out of favor? Keeping reasonably current may just mean looking at the job ads in your area every six months or so to see what the trends are and then taking a class at night or buying a few books if it looks prudent to learn a new skill or two... Programming is technology-driven, but there are I think many things in the field that are made considerably easier by the maturity that additional experience (both with managing a project and time[2], like a professional engineer, and with thought patterns like "oh, well, X alogorithm is a good idea for this data, hmm, how do I write that in the language du-jour?") brings (much like the concept of "mathematical maturity" whereby the more math classes you've had, the easier they get even if they're in different areas of study because of the common mindset; if thatmakes any sense).

    Anyway, best of luck! :-) (last sidenote: www.bookpool.com for heavily discounted tech books, esp. cost-effective if you're ordering multiple things becuase shipping works out to be a fraction of what sales tax would have been)

    [1] Of course the unix landscape has probably changed a bit in the ten years you've been outside the field. But probably not so much that you couldn't quickly bridge the gap. Again, free unix to the rescue (x86, sparc, alpha, basically any arch you can name is supported by something free). And solaris is free (x86 and sparc, see ebay for cheap sparc stuff, but you'll probably want a sparc5-170 or better to run solaris 8) to hobbiest folks, as is SCO (x86), as is tru-64 (alpha), etc. (many commercial unix vendors have responded to the linux tide by offering hobby and noncommercial licenses for free or cost-of-media; leaving the only barrier in the form of getting the proprietary HW to run it on). I imagine that to a large extent the changes have been more in user environment than on the programmatic level (yeah hardware has mutated a lot, but C #includes still do the same thing, and I bet printf() wasn't much different then... ;-) ) I think I was looking at a career survey on dice.com and the most frequently requested Unix-type skills were on Linux and Solaris, in that order; followed by HP-UX and AIX roughly tied in 3rd.

    [2] the best code in the world doesn't count for shit on a stick if it's released six months late. Language proficiency is, off the cuff, maybe 10% of release time. The rest is all time/project/people managment and skills, something I think many people my age aren't clued into just yet... 80-hour-a-week code binges are a sign of poor managment.


    --
    Fuck Censorship.
  • And the move from C to Perl really isn't that great a leap.

    I definitely second that. Perl is really, really easy if you know C, esp. if you know your way around a shell script too. Suggested order of reading: Learning Perl (llama, ORA), Programming Perl (camel, ORA) and the Perl Cookbook (don't recall cover, ORA) at roughly the same time (start doing you're own stuff here to cement the knowledge), after that Advanced Perl Programming (tiger, ORA) and/or Object-Oriented Perl (D. Conway, pub by Manning). That's pretty much a complete course in everything there is to know about perl (you can be very productive just reading the first two or three).

    One cool thing about perl is that it's applicable EVERYWHERE. Not just the web with CGI and database stuff, but also as a system admin tool, as a programming automation tool (no more nasty shell scripts to run tests), as an embedded scripting language for a C application, etc. etc. Perl was around ten years ago but it has changed quite a bit since then, and much for the better I've heard.


    --
    Fuck Censorship.
  • I'd say you have excellent job prospects. If you were at one time a good programmer, and you're willing to invest 3-6 months of free time to "get back on the bike", you'll be fine.
    As others have suggested, pick up a good intro book to Java, and maybe a couple O'Reilly books on some deeper aspects of the language (Java Network Programming is good, as is Java Servlets). After learning from those, I'd say you're ready to start looking for a job op.
    I'd also suggest that to reacquaint yourself with the discipline of programming, get a book on Patterns or Extreme Programming. Both are good areas to be familiar with in today's market, and learning about these topics will make you feel more like a "real" programmer again ;-).

    Oh, and write lots of code. Take examples in the books you read and enhance them. Have some examples in your arsenal for the interviews...
  • If I saw a resume such as what you describe, I would think something like this : "Hopefully has the wisdom and maturity to pick up the technologies we use [ provided he has some relevant experience that he can use as a foundation ]. His age hopefully means that he can provide some leadership and direction for the younger guys. I'd expect him to be the kind of guy that I can ask to write a functional spec, or draw up a project schedule, etc.." In other words, even if you started by doing only 20% code and 80% more management type things, I could still get a benefit out of you. If you're asking whether you can get a job doing 80% coding right from day one, I wouldn't be able to help you I'm afraid. But if you were willing to go the other way for a little while (primarily be more management) you could improve your tech skills during that time.

    (Kindly note that when I say management i don't necessarily mean with direct reports on the org chart dealing with budget. I mean a senior person who I can give some respnonsibility and resources to, who knows what to do with both of them).

  • As long as you have some free time in the evening/weekends and don't mind your current job for another few months I don't see any reason you couldn't teach yourself java. It really isn't that tough of a language. Go buy yourself a few books and find some online docs.

    Be prepared to learn the basic concepts Object-Oriented programming at the same time as you learn Java.

    Also, even if you were doing OOP ten years ago in C++ or Smalltalk or something, there have been developments since then like design patterns.
    ---

  • If you learn the languages and tools needed to create useful business applications (ie. Java, JSP, SQL, XML), whether you learn them on your own, or by taking community college classes at night, your should have no problem finding a good position. One way of demonstrating proficiency is to set up your own online web store, with administration tools. Something like that can serve as a sort of "portfolio" for prospective employers.
  • Well most of the previous posters already pointed out, that it is possible to return if one wants to (there is still a strong demand on really skilled people). So I will not repeat that now - just want to mention some little things you've maybe forgotten in the past ten years about our great life. Don't take it too seriously! :-)

    No more boring eavenings in front of your TV!

    Tired of sitting in front of your TV all eavenings? Forget about that! There's always something broken which has urgently to be fixed until tomorrow. And if it really should happen that everything is on track, your management will surely cut down the deadline for your current project a month or two...

    Refreshing new discussions in your partnership!

    Enjoy dramatic discussions with your partner crying that she's moving back to her mother. Look fascinated at your children's eyes, wonder who that other man in the door may be, after finishing a 2-year project in 6 months (including weekends). This may even give you a chance to completely start over with a brand new partner :-)

    Always fascinating new development kits!

    So, after spending the last two years learning about your programming environment you feel your job is getting boring? NO! Your management is looking after you! In a fascinating move they decided to introduce a new platform which is - of course - 99% compatible - the lacking 1% is only the operating system, the hardware, the programming language, the database system... If your management should not be smart enough to make such an decision, your OS vendor will!

    Get known!

    You feel depressed because noone seems to recognize you? As a programmer everybody in your company knows you, for you are surely responsible for all the problems they have with handling their computers! Learn how to cover and avoid crowds of outraged people - only celebrities like the Stones can share that kind of feeling.

    Don't call - they'll call!

    If you decide to start as a freelancer you'll have even more fun! Your customers will refuse to pay until bank employees you've never heard of will call you on a regular basis, telling you that you don't have to worry about too much money on your account. This may even offer you a great chance to look for a new flat.

    Start interesting studies on hotel equipment!

    Once you become better and better you'll be offered a great chance: Travel around the world and learn that a business hotel in San Francisco has the same furnishing as in Kopenhagen or Munich. While impressed you can also improve your skill to survive without sleep for days when hurrying to your customer after an 16 hour transcontinental flight in the tourist class.

    Enter, if you dare!

    Convinced? Join now! Welcome back!
    --
    My uncertainty principle:

  • The hardest thing is going to be proving you can still do it. It doesn't matter, in most cases, how much you did in the past if you HAVEN'T done it for the last couple years.

    What you need to do is get yourself back onto the market. Take any computer-related field (Administration, tech support, programming, etc). Also, decide on a language and try to pick it up -- mostly to show that you are still trying to learn more. That seems to be VERY important. Check out places like dice.com to see what qualifications people are looking for.

    If you can dazzle them, that's great. But realize that it might be completely pointless to dazzle the wrong person. If you do an interview with one person and totally amaze them -- and the person doing the hiring is only looking at your work experience..... So, make sure to ask for and talk to the right people.

    Don't forget to include anything you HAVE been doing for the last 10 years. Even if it is not computer related, you can usually spin it to show why it will help you with the job you are applying for.

    One other option might be for you to be a team lead. If you are managing other programmers, they might see your age and programming experience as a plus -- after all, their boss knows what they are going through.

Beware of Programmers who carry screwdrivers. -- Leonard Brandwein

Working...