I feel unprepared entering the job market

watdahel

Golden Member
Jun 22, 2001
1,658
11
81
www.youtube.com
I'm a Computer Science student and at my school we only use Java. I'm a few credits from graduating and I feel my school has only prepared us to get a job doing internet programming using Java. May be prepared is an overstatement. My depth of experience with Java is pretty basic and nothing outside the classroom, past the Introductory Java book from Deitel. We have never even gone through every single chapter of the book. My experience is all based on class projects. I don't have experience with creating GUIs since our projects used the console for user inputs and outputs only.

My school is a liberal arts college and I was wondering if a technical college would have a more thorough Computer Science program than what my school has turned out to be or are they all similar?

I did a practice job search and I am truly disheartened at how ill-equipped I am. Every single listing required experience with several programming languages and frameworks, SQL databases, APIs and what have you. All the credentials I have is basic java.

Can I really get a job after graduating given the experience I have? Am I reaching too high to soon, perhaps? Am I destined to start out as a deskhelp for my first real job? I'm so depressed. I need a bag of potato chips.
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
First, calm down, the job market is actually pretty good right now. Second, if you haven't started a personal project or worked with OSS, do so, RIGHT NOW. NOTHING looks better on a resume then "I did such and such in my spare time."

Third, don't sweat the "We require knowledge in x, y, z, q, d, v, w, r, s, t, etc" Lots of companies do this and not many actually expect someone to have the long list of experience. Apply anyways.

And finally, GO TO JOB FAIRS. You won't have a lot of success applying for jobs online, but if you can get an in-person interview you will be placed miles ahead of everyone that applies online only. Having good people skills is just about as important as having good programming skills.
 

wantedSpidy

Senior member
Nov 16, 2006
557
0
0
First, calm down, the job market is actually pretty good right now. Second, if you haven't started a personal project or worked with OSS, do so, RIGHT NOW. NOTHING looks better on a resume then "I did such and such in my spare time."

Third, don't sweat the "We require knowledge in x, y, z, q, d, v, w, r, s, t, etc" Lots of companies do this and not many actually expect someone to have the long list of experience. Apply anyways.

And finally, GO TO JOB FAIRS. You won't have a lot of success applying for jobs online, but if you can get an in-person interview you will be placed miles ahead of everyone that applies online only. Having good people skills is just about as important as having good programming skills.
Good advice. All companies are aware of how much new grads are ready to contribute. You'll spend a lot of time your first 6-8 months just learning on the job. After that you'll be ready!! Don't worry about it! Just try to keep learning, and you'll be fine :)
 

Ka0t1x

Golden Member
Jan 23, 2004
1,724
0
71
If you're interested, apply anyways.

Like most said, you're going to have some intro time to the company learning the job. Especially with programming, they can't expect you to know their DB Schema overnight. :)

Personal project with OSS is fantastic. I would try to keep some form of resume site together that also has your OSS project on the same site, or at least a mention of it (download only a few seconds away).
 

stuckinasquare3

Senior member
Feb 8, 2008
397
0
76
I found that most of my programming interviews are interested in your ability to solve common problems. Read up on some common algorithms and data structures. Brush up on the fundamentals. Also, read this book: http://www.amazon.com/Cracking-Codin.../dp/145157827X Almost every question I've been asked in an interview is in this book. But don't just memorize answers, use it to find out what fundamentals you don't understand and need to learn.
 

RedCOMET

Platinum Member
Jul 8, 2002
2,836
0
0
all the programming courses I took in college ( undergrad and grad school) use Java. the main thing is that it teaches you the fundamentals of programming along with good programming habits and practices, which can carry over to what ever language a future employer or endeavor may require you to use.
 

Monster_Munch

Senior member
Oct 19, 2010
873
1
0
You could try producing a simple java application (maybe an android app?) and put it online for prospective employers to see. If you had something on your resume that says you're the developer of some app and it has a few thousand users that would help negate your lack of work experience.
 

Tencntraze

Senior member
Aug 7, 2006
570
0
0
I was in the same boat when I graduated several years back. I ended up taking a .NET programming course over several weeks and got a job out of that. I also started up a side project after that for a company that ended up being a decent sized application, so definitely support the other suggestions of getting a personal project going.
 

EvilManagedCare

Senior member
Nov 6, 2004
324
0
0
You're obviously concerned. Forgive if any of this is obvious. The first thing I would say is do not minimize the experience you have garnered thus far. While it may be limited to school projects, in your resume cite the ones that are more impressive or demonstrate proficiency with a certainly technology. And as several others have suggested: start up your own project or get involved with OSS. Sourceforge & Codeplex are just a couple of places you can start. The hard part is finding one-- it can be overwhelming with the number of those available for contribution.

