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).
and some reserves in the bank (or mattress) should see you through til you can catch up.
Life is too short to work in a job you hate, so go for it dude(tte).
Sent from your iPad.
"no practical application to the field"
Try management.
Make it all up.... the worst that could happen is that you would get fired after a few months. But, believe me, there's a lot of shoddy programmers out there, so, you'd be hard pressed to do worse than some of the "pros" that are out there.
This is my sig.
Speaking as someone who's been involved in IT for 30+ years, allow me to shout at you...."You're going the wrong way!!!"
.nosig
You're not going to get hired by any of the big boys, because they all want degrees and experience. A small time shop writing business software is something you might be able to get into. If you didn't know, business software is by far the easiest and most boring software you can write. But, it all needs to be written, and that's where you can get your start. You could also just get an MCSE. That's easy enough if you have a bit of cash, and the letters next to your name can get you hired.
Understanding the business, understanding what the code needs to accomplish and being able to communicate with the users can be just as valuable as coding experience. This does depend on the company. Highlight these areas. It will tend to look you look a bit more than a manager than a programmer, but you will get your foot in the door.
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.
In the absence of professional experience or coursework, I'd look for a portfolio of non-professional software projects you've worked on. Have you worked on any open source projects? If so, in what capacity? Did you submit patches, fix bugs, assist in documentation? Can you provide an example of a routine or software module you have written and are particularly proud of?
Also, good organizations will ask interviewees to discuss, at an abstract level,
* Algorithms
* Data structures
* Pointers
* Recursion
* Object oriented design concepts
And really good ones will ask interviewees to write and read/explain source code during their interview. Be prepared to do that.
Watch out for organizations that demand a certain level of niche domain experience or knowledge of a particular API/language/library/technology, yet claim to be looking for "entry-level" people. You're probably wasting your time talking to someone like that, if you're just getting into the biz.
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
Learn fortran, cobol, mumps, pick, ada, k, and other legacy or non-mainstream languages. Companies that use them generally have a hard time finding people that know them, so you can get in without the experience.
Do you even lift?
These aren't the 'roids you're looking for.
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
I'm sure there will be a lot of posts about how much expeirence counts. Sometimes it counts in the opposite way.
Almost everytime I hired an experienced developer I was not happy and paid to much. When I got a kid out of school
and was smart it almost always worked out better.
The thing to ask yourself is do you really like coding and are you good at it. If you do and your hungry you'll find a way in.
Chances are you will lap other expeirenced developers that you come across. The kind that have never heard of slashdot for sure.
You can always demo in an interview. Create some silly little app and demo it with excitement. How well you communicate the idea
will let the employer know if you are write for their team.
...and just start programming in it.
Hopefully, you have a relatively coherent background that is focused in some way. "IT/Programming" is a HUGE field. You can't really just get an "IT job" of any sort of quality. I mean, programming WHAT? Recipe apps for iPhones or reactor controls for ballastic missile submarines?
Think of this as changing your _role_ in your existing field rather than changing fields entirely. Hiring managers will be far more likely to listen to you if you present yourself as a seasoned professional in a specific field who is willing to expand their responsibilities, rather than a Johnny-come-lately with little to no skills and zero relevance.
One place that you might want to consider looking is academia -- in my experience, colleges and universities tend to be more relaxed about your official background and certifications and more concerned with whether or not you can do the job. Plus, most schools will allow you to take classes for free, which would help you get some "official" education on your resume.
Even smaller schools generally have a dedicated coding team working in the IT department. Send some resumes to the "Director of Information Technology" at nearby schools and see what hits.
--saint
1. You didn't mention what career you were leaving, but if you can have strings pulled, remember that an entry-level position will carry entry-level pay. Have a nice cushion to take up the slack, especially in this economy.
2. Do SOMETHING. Paid experience is best. OSS isn't as good. "Hobby projects" are only marginally better than nothing. For the latter two, something demonstrable is almost nonnegotiable.
3. Get your head examined. :) If you enjoy coding, nothing will kill that love faster than doing it day-in, day-out under the "guidance" of PHBs and Marketing-directed design... (What? Me? Bitter?)
I worked as a security officer for 7 years and had no relevant IT experience. I spent the majority of my time pulling pc's from the garbage and building/fixing them. I took a cut in pay from being a security supervisor to work a small tech support job. I spent one year doing this, 1 year at a slightly higher paying job, and ended up making over two times what I used to make in 2 years. The secret was just getting some experience and now I have a very awesome career in IT. Anyone can do this if they love what they do and have the drive to do it.
I don't know what your past career was. But taking what you know, about your past career, and merging it with computers might be a viable solution. Ie find out how tech is holding back what you do in your existing job. Or find a way tech can improve it. And then create that solution. It is tough to do, but would let you marry what you've done with the past to program development and open up many oportunities for you. I did this at my first job, where i replaced a terrible order entry system. It has worked out very well for me.
I was a double music major in college: a BA in Music Ed K-12, and a BA in Music Perf. Percussion. I got my teaching certificate, then promptly went into programming. For me, the key seems to be just programming. All you can. All the time.
My last 2 years of school, I started doing HyperCard scripting, then UserLand scripting, then VB and whatever I could get my hands on, doing whatever departmental projects I could do, like test taking apps, etc. Then I worked my way into web pages, html, and doing the department web site.
I've been at it for 14 years now doing .NET, Perl, SQL, Rails, Catalyst, Django...all without a programming degree or background. So, my advice would be:
1. Don't expect someone to hand you a job by pulling strings
2. Program. If you love it, do it all the time. The best job is one where you get paid to do what you would do as a hobby.
3. Keep at it. Be a sponge, and show you can the job by doing as much as you can outside of that job. Contribute to open source. Work on other projects. Start your own projects. Get yourself noticed.
For the "hiring manager" who say they never hire anyone with o experience on their resume, I'd say we all had none when we started. Conversly, I've seen awesome resumes...by people who can't even tell me how to anything more than MS point and click.
One thing you may find is that generic coding jobs may be boring/unexciting for you and also hard to get into. I would advise you leverage your current experience, and see where new software may help in your current field, or what is it about the existing software that you feel is lacking and/or needs improvement.
It will also make it easier for you to get a job that way. "I don't have software experience, but due to x years of experience in this field, I understand the ins and outs and that will be invaluable while I build up software design and implementation experience."
If you were a biologist, look at bioinformatics, if you were in real estate look at companies building better MLS tracking software, if you were a teacher, look at jobs with a company like Blackboard, you get the idea.
-"Those who fought today will die tommorow."-
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.
I didn't read through all the posts, so someone may have suggested these. I have three suggestions: School, Certifications, and Submersion.
First off try to get a degree of some sort, even if it's just a AAS Degree in Computer Science at a local community college. If you have any credits it may not take as long as you'd think.
If school isn't an option or you don't want to spend the time, pick a path and submerge yourself in it. If you want to go the DotNet path then pick-up VS2008 Developer Edition, Sql Server 2008 Developer Edition, and as many books as you can. Yes it will cost some money, but you're talking about a life changing career move so you'll need to invest some cash and time.
Also a huge piece most folks miss when telling someone how to get started are the conceptual aspects of coding. I'd say any good program has more time put into planning the concept then typing code itself. Spend as much time learning the theories behind coding, which generally are language independent. I'd suggest getting Beautiful Code and also reviewing the books at OReilly on this topic - http://oreilly.com/store/series/theory.html .
Then once you pick a language and start getting familiar with it, start coding! Put together anything, whether it's a program to calculate your budget, your bowling team's scores, anything. Find some practical use for hte code and start hacking. Then when start looking at certifications. Microsoft has several for developers: MCTS, MCPD, MCAD, etc.
So how does this apply to breaking into the IT workforce??? Personally my experience is a degree is best, but many employers will look at certifications second. Either shows you're able to follow through with something. Secondly even if you have no professional experience, I've seen folks carry a portfolio of work to show. If the hiring is done by a CIO or HR department, they probably will look more at certs and degrees, but if the technical side of the department is involved have something to show, even if it's a small sample of printed out code. To a developer they can read this and see how good you are.
With all this said, don't expect to find an awesome job right out of the gate. Try to get a gopher job, which is generally fixing bugs, doing reports, etc... and from here you'll get the work experience you need to really move up in the industry. ALso make contacts!!! Find folks in your area who are coders, whether in a user group, local computer shop, or whatever. Most jobs I've seen folks get around our area are through contacts. The verbiage "It's who you know not what you know" does hold true.
Have fun... , but my suggestion is to go to school part time at your local community college and try to pick-up an AAS Degree in Computer Science. Depending on the credits you have now it may only be a matter of a few classes, or if you're starting from scratch some technical colleges will give you a certification. But for better or for worse many employers look for a degree of some sort.
Secondly I'd suggest picking a path and submerging yourself in it. For example if DotNet is your route, get
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.
I'd recommend investing in something like: http://www.aimstesting.org/
Take into consideration your age. Are you going to fit in with a bunch of 20 somethings fresh out of school?
Corporate culture will differ with the company, but your co-workers "mini culture" will have a big effect.
Is this really something you can do long term?
By that I mean, the sheer amount of IT work in your geographic area.
If you work for company A and it goes under or you decide to leave, what else is available?
(You will have to compete with a much larger pool of candidates if you try a tele-commuting gig.)
Do you enjoy your family, hobbies, etc? Plenty of IT jobs regularly require far more than 40 hours/week. Are you prepared for this as a long term situation?
If after all that you still want to give it a shot and your contacts will pull a few strings then give it a shot.....and may God have mercy on your soul.
Geez.
It is an outsourced jungle these days. Do you really want to justify why you think you are worth 10 times the salary of a coder in China? Or work for a while then train your Chinese replacements, spend EARLY morning and evenings across the timezones on calls with them to make sure everything is finally working out their new team, so they can cut you.
Meanwhile your company is going down the toilet while your execs reward themselves for reducing salary expenses with drastic moves to low cost centers.
Not a career I would recommend unless you are in some high security area that can't be outsourced.
Best of luck.
Why would you assume people lie on their resumes? You may, but most people don't. Don't get caught at it though: that's pretty much a definitive career ending move. And the incompetence of a technologically illiterate HR person doesn't constitute a "lie" either. That's something called a mistake. Or a typo.
I second that. I have never lied on a resume or even padded mine slightly. I have, however, been asked to an interview more than once by people who then proceeded to ask me for details about my experience with things that weren't on my resume. I will never understand why employers do that, I don't like it when people waste my time. I can only assume they were to lazy to read my resume. What I have experience with is on my resume, what I don't have experience with isn't and all they have to do is read the f*cking thing. Many HR people and head-hunters are a waste of space. I was recently asked by a head-hunter to put certain claims of experience in my resume. Even after I explicitly told him I had no experience with that technology, he wanted me to put it on my resume anyway so it would be easier for him to "sell my resume" to an employer. This, I resoloutely refused to do. In my time I have witnessed a couple of people get caught who outright lied about their experience and knowledge on a resume or in an interview and let me tell you, that's one thing I don't ever want to experience. I cannot even imagine how that feels. Never mind the fact that ever afterwards you'd have to explain why you were only at a certain company for a couple of months and why you left them. Even if you tell another lie, get away with it and get this new job you still have to worry that some PHB meets somebody from that other company on the golf course, they start chatting, and you are screwed anyway. A lie becomes a web of lies and eventually, when you lose track of what lies you have told to which people... that's when you get caught.
And that concludes my rant...
Only to idiots, are orders laws.
-- Henning von Tresckow
On the other hand, I KNOW it can be done. I made a quite insane journey from traditional wooden boatbuilding to computer programmer. It took me a long time, because I got distracted by actually working in IT support (at quite a decent paid level, 3rd line network support), but it could have been done quicker.
I had no degree (a failed attempt at economics), not a single qualification in computing, and a work history as a guitar teacher and a boatbuilder, and yet I managed to shift into IT, and then into coding. This is how I did it:
1) I went to evening classes and got some C and C++ exams under my belt.
2) I coded some ganmes from scratch and started selling them, giving me something visually impressive on my CV
3) I didn't hide my previous jobs. In fact, I think they helped my CV to stand out
4) I acted confident about getting every job I went to. Being an ex-musician helped in this. No interview for a job is as scary as playing a gig to a bunch of drunk Hells Angels on a saturday night.
When I was a boatbuilder, the most hi-tech equipment we had was a telephone. We didn't even have electric screwdrivers, or for that matter, plumbing. The floor was sawdust on concrete. If I can go from that environment to lead programmer, then anyone can do it. That doesn't mean it isn't extremely fucking hard to do so, but I can assure you it is doable.
DRM-free indie games for the PC and Mac: Positech Games
For the time I was working on short contracts between interesting full-time positions, I list my employer of record (Drew's Software LLC) instead of the individual companies I contracted with.
To get a feel for what IT is like try the following:
Write a useful program for some open source project. Redesign and rewrite it until you are happy it's as good as can be.
Do the above in the chimpanzee enclosure at the zoo. With the chimpanzees throwing their turds at you whilst you type. Do it in half the time it takes to do it right. Spend half of your remaining time explaining how the software works to the dumbest chimpanzee, call him the PHB. Have the second dumbest chimpanzee write every third line of code for you. Once you have finished give the chimpanzees your phone number and expect them to call you every time the software they didn't let you write correctly fails.
Seriously, working in IT for a multinational isn't in any way fun. At least stick to small sane companies.