• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

Qs about becoming a computer programmer?

AmandaM

Critical Thinker
Joined
Jun 10, 2008
Messages
470
First of all, I apologize if this has been covered in another thread, and would gladly accept direction to said thread.

Here's what I want to know: What's it like to transition into a second career as a computer programmer (or is the new word developer?) And what education do you need to actually land a job as such?

Here's my background: I have my MA in a completely unrelated humanities field. I took BASIC and Pascal in high school a million years ago and enjoyed it. I have not had any math class higher than college algebra, although I've had formal logic and statistics, if that makes any difference.

Here's why I'm asking: I've been playing around with the Microsoft Virtual Academy videos, and the language-based videos on Lynda.com and I'm really enjoying working along with them. I realize I'm still very much at the grade-school level, very basic stuff, but I don't think this enthusiasm is going to wane. I've been wanting to change careers, and this is a good time in my life to do so.


So here are some of my questions. As a noob, I appreciate the patience of those of you actually working in the field.

1. Do I need a BS in computer science (or an MS) to get a job? I'm not adverse to taking classes, but the idea of going through an entire 4-year program again (both the time and the expense) does not thrill me. (Mostly it's because I don't want to have to take the general courses again. I actually have two BAs, in two different fields, so I feel like I'm pretty "well-rounded" as far as general ed goes.)

2. Is it at all possible to get the education you need through the various "certifications" out there -- MSCD, etc?

2b. Do employers take the certifications seriously? Or are they just a money-making scheme for the certifying agencies? Or does it depend on the certification?

3. What is the functional difference between an education in "computer science" and one in "information technology?" Or are these interchangeable terms?

4. I'm seeing "specialties" like networking, database management, security, etc. Are those a different field of study than "programming" or "development?" Do you choose those "specialties" early in your education, or later on, once you know what all the words mean?

5. What kinds of questions do I need to ask before deciding on a paid program or enrolling in one, assuming I don't choose a normally accredited university for my education?


I don't mean to imply that this field of study is "easy" or anything, but is it actually possible at all to be largely "Self-taught" -- ASSUMING you're a good candidate for independent learning and can actually teach yourself something? Do companies frown on "self-taught" programmers? I ask because in so many job listings I've seen, there is no mention at all of a degree, but they want you to have knowledge of or experience with various languages.

I greatly appreciate any advice any of you can give me. Including pros and cons of actually working in the field and taking it on a second career.

Thank you so much!!
-Amanda
 
You'll get a billion different, conflicting pieces of advice. I went to grad school, but you will find plenty of people making a good living w/o a degree of any kind. A lot depends on where you live. Plenty of start up jobs in the valley where they mostly want to see some websites and a github account (meaning, a body of work). Pretty much all the work will be as a front end web developer (the UI of a web page, basically). From my perspective, pretty tedious stuff, but it pays the bills, and is a way to get your foot in the door. More about this below.

2. Certifications mostly don't mean much. I almost never come across people with them. Maybe in some segments of the industry they count, I dunno.

3-4. Okay, a rough analogy -imagine somebody started a thread stating "I want to get into health care, do I need to X?" Yours is not quite as broad a question, but almost :). If that is not clear, imagine the difference in range of skills between a brain surgeon and, say, heading the front desk at a trauma center. Both difficult jobs to be sure, but requiring entirely different aptitudes, skills, and training.

So, a 4 year degree at a top University will teach you the underlying theory of computation. At the end of it you would understand how to write a compiler, reason about algorithms, write algorithms to deal with vast amounts of information quickly. There may be an engineering component - robotics, say, or building large servers, or whatever. You more or less, really, really need a degree like this to work at a place like Google or Facebook, where they face problems of processing petabytes of data over thousands of processors geographically distributed across the world. You would also need this kind of education if you wanted to work in robotics, medical devices, aeronautics, automotive, factory automation, and so on.

But there are so many other options. All of business now runs on computers and software, and there are so many different things to do. Companies need networks, and so it needs people who understand how to network computers together. They need to share data, so there are endless #s of people doing things like Sharepoint. There are all kinds of various so-called 4th generation languages to produce reports from data. A lot of this stuff falls under the "Information Technology" terminology, but it is not a precise term. Personally, I find most of this stuff dull as dish water, but YMMV.