Every job posting has a list of wants, but that does not mean they are all absolutes. Apply for the ones that interest you, market your strengths, and see what happens. Let the potential employer decide if they want to hire you. Do not sabotage your interview by emphasizing a perceived lack of experience (I have stupidly done this myself). By the same token, I am not at all suggesting you overstate things and market skills you may not possess.

I have seen listings for junior developers that have mandated no prior experience, as well as others that are specifically for new grads. So do not despair, you'll find something.
 

ikachu

Senior member
Jan 19, 2011
274
2
81
Make sure that you go to your school's career office; they should have access to job listings that are targeted at new graduates. I'm pretty surprised that your school hasn't helped you to get an internship or co-op though.

On a side note, you've really only used Java the entire time through school? You didn't have a 'Programming Languages' class or anything like that where they at least introduced what other languages were like? Have you dealt with pointers and memory management ever? How about some kind of assembly language?
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
On a side note, you've really only used Java the entire time through school? You didn't have a 'Programming Languages' class or anything like that where they at least introduced what other languages were like? Have you dealt with pointers and memory management ever? How about some kind of assembly language?

I actually don't find this unusual. My school started us out with C++, then separated the CS guys from the CompE guys having the CS guys learn Java and the CompE guys learn Verilog. Those are about the only languages they taught (unless you took a web development class, which I think they still used java at the backend.)

Most of the time for the CS guys focused on processes of creating programs and not actual programming.
 

Patrickz0rs

Senior member
Dec 20, 2007
355
0
0
Companies care more about you having a logical mind to solve problems and from this learning a new programming syntax should be trivial.
 

humanure

Senior member
Dec 28, 2005
441
0
0
I just graduated with my CS degree as well. Like some of the other posters have said, emphasize what you have done. At my school, Java was the main language used, however, we did have a languages class where we did some Lisp, Prolog, and perl projects, we had assembly programming x86 and MIPS, and you had to take one semester of either c++ or VB. I took web programming as an elective so I had some exposure to javascript, html, php, mysql. I am putting most of that on my resume and a little about projects I did. No database class was required, and I find that a lot of employers around here are looking for that, so if you can I would try to take that if its offered. While I have been job hunting, I took on a web project for a professor here, and I've picked up some books to read about things I didn't learn in school. The big thing to realize that the degree is a foundation, not the end. Over the summers, learn about things that your school doesn't offer.
 

ikachu

Senior member
Jan 19, 2011
274
2
81
I actually don't find this unusual. My school started us out with C++, then separated the CS guys from the CompE guys having the CS guys learn Java and the CompE guys learn Verilog. Those are about the only languages they taught (unless you took a web development class, which I think they still used java at the backend.)

Most of the time for the CS guys focused on processes of creating programs and not actual programming.

Hmm I don't know it still seems unusual to me. I don't think a computer science education is complete without at least a rudimentary understanding of computer architecture as well as exposure to some variety of languages (procedural, object-oriented, scripting, functional) so you can get a feel for the strengths and weaknesses of them, and just learn how to approach problems from different directions.

Just from my personal example I graduated from UT Austin in '02 and I had been exposed to C, C++, Java, Haskell, Lisp, and MIPS Assembly. I've taken a different path than most CS majors and now mostly program in C, Perl and X86 assembly, but I definitely appreciate that background that knowing other languages gave me.
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
Hmm I don't know it still seems unusual to me. I don't think a computer science education is complete without at least a rudimentary understanding of computer architecture as well as exposure to some variety of languages (procedural, object-oriented, scripting, functional) so you can get a feel for the strengths and weaknesses of them, and just learn how to approach problems from different directions.

Just from my personal example I graduated from UT Austin in '02 and I had been exposed to C, C++, Java, Haskell, Lisp, and MIPS Assembly. I've taken a different path than most CS majors and now mostly program in C, Perl and X86 assembly, but I definitely appreciate that background that knowing other languages gave me.

