From an Unrelated Career To IT/Programming?
An anonymous reader writes "I hate my career of the past few years. For a long time I've wondered what I'd do after I broke even and could get into something new, and I keep coming back to computers. I'd like to get into software, since I always enjoyed coding. I have some background with C++ so I'm not starting entirely from scratch. My problem is my degrees and past employment have no practical application to the field. Where should I start? I have friends in both IT and software development who might be able to pull some strings and get me an interview or two for entry-level positions, but what can I do to make myself hireable in a short period of time? Is it possible to pick up enough of what I'd need within a couple months? If so, what and how?"
Having been a hiring manager for a couple of years, I got used to scanning resumes and deciding within 10 seconds whether to read further or not. Guess what: the one thing that matters is relevant experience.
How can you get relevant experience in a few months? Contribute to an Open Source project. Join one of the Fair projects listed on my site.
Contribute. Learn. Then put this fresh experience on your resume. Then you'll be hired (at least you would have a year ago - in this new economy, even Bill Gates would be jobless).
I'm in the IT industry. I got my B.Sc. in Computer Science in the early 1980s but before then I was fooling around with Apple ][, Cosmac ELF, PDP-11s, etc. etc. I'm sick of IT. I want to cook. I want to garden. I don't want to deal with people who constantly say: "My Internet is slow, can you fix it please?" or "I clicked on an email attachment and I think I've infected our company"
Unfortunately, the economic downturn (bubble burst?) has thrown any dream of retiring early into disarray and I guess I'm going to stick with things for awhile even though I hate it.
Be careful what you wish for... it may come true.
How bad is it that you're actually considering changing jobs in this economy? IMHO, you'd be a fool to give up a paying job now for something uncertain.
Programming can be very hard to transfer into, given the demand for experience and specific knowledge in the field (the US Dept of Labor sites this as one of the reasons less people enter into the field over others for second jobs). It would be almost impossible for you to get into anything other than an entry level support job (think helpdesk). Getting a job as a full developer will be a very difficult proposition. You might be able to get a job doing some "simple" development in a small shop though (think perl, php, that kind of stuff). Compare yourself to a college grad with a degree in Comp Sci (or similar degree) - graduates in this years class are seeing a very tough job market, even though software engineering is comparably untouched by the ongoing depression. These grads would have a level of experience similar to yours, but most likely be willing to work for less, and have been formally trained in the field. My suggestion would be to spend a significant amount of time learning the field, not just a language syntax. Go to a college website, see the books that are used for the classes, and start in on them. There is MUCH MUCH more to programming that just knowing a language syntax.
You don't give us much to go on, but surely software is used in your field . . . whatever it is. You probably already know more about that domain than most programmers already working in it. You might want to get as far away from that field as possible, but I doubt you can afford to not use your experience as a key selling point.
You probably don't want to hear this, but you're starting over. Without a relevant degree. So you're going back to entry level. I hope your finances are in order.
So, for example, you might apply to the support department for a software package that you use in your current field. I do QA, and I often say, "QA is a ghetto", but that's another possible entry point.
Once you get your foot in the door on the technical side you might be able to move toward programming if you bust your hump. For years. Largely without recognition. Be prepared, not just to prove yourself, but to prove your self over and over until someone actually notices. And then to that again until someone who is willing to take a chance on you notices.
Then, some day, if you put in a hero's effort, you might be able to be an entry-level programmer.
You've picked a tough row to hoe, sir.
-Peter
The market for IT is horrible right now and will probably get worse before it gets better. All the jobs are contract, temporary, and there's a high ratio of applicants to available positions. And the disconnect between those doing the hiring and those who have the ability do evaluate your technical skills? Let's just say HR can put on their job requirements "Five years Windows Vista" and will not look at your resume (for being honest), while some joker will get the job because he's willing to taylor his resume to whatever lies HR is looking for. There is no oversight. There are few left in this industry that actually do the hiring/screening and so a bunch of useless requirements now pervade many job listings. Legitimate workers can't find legitimate work because they're not being hired by anyone in the industry anymore... Everything (and I mean everything) is outsourced, contracted, subcontracted, then thrown in the basement bound and with a ball gag in its mouth. It's reinforced by the attitude that IT workers are a nearly unlimited and with 10% unemployment rates in some areas now and schools pumping out "msce certified technicians" by the boatload -- the industry itself is rotting due to an inability to actually see real talent in all the crap. It doesn't help that most of the jobs that used to be here are now overseas.
My advice? Start filling out applications for customer service, or find some really rare niche tech job and learn it. But the entry level is saturated to the point of disbelief, as far as I can tell.
- in the Midwest, YMMV.
#fuckbeta #iamslashdot #dicemustdie
You didn't say what your current career field is, but in many cases, unless you're looking for pure IT, the subject matter experience is more important and computer experience is a tool you use, or help others use, in that field.
For example, someone with lots of physics experience and some CS experience is probably a better candidate to do physics programming than someone with just a CS degree - though, obviously, not always...
It must have been something you assimilated. . . .
I can't recommend becoming a "coder" given the current business conditions.
What is in desperate need is process-oriented software project managers. The good news is that you can come at this with a bit of coding background if you combine it with rigorous project management training on the PMP track. I'll admit that half of employers won't look at you as a project manager if you don't have "10 years coding experience," but the other half will be willing to overlook a depth of coding experience if you have a solid process-oriented project management training and attitude. And once you've landed a job as a software project manager and get a project or two under your belt, you will have the cred to work anywhere.
Even if you do move forward with a "coder" career, I suggest you bone up on your software project management processes, and point out in resumes and interviews that you are serious about project process.
There are 100 million potential coders on the planet, but if you are the kind of coder who can also gather requirements (in English, on site in the US ;), create work breakdown structures, generate project plans and test plans, track the project, and demonstrate successful testing, you will shine a bit above folks who can't, even if you have not ever written a compiler in class.
Yes, relevant experience is important. Everyone wants x years of experience. Well, how do you get that experience if no one is hiring at entry-level?
You like to program, want to get into it. You are certain that you will be able to get the job done only if someone gives you a chance. Someone taking a chance on you is exactly what you need. To get to that point, you have to start programming.
Read object oriented programming principles, a book on JAVA would do to get an idea on things. Pick a project you are interested in. For me, it was to build a site from ground up. This exposed me to the whole picture of web development and how it all tied together.
Database modeling and administration
Back-end programming
Front-end JavaScript GUI development
Session handling
Communications between the different layers
Encoding
Validation
Web Server Administration/Configuration
Granted I didn't become an expert of any of those technologies, it did however give me an understanding of the priceless big picture, a taste of programming. Thereupon, with confidence I applied for positions. With such exposure you can have a better idea in which direction you want to go in.
You might not be able to go for hardcore software engineering jobs at first, but there are jobs for all levels in the field. Slowly with time, education and experience, you can as you did with your first job determine your future.
Start programming for a project of your own and/or open-source.
Programming has its ups and downs as with any other profession. Programming gives you an element of autonomy. Casual clothes, Flexible work schedule, working remotely, and best of all good pay are usually among many other pros. Programming heavy logic will work your brain to the limit, so it is fatiguing. You will face the computer screen quite often and it is mostly a anti-social job. Therefore it is vital that you compliment this with exercise and social activities to balance things out. Often, you will be asked to do things by business but how you do it often will be up to you. Therefore, creativity at the workplace is a fuzzy thing. But in time with technical skills you can move to management or architecture and design.
Sincerely wishing you much success.
IT is Information Technology, and Programming is software development. Unless you specifically mean software development for information technology, I'd say the question is wrong headed. Its like asking how to bust into the field of auto-mechanics/taxi driving.
The Admin and the Engineer
You will be able to get a job in IT much more easily than in programming. Now, I know this is going to get some wicked replies, but IT is easier than Programming to enter into as the formal education requirement is much lower. I spent 7 years doing very large scale UNIX support (10,000 workstations, 900 servers, at that time one of the largest UNIX installations on the planet), and another 7 doing large scale "enterprise" development (large volume transaction processing),and hands down, the complexity of the issues in programming is much greater than in IT support. You can get a job doing helpdesk support and move into a small scale administration job in a small number of years. Getting into a entry-level programming job without either formal education or a significant amount of other IT experience will be difficult if not impossible in anything other than the smallest shop. The jobs are also very different. IT has you up at all hours, often fighting small campfires and blazing infernos. Shit roles downhill much faster in IT than any other job on the planet, and the stress can be considerable. However, the technical knowledge barrier for entry is not as high in the field as in programming. Programming on the other hand does not have as much of the firefighting, and is indeed lower stress, but some of the problems to be solved are very difficult, and doing something wrong can have very large penalties. Contrary to popular belief, most of the time spent by developers is not actually coding, be aware of that. And you are more than likely to not develop new applications, rather you will be supporting or enhancing a existing application. The two areas are very different, so make sure you want to get into programming and not IT. Either way, it will be a rough road without formal training or significant amounts of experience and the areas involve different skill sets. Spend some time determining which area is the most interesting for you. To get a helpdesk job, you could get some MCSE certs in a fairly short time which would help get you on a Windows support desk fairly quickly. Programming is a different beast. In that case I suggest getting a formal education, as going back to school will get you a entry level programming job faster than "working your way" through the ranks. Be aware that just knowing a language syntax is not enough to program anything other than the smallest applications. Programmers who just know syntax are the worst of all breeds and are thoroughly reviled - don't become one of those.
You can read the report at http://www.bls.gov/oco/ocos110.htm from the Bureau of Labor Statistics. Specifically look at the Training and Outlook sections before you make your decision. It sounds like you would have ALOT of work to do to even make the most basic entry level job.
Pointers?
I asked a question about pointers in an interview once... the answer, paraphrased was:
"Pointers? Here's a pointer. If you're not writing device drivers, use a language like C# or Java that doesn't have them."
He got hired. I needed a Java guy who solved problems in a Java way.