These days there are tons of jobs pertaining to websites. there is the front end, and a lot of that work isn't even programming, but designing things with HTML, CSS, and the like. And a lot of it is, with Javascript and so on. Then there is the backside - the web site needs to send information to the servers to get the list of what is for sale, fill the shopping cart, and otherwise do whatever it is the website does - that part is called the back end, and generally (not always) is the more difficult and interesting programming. These days I would say you can't go to far wrong exposing yourself to some front and back end programming to see what you like; the skills are very much in demand at the moment.

So, yes, all those specialties have can be an entire career. I know very little about database management, for example. Oh, I can use them, and do, but I am not an expert in them.

So what should you do? I have no friggin' idea. First, where do you live? If you live in, I dunno, Iowa (and plan to stay there), chances are most of the work will be related to infrastructure type stuff -setting up databases and Sharepoint, which really isn't programming, or IT stuff like building networks. If you live in the Valley, right now web stills are super hot, but a 4 year degree is also very useful and marketable.

Should you do this? I dunno. I can't imagine too many other careers for myself, but this is something I wanted to do ever since computers became available to the general population (I graduated from high school in 88), and went to college for it. I've been very careful with my career - I find vast swaths of it mind-numbingly boring. I'll go back to the medical analogy - as I kid I also wanted to be a doctor, but I compare the fantasy to the reality of working at, say, an HMO where every 15 minutes you see yet another person with a cough, you explain the same things over, and over, and over, and over, and over, and over,and.... Ugh. I've known plenty of people in this career that really disliked it. Programming and tinkering and making things work is fun - but can you sit in a chair churning out web form after web form under an unrelenting dead line, or fight for 18 hours against a bug and it turns out the problem is with a badly documented API that you are using?

In any case, a lot of those vocational type programs are teaching you to use a particular piece of software, not to program. If that is not clear, think of the vast difference between the writing of BASIC that you did at school, and using, say an excel speadsheet.

I don't know that any of that is helpful, but it is truly a huge field. All I'll give as definite advice is don't sign up for any kind of program until you figure out what tiny slice of the field it is teaching you to do, and then figure out if you want to do it. "Get a career in IT in 6 months" is not much different than "Get a career in health care in 6 months".
 
I've been been programming computers for over thirty years. It's a field that changes very fast. Very little of the programming cousrses I took at college are worth anything these days, although the business analysis classes are as relevant as ever.

In my opinion, you'd probably be better off with a two or three year course at a business oriented college than a computer science degree. As roger pointed out, the CS degree will give you a tremendous amount of information as to how computers work at lower levels: machine language, assembly language, algorithm design and analysis, compiler and operating system design etc. It would be the equivalent of getting an engineering degree in aeronautics when you really want to be a pilot.

You may want to try your hand at something simple first before jumping into a course. I'm a book learner, so if book learning isn't your style the following advice may not work for you. Grab a copy of a book that promises to teach you a language in 21 days, with Ruby, Python, or Java being the target language, and work your way through it. From a programming perspective, I like Ruby: it's a well designed and implemented language. The book will introduce you not only to the way a particular language works, but will show you the most common things about modern programming languages such as variables, variable scope, control structures like loops, if/then/else/ and case statements, subroutines, objects and methods, file and terminal I/O, modules, and may even touch a bit on GUI and database programming.

As for certifications, there is almost universal scorn among programmers and serious I/T professionals over them. Far too many people see certification as a way to get into computer work without understanding the principles covered in the courses and the tests. About the only one that seems to be held in any respect is the CCNA (Cisco Certified Network Associate) and its follow-on certifications. They deal with computer networks such as the switching fabric of the internet: design, equipment, setup, security, and maintenance.

Remember the disastrous rollout of the Healthcare.gov website? There are many reasons for that initial failure, but one of them was it was probably being programmed by people who took a computer programming course but had no passion for the craft. So they end up with sloppy code, security holes, a lack of testing and a site that didn't scale well under load.

Also take a look at The Daily WTF. While it has a lot of stories about I/T management fiascos, there are some stories there about bad programming. You can learn quite a bit from the comments that readers post to the stories.
 
Last edited:
What's it like to transition into a second career as a computer programmer (or is the new word developer?) And what education do you need to actually land a job as such?
I wouldn't say a B.S. in Comp Sci or similar (MIS etc) is mandatory, but it's pretty close if you don't have the experience. Sorry but I don't get the logic stated above of a 2 to 3 yr "course" (?) - why not spend a little more time and get the degree?