My school offers courses that teach assembly, but they are optional for CS majors (and many don't take them, preferring 'easier' classes.)

I'm not saying that language diversity is a bad thing (it is a GREAT thing), just that I can see different schools having different focuses. Many of the CS guys in my school graduate without really knowing how to program. It is somewhat of a travesty. In fact, their knowledge about how computers work is quite lacking. I don't know how you solve this issue.

A big part of the problem is that my school places a very high value on attrition rates. The CompE department of my school has the highest in the school, and as such they keep trying to cut our budget and keep considering getting rid of the program all together.
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
Hmm I don't know it still seems unusual to me. I don't think a computer science education is complete without at least a rudimentary understanding of computer architecture as well as exposure to some variety of languages (procedural, object-oriented, scripting, functional) so you can get a feel for the strengths and weaknesses of them, and just learn how to approach problems from different directions.

Just from my personal example I graduated from UT Austin in '02 and I had been exposed to C, C++, Java, Haskell, Lisp, and MIPS Assembly. I've taken a different path than most CS majors and now mostly program in C, Perl and X86 assembly, but I definitely appreciate that background that knowing other languages gave me.

I'm done after this summer and I've had a similar experience as you. You can add VHDL, perl and now python to the list. Software Engineering is now taught in Python and Haskell. Instead of MIPS though, we used x86 in Comp Architecture.
 

degibson

Golden Member
Mar 21, 2008
1,389
0
0
Colleges and Universities typically don't (and I would argue, should not) emphasize teaching languages, APIs, etc. As much a we glorify them, those are just trade skills.

Instead, hopefully OP's college experience has given him a good background in the essentials -- math, logic, algorithmic reasoning, etc. The rest can (and will) come later, in the form of on-the-job training.
 

LokutusofBorg

Golden Member
Mar 20, 2001
1,065
0
76
If you get a job that actually has you programming, and the problem domain is not extremely simple or mundane, then you will learn more during your first six months on the job than you did during your entire school career.
 

watdahel

Golden Member
Jun 22, 2001
1,658
11
81
www.youtube.com
I did take courses where we used assembly, lisp and such but it's very basic that I would be embarrassed to put it on my resume as a skill. We were taught only enough to complete the semester projects. I don't even remember anything about those languages unless I reread my notes.

I guess college was a let down for me because I really wanted to learn video gaming programming. That's a very specific field. I always wished I could've gone to a school specifically for it but money and location was an issue.

After reading the responses here I do feel a little bit more at ease. I appreciate the feedback.
 

EvilManagedCare

Senior member
Nov 6, 2004
324
0
0
I guess college was a let down for me because I really wanted to learn video gaming programming. That's a very specific field. I always wished I could've gone to a school specifically for it but money and location was an issue.

After reading the responses here I do feel a little bit more at ease. I appreciate the feedback.

As a means of starting a project, take a look at Microsoft XNA if video games are your interest. IIRC you can download free tools to get going. It will be in C#, but since you know Java it will not be difficult to learn. Being that you're a student, assuming your school participates, you can download the Game Studio from Dreamspark (along with other Microsoft tools). I believe there's an Express version of the Game Studio as well. MSDN has numerous XNA tutorials.
 

wantedSpidy

Senior member
Nov 16, 2006
557
0
0
what are some good OSS projects to work on? Most don't seem really 'noob' friendly as such.

I've never worked on an OSS project before, and I think its high time I get started!
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
what are some good OSS projects to work on? Most don't seem really 'noob' friendly as such.

I've never worked on an OSS project before, and I think its high time I get started!

What do you consider "noob friendly"? Many OSS communities are more than happy to give a tour and help someone get familiar with the software.
 

LumbergTech

Diamond Member
Sep 15, 2005
3,622
1
0
Over the course of my CS degree we took
Python (introductory course)
Java (core)
C (only 1 class, but required and used in at least 1 other required course)
bash scripting (part of C and Unix class)
ruby on rails (elective)
PHP, Oracle/PLSQL, XHTML, Javascript (part of database programming series)

In projects I used C#, sqlite and mysql as well.

I regret not taking C++, but at least I feel prepared to learn various languages.

I also forgot to mention Mips and Verilog..We had to use both of those in 2 classes
 
Last edited:

purbeast0

No Lifer
Sep 13, 2001
53,486
6,326
126
i graduated with a BS in Comp Sci and my first job I really learned a lot pretty quickly. you will get trained in the systems and frameworks that you will be using, and this can take some time. you won't get to a new job and be able to just dig in, it will take weeks, maybe months to actually understand what is going on.

chances are you will start out with some minor bug fixes to get familiar w/the code base and how things work under the hood. then gradually move up.

one thing is for sure though, looking back at all my school projects, i feel now I could knock them out so freaking quickly heh.
 

purbeast0

No Lifer
Sep 13, 2001
53,486
6,326
126
If you get a job that actually has you programming, and the problem domain is not extremely simple or mundane, then you will learn more during your first six months on the job than you did during your entire school career.

this is also one of the truest statements in this thread.

and i can even go on and say that at my current job which i've been at just over a year, i learned more in this past year than i did in the 5 years at my first job out of school.