Ask Slashdot: Job Search Or More Education?
Matt Steelblade writes "I've been in love with computers since my early teens. I took out books from the library and just started messing around until I had learned QBasic, then Visual Basic 5, and how to take apart a computer. Fast forward 10 years. I'm a very recent college graduate with a BA in philosophy (because of seminary, which I recently left). I want to get into IT work, but am not sure where to start. I have about four years experience working at a grade/high school (about 350 computers) in which I did a lot of desktop maintenance and some work on their AD and website. At college (Loyola University Chicago) I tried to get my hands on whatever computer courses I could. I ended up taking a python course, a C# course, and data structures (with python). I received either perfect scores or higher in these courses. I feel comfortable in what I know about computers, and know all too well what I don't. I think my greatest strength is in troubleshooting. With that being said, do I need more schooling? If so, should I try for an associate degree (I have easy access to a Gateway technical college) or should I go for an undergraduate degree (I think my best bet there would be UW-Madison)? If not, should I try to get certified with CompTIA, or someone else? Or, would the best bet be to try to find a job or an internship?"
It depends on what track you want to get into IT on. If you want to start in programming then yes, you most likely need more schooling. With the glut of applications most companies are seeing these days you will have trouble even getting an interview without a BS in EE/CS or something similar. That said it sounds like you are comfortable with the hardware end of things, and if you would like to pursue that track the degree requirements tend not to be as stringent. Most of the network engineers/ops positions at my company are people with certifications, be they CompTIA, Cisco, M$, etc. They aren't any less skilled at their positions, but the networking world tends to place more value on results than degrees, in my experience. So assuming you want to stay on this track I would suggest starting with certs. You can always work your way sideways into a dev position if that's what you want to do, but that's the easiest way to get your foot in the door AFAIK.
I'd go the certification path. Going to university or college for IT isn't a terrible idea, but in my experience it's not necessary and probably a waste of money. I've had many co-workers that come out of university and college programs that don't know anything, or worse, memorized how to do something in one particular controlled environment and think they know everything.
IT is about experience, confidence, and skill. If you already think you have good troubleshooting skills then you're well on your way. I'd get some core certifications like CompTIA A+, and CCENT and then look for an entry level job. Consulting companies that provide helpdesk support or managed services for small/medium businesses are a great start. From there you'll build contacts, start to specialize, they'll pay to get your more certs, and before you know it you'll be a lazy sysadmin on someones payroll.
If it ain't broke, don't fix it.
If you feel comfortable with Python, come out to the Chicago Python Users Group meetings, hone your skills and network. There is a lot of Python work in Chicago these days.
"To those who are overly cautious, everything is impossible. "
Numero Uno: get a job. Get more experience in the real world.
How best to do that?
Well, you are lucky in that the job market is pretty good for tech skills. Companies would like to hire more experienced people, but can't always find them. Put your resume together as well as you can and prep for interviews by Googling potential questions and working on them.
Better yet, if you know anyone in IT, have them grill you.
If you are going for a programming job, make sure that you know and can apply basic procedural program concepts such as working with arrays, lists, queues, stacks, iteration, and recursion. Understand the basics of object oriented design. Write programs to practice these things. Find a good CS course online and do the homework.
Wrox's Programming Interviews Exposed is great practice for programming interviews.
If you want to move up, learn more advanced algorithms concepts.
If you are going for a sys admin job, install Linux on your home machine and manually manage it. Ubuntu is great, but learn about partition, booting, permissions, sudo privileges. A Linux admin handbook can teach you a lot.
Don't sweat the philosophy degree.
I do a lot of interviewing/hiring technical types, and have no problem with an non tech degree. Just know your shit.
http://yetanotherpoliticalrant.blogspot.com