(PS yes, "developer" is the most common term now. "Systems Analyst" is also common. Frankly I almost never see "programmer" or "software engineer.")

I have my MA in a completely unrelated humanities field. I took BASIC and Pascal in high school a million years ago and enjoyed it. I have not had any math class higher than college algebra, although I've had formal logic and statistics, if that makes any difference.
I'm afraid none of that will realistically do you any good for I.T.

1. Do I need a BS in computer science (or an MS) to get a job?
A developer job? Probably.

(Mostly it's because I don't want to have to take the general courses again. I actually have two BAs, in two different fields, so I feel like I'm pretty "well-rounded" as far as general ed goes.)
? Why should you have to? In fact if you can go to the same school, they can count towards a new degree. Heck even another school may take many of them.

2. Is it at all possible to get the education you need through the various "certifications" out there -- MSCD, etc?
To be a developer, not really. But you might consider areas other than developer in the I.T. world, where cert's can make more of a diff.

2b. Do employers take the certifications seriously? Or are they just a money-making scheme for the certifying agencies? Or does it depend on the certification?
It depends. There aren't many if any I'm aware of in the developer area that would really be a big boost.

3. What is the functional difference between an education in "computer science" and one in "information technology?" Or are these interchangeable terms?
The anal types would nit-pick it, but in terms of job apps etc, close enough.

4. I'm seeing "specialties" like networking, database management, security, etc. Are those a different field of study than "programming" or "development?" Do you choose those "specialties" early in your education, or later on, once you know what all the words mean?
Generally speaking, yes different, but there can be overlap. And it should be noted many of these have cert's which have varying degrees of value in the job market.


I don't mean to imply that this field of study is "easy" or anything, but is it actually possible at all to be largely "Self-taught" -- ASSUMING you're a good candidate for independent learning and can actually teach yourself something? Do companies frown on "self-taught" programmers?
Not inherently, but I'd say most expect some combo of experience/degree. "I taught myself" is meaningless to them; anyone can say that.

NOTE: a lot of discussion and info on cert's, degrees etc can be found here, might want to give a look: www.techexams.net/forums

As for pros and cons - keeping in mind this is about IT in general vs specific to developing:

PROS:
- great job prospects (tho not as much as it used to be :( )
- great pay, bennies

CONS:
- technology keeps changing so expect to have to keep learning new stuff (this might seem a "pro" for some who enjoy that but sooner or later trust me it gets old)
- hard to get started (ie w/o experience jobs are hard to find but how do you get the experience in the first place)

Finally I would definitely not close the door and pidgeon-hole yourself into developing per se; there are many other areas you might consider, some of which you've already mentioned. Or perhaps a less technical area, like a Business Analyst.

g/l :)
 
Last edited:
I wouldn't say a B.S. in Comp Sci or similar (MIS etc) is mandatory, but it's pretty close if you don't have the experience. Sorry but I don't get the logic stated above of a 2 to 3 yr "course" (?) - why not spend a little more time and get the degree?
Because in a 4 year BS you are required to take a lot of courses not related to the job skills you are trying to train, and Amanda is already amply covered in that department (she has multiple degrees already). Plus, many degrees are anything but vocational training, which I think is a good thing in general, but not what Amanda seems to need. There are too many mediocre colleges churning out, basically, certified Java enterprise programmers, at the cost of 4 years of that person's life and often crippling debt. All to make a website (say). It doesn't make sense, and so people with goals like that pursue other options. We just hired a kid to do IT work for us that just graduated from college. I can't imagine how much money and time he spent to now be doing hard drive imaging and stringing cat-6 cable.

With that said, there is an extremely strong bias towards having a college degree in the industry. Fortunately, Amanda has an MA. I know plenty of people that got into the industry with an unrelated degree, and then on the job experience. To be fair it was more often a degree like biology or physics, but people in the humanities do it also. It'll be a harder road in terms of getting that interview, but you can go to a lot of interviews in 2 years (2 year school vs 4 year degree).

Anyway, *plenty* of people are getting jobs without a degree. Amanda, I strongly recommend visiting the Hacker News site. It is strongly biased towards startups (it is a site owned by the silicon valley VC investor Paul Graham). It is full of threads asking how to get started without a degree. The thing is, people *are* getting jobs. There are new programs cropping up slanted towards training you in the skills needed to get these kinds of jobs, and are usually called "hacker school" or something similar. There is one that does not charge you tuition until you complete the program *and* get a job offer. Here is one, just googled at random: https://www.hackerschool.com/

The Hacker News site is at news.ycombinator.com. Here are current discussions on exactly this issue. It's a hot topic, endless discussed there.

https://news.ycombinator.com/item?id=6867607
https://news.ycombinator.com/item?id=6866839
https://news.ycombinator.com/item?id=6865584

So, there is no right answer. I absolutely guarantee people are getting multiple job offers after these 3month to 1 year programs. You should consider that a 'foot in the door' - you will be decently trained on one or two technologies, but you will be pretty far from a well rounded individual, and you will be entering into a very competitive arena (I've been doing this for 2 decades, and work to increase my skills every day, where will you be after 6 months). Let tech change just a little bit (and it does), and you will find yourself completely obsolete if you are not a fast, self-directed earner. Do that a few times and you will have proven your value, and increased your skill. You also have the tiny (tiny) chance of being in a startup that takes off (making you f-you money in the process).

Or go a safer route with a decent 2 year school. More doors will open (I think the 'hacker' type schools are mostly popular in the VC/startup world right now), but it may cost more, the instruction may actually be worse, but the job prospects will be wider and probably at more stable companies. It is also the route, in my opinion, that could lead to some of the more boring work out there.

Or get the 4 year degree from a good University, combat the ageism that you will face, pay off your student loans, and hope that the potentially higher salaries you can command will pay you back for 2 years of lost wages + tuition.

It all depends on what you want to do, and how much risk you want to take on. a 3 month hacker school will make you suitable for a narrow range of very hot job markets. Low investment from you, good chance of no job if the VC bubble bursts. And so on.

But really, go to the Hacker News website. Full of people with exactly the same questions and issues.
 
My son has a degree in Communication Disorders but is currently working as an app developer. My husband has a degree in engineering but considers it useless (one company he worked for required any one titled "engineer" to have a degree, so he finished his). He's always saying to our son "write, write, write". Find a project that sounds interesting and write the code to make it work. Just yesterday my son was telling us how he wrote an app to cheat the Shopkick app. Makes a mama proud.
 
Because in a 4 year BS you are required to take a lot of courses not related to the job skills you are trying to train, and Amanda is already amply covered in that department (she has multiple degrees already).
...which means she probably wouldn't have to take most of them again.

Plus, many degrees are anything but vocational training, which I think is a good thing in general, but not what Amanda seems to need
If you're saying she doesn't need an I.T. degree of some kind to break into development, sorry, the job market on the whole disagrees.

With that said, there is an extremely strong bias towards having a college degree in the industry.
Bingo. My point. :) But an I.T. degree - nobody will hire her based on a humanities degree.

Fortunately, Amanda has an MA. I know plenty of people that got into the industry with an unrelated degree, and then on the job experience. To be fair it was more often a degree like biology or physics, but people in the humanities do it also.
I would say that is quite rare. You need to bring something to the table and there are tons of people out there who DO have IT degrees and/or experience nowdays.

Anyway, *plenty* of people are getting jobs without a degree.
Yeah. At McDonalds. ;) Seriously, I think the odds of getting a job in IT wiht no IT degree and no experience are slim. If she got some certs, maybe.

So, there is no right answer. I absolutely guarantee people are getting multiple job offers after these 3month to 1 year programs.
I guarantee people are winning the lottery too. I'm sorry but your "guarantee" (or mine or anyone else's, nothing against you) means nothing here.

Or go a safer route with a decent 2 year school.
Sorry but an Associate Degree and a buck will get you a newspaper. Experience talking there. There's nothing "safe" about it.

Amanda, I suggest you call and talk to some IT recruiters, as well as browse the job sites to see what kind of qualifications people are asking for these jobs (dice.com, careerbuilder.com, etc etc).
 
My son has a degree in Communication Disorders but is currently working as an app developer. My husband has a degree in engineering but considers it useless (one company he worked for required any one titled "engineer" to have a degree, so he finished his). He's always saying to our son "write, write, write". Find a project that sounds interesting and write the code to make it work. Just yesterday my son was telling us how he wrote an app to cheat the Shopkick app. Makes a mama proud.

lol
 
I can tell you what I did. Before I became a programmer I worked in restaurants and on loading docks. I was in my mid-thirties when I decided on a career change.

I started by enrolling in a two-year program at the local community college. Computer Information Systems, with an emphasis on programming. Then, on the strength of my studies there, I got a job as a tech support artist at a call center. My employer encouraged me to spend my down time learning all I could about computers, so basically I could do my homework during working hours. I also got my first practical programming experience, writing macros to solve some of the stickier problems the clients had.

Shortly before completing my two-year degree, I got a full-time job as a programmer.

After I finished the two-year degree, I enrolled in a bachelor's degree program at a school that offered flexible hours and distance learning.

Upon completing my bachelor's degree, I was able to get the job I have now.

I'd like to keep that job, so I guess I'd better get back to work.
 
In the case of a career switch, I think some kind of training & qualification would help you, because you don't have programming as a hobby. In addition, to get experience take a look at Open Source software and projects -- perhaps there's one that tickles you and you can contribute to? Having a track record in public like that is a very good selling point -- it's what I look for, for instance. I don't pay attention to certification kind of things, but that may be because the niche I work in there isn't anything specific -- evidence of smartness has to come from elsewhere. Make sure the qualification you get is general and not specific -- that will be more future proof.

I do not recommend learning Perl as a first language. At this point I think it's rather a legacy system having lost to the worse PHP and the better Python (but ICBW).
 
If you can wow them in the technical interview, you don't need a 4-year degree.

I got my first programming job with no college experience, due to programming as a hobby since forever. Eventually got the BS degree, regretted every penny I put into it as it was basically a glorified java certification. My experience is not unique, but your mileage my vary.

I think the Head First series of books are excellent for people going in with little to no experience programming. You can get up to speed producing simple applications in no time, learning at least as much as you need to know for an entry-level programming position.

Presently, the largest dev markets are hiring Java, C#, and C++ devs. I've met quite a few people looking for Ruby devs as well, however those jobs are never as plentiful.

Its pretty much mandatory to learn jQuery if you're doing any sort of web dev, even if you never use jQuery often for your projects. In the C# world, Castle Windsor (dependency injection), NHibernate/Hibernate (data access), Entity Framework (data access), and LINQ (list processing) are mandatory technologies. Not sure what Java and C++ users need to know.

Employers don't generally care about certifications, I would not recommend them. A good personality, problem solving, and ability to learn new tools goes way further than any number of certs you could fit on a resume.

The hardest part is getting your foot in the door. If you can't find a job as an entry-level programmer, you may find it easier to find work as a tester, then transition to programmer at a later time.
 
Last edited:
If you can wow them in the technical interview, you don't need a 4-year degree.

The hardest part is getting your foot in the door.
...which makes it hard to wow them. ;)

Don't kid yourself that a 4 yr degree isn't important in getting your foot in the door if one has no experience.
 
Learn Perl.

Seriously.

If you can't teach yourself Perl, you're not going to be able to teach yourself any other form of useful programming.

Perl is the last language I'd recommend as a first programming language. Many long-time Perl programmers don't even know how one of the primary syntactic entities behaves: $, @, %. Many don't even know what they are called. I pity the poor newbie.

~~ Paul
 
Last edited:
...which makes it hard to wow them. ;)

Don't kid yourself that a 4 yr degree isn't important in getting your foot in the door if one has no experience.

I think it depends on the market. I've done technical interviews for hiring. East Coast US companies would think I brought in roadkill if I told them to look at a resume with no degree.

Many (most?) Silicon Valley companies don't ask about it or worry about it. There's a lot of companies there that got founded by dropouts and it completely changes the culture.
 
If you can wow them in the technical interview, you don't need a 4-year degree.
Except that it becomes harder and harder, as the years go by, to get a foot in the door if you can't answer "yes" to the list of machines, systems, apps, and APIs that you need to know for the job.

In 1975 I interviewed for a job at a medical software company that used MUMPS. Didn't know it. I said "Heck, give me a week." They hired me. I'm not sure that would happen today.

~~ Paul
 
I got my first programming job with no college experience, due to programming as a hobby since forever.

I've highlighted the reason you got the job (it happens to be the same with me). The OP hasn't been doing that, so needs some alternative plan at this point.
 

Back
Top Bottom