Best Way To Land Entry-Level Job?
chemicaldave writes "I'm graduating this May and have been seeking a programming position for months. It seems that the biggest hurdle to landing an interview is getting past the doorman that is HR. After reading this entry from Coding Horror describing the lack of programming candidates who can actually program, I can't help but scratch my head. I can program! (See how I put that link in?) If I can't land an interview, then even a short online evaluation of my coding skills would suffice. I just want a chance to prove myself. Alas, sending resumes to companies has rarely led to anything but an auto-confirmation email of my submission. I understand that sending resumes online is not the best method to landing an interview, but I come from a small rural school so job fairs rarely offer anything more than IT support positions let alone a programming position. It seems to me that developers are always looking for talented young programmers. We're out here looking for you too. Am I missing something?"
Find a company you want to work with, even if they are not advertising positions. Call your prospective boss, tell him you want to work with him. Done!
It appears that you missed some level of social networking during school. I volunteered to work for the sysadmin at the community college I go to...I graduate in may and will go to uni in the fall, in the meantime, he put in a good word for me and it helped me get an internship at a sizeable area hospital that will look *great* on my resume (if they dont hire me when i finish uni)
By and large, language is a tool for concealing the truth. -- George Carlin
And stop expecting a big salary shiny salary to do what is essentially the work of a computer janitor.
As soon as you lower your expectations to reality you'll find 'entry level' jobs are almost as common as now-hiring signs at McDonalds.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
apply for the google summer of code project. looks great on the resume.
also, do virtually anything public programming related. write a small open source utility. or a new feature in an existing open source app. or a free app for a cell phone. (100k downloads isn't that hard, and looks good to business folk)
i've been on the hiring side of fresh meat devs several times now. literally anything that shows you can code in a reasonable, organized fashion will put you at the top of the list.
btw, i hope the html link reference was a joke. =P
http://kered.org
Can't stress it enough. Lets assume you do get to an interview. Ooze COMMON SENSE. Let it seep out your pores. You are going to be the guy that doesn't need to ask the stupid questions that should be assumed.
Secondly, show examples of your programming experience. Doesn't have to be used somewhere in industry, just have working, finished examples of your code available either online (if applicable) or somehow available for them to see. Be the candidate that they interview that might not have experience working in a firm, but can still finish projects.
I can't stress just how much those two simple points will help?
Moved to http://soylentnews.org/. You are invited to join us too!
Your best bet is to move to India and go to a job fair at the IIT (India Institute of Technology). You'll probably find someone to hire you there for about 1/10 of what you would hope to make. Oh, and it will be in Rupees.
The sad fact is GPA and the school you went to really matter a lot when getting past HR. If you have a sub 3.0-3.2 GPA and/or went to a low ranked school you should try to bypass HR.
I would consider traveling to another University's job fair if you don't have good local ones. Here, you can talk directly to engineers/programmers who can gauge your skills far more precisely than HR can glean from your resume.
Things have changed a lot, you can pretty much expect that most of the time you're just going to get an auto reply. If you do manage to get an interview they may very well think that silence is the same thing as telling somebody they didn't get the job.
Probably the best thing you can do is while searching try and get involved in some open source project. It's probably not going to put food on the table, but it will likely land you access to opportunities that you might not otherwise get. And give you something to put on your CV while maintaining your skills.
But just realize that the manners of people doing the hiring are typically lousy and remember that if you get turned down that you're likely not interested in working for a company that represents itself in such an embarrassing way.
if you think you can program then come to silicon valley and apply to the startups here through craigslist with sample of your work. In no time you will land a job - this is from my experience.
Bad economy+no practical experience+little school no one has heard of=hard to get a job. Particularly if your college can't get together a real job fair. Applying to internet postings works more if you have experience on your resume, its a difficult way to get a first job. Especially since in this economy an experienced but out of work programmer may apply for a position normally below him. It was that way after the .com crash too.
I'd suggest using any people you know already in the industry or in companies that hire programmers. And consider taking an IT position if you can't get anything else- I know a lot of programmers from small schools that started out that way and then switched over. If nothing else it will pay the bills for a while.
I still have more fans than freaks. WTF is wrong with you people?
Many points to consider:
-Do you have professional experience programming?
This can be gained through internships, FOSS development, and competitive programming.
Do you have resume fodder?
-Certifications
-Degrees
-Project Successes
Do you have references?
-Professional connections through school.
-People who have reputations in software-development.
Honestly, those are all solid ways to develop the credentials to get you into entry-level, and if you are motivated, well-spoken, and honest, it can be done. But sometimes you have to just bite the bullet and do some intern work for free, or some beta-testing before those connections can be made.
'We are trying to prove ourselves wrong as quickly as possible, because only in that way can we find progress.' RPF
Yes. Why?
Are there alternatives to an "entry level job". It sounds limited...
Build up your skills and portfolio.
My first job interview was mostly just showing off the websites I built.
Elance will let you get paid and will give you a better sense of what real work might be like.
-- these are only opinions and they might not be mine.
You may be better off finding an internship somewhere if you haven't already secured one. Barring that, I'd suggest developing your own software, or doing some contracting work.
Depending on your skill set and your career goals, you may not want an entry-level job.
On the other hand, working a shit job may very well get you the contacts you need to get a non-shit job.
Right now is a really hard time to try to get your foot in the door. As a manager, I posted for an entry level position and ended up with a ton of candidates with a strong background. I don't believe in the whole "overqualified" paradigm, so I ended up getting the best candidate -- over twelve years of experience pertinent to my business, glowing reviews from previous employers and excellent interpersonal skills.
I got a ton of resumes from college students. Several sounded promising, and I would have loved to give them a chance. But when I have someone with a proven track record who I KNOW will not require only minimal supervision and will bring more to the table... why should I waste my time and money?
Is it fair? Maybe not. When I was in this position almost 15 years ago it sucked. But with 10%+ unemployment it is very hard for the entry level candidate to get his foot in the door.
My solution.... if you are still in school... get a fricking internship. It may not put you at the same level as those I did end up interviewing... but it will help/
See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
You don't say where you are located, which has an enormous effect on your ability to land a job. Some job markets are terrible, and others are wonderful. If you've moved from the former to the latter, your job prospects will improve greatly. In the current economy, "Labor mobility" is very important to finding a good job.
Also, "Programming" is a rather broad area. What kind of programming are you interested in? What industry do you want to work for? Figure out where those companies are located, and move there.
I'm in broadcast engineering, which includes some programming, but is not programming-specific. I'll let some of those folks address your concerns directly. But speaking in general and in no particular order:
1. Maybe you should have gone to a different school, even if it meant relocating. An internship would have given you some valuable experience, and if you're really good, would probably have resulted in permanent employment afterward.
2. Look at small companies instead of the big ones. Offer to work for beans and rice until you can demonstrate that you know what you're doing. It'll pay off in the long run.
3. While you look for a job, work on an open-source project. Having a recommendation from a well-known F/OSS guru can't hurt. :)
4. Once you get the chance, I can't emphasize this strongly enough: PROVE TO ME THAT YOU REALLY WANT THE JOB. Think outside the box. Be willing to go the extra mile. Don't sit in your chair playing Solitaire waiting for me to tell you what to do next. Show initiative.
Back when I was a teenager, I got my first job in radio by hanging around the station constantly. I took out the trash. I annoyed the engineer and asked a thousand questions. I was willing to do anything to prove that I wanted the job.
I'm not boasting; that's just common sense. But contrast that with an intern who tried out with me a couple of years ago. Unless I stayed on him, he did indeed sit and play Solitaire. When the HVAC went out in the studios, he got up from his job as a call screener for one of our talk shows and said, "it's just too hot. I'll be back tomorrow" -- which left us scrambling for someone to cover his slot.
He still calls from time to time and is amazed that we won't hire him. No, I'm not kidding.
Cogito, igitur comedam pizza.
...but about who you know. Referrals from friends are the best way to get your foot in the door for entry-level positions, then experience will get you in the door for future jobs.
When I was in school way back when, the school would work an internship program with local companies and the students would get course credit. Do they still offer those anymore for CS majors?
If you are submitting resumes, and not getting any responses whatsoever, then it's likely there is something wrong with your resume (I had this particular problem when I was entry-level; I kept rewriting my resume until I finally got responses).
If you are only applying to big companies, that could be your problem. There are lots of smaller companies around, and they are usually the ones that have trouble finding good programmers. If you really are good, then keep tweaking your presentation until the people where you are applying can actually see that you are good. If you are not actually good, then your roadblock is that you are not good, and you should fix that.
Qxe4
Have you asked your friends and family. And families friends...and so on.
That's were most of the jobs are. Which is a bit sad.
And remember, don't take just any job. You have a degree and you've spent a lot of money on it. The salary of your new job should reflect this.In Norway for instance starting salary for an uneducated is about 280'000,- kr. The cost of 5 years of study is 333000 in loans. 20 years from now your education will have cost you 1'400'000 (5 years of lost income) + 999'000 in down payments = 2'399'000. So if you are planning on paying that down you need to make close to 400'000,- kr a year.
Say NO to unpaid Internships!
I find that jobs are handed out in this order.
1) Kickback (If I Hire X will I be compensated?)
----
a) |----- Family (Am I related to individual [Small form of kickback, sometimes hiring children of political people falls under this catagorey, nothing cuts through red tape like]
b) |--------- Figurehead ( I've seen where people are hired just to be a figurehead ( Astronauts, Politicians, Former CEO's ect )
2) Circle of Friends (Nothing makes them feel better than hiring someone from their Alma mater, charity, ect.)
----
3) Indentured Servitude (Can I pay this kid to do the job what I spent filling up my yacht for my weekend getaway?)
----
4) The Shiny Turd ( I've got a double MBNA Frum Havard. I am Job. )
----
Lying lips sound the sweetest but when their kissing your ass its even better.
5) Needle In the Haystack ( This is you and me )
-----
I am probably one of the most awkward individuals in HR interview settings. I aimed for a job that I knew I could get, and I excelled at that job which allowed me to move on to better roles.
How are your other skills? Process Management, Configuration Management
You must emphasize all skills in addition to programming. I would say 30% of my time is dealing with QA aspects.
Step 1: When carping about not being able to find a job on slashdot, remember to tell people what programming languages you know.
Step 2: Make sure the name attached to your post links to something besides a couple of pages that haven't been updated in 2 years
Step 3: When fixing the above - start writing essays or blog entries on technology stuff that you know, so that when the quasi-decent HR rep googles your name, he'll be impressed with what he finds. In this day and age, that's one of the few ways you can "submit" a sample of your code.
Good advice was already stated about volunteering for OSS. Even if it doesn't help get you in the door somewhere, it'll at least hone your chops, which will help once you do get a job.
Social engineering. My last three jobs were obtained through knowing someone on the inside that help me in the door. Using only your resume will result in it landing on a pile along with the 300 others.
Getting a professional job isn't as simple as having the knowledge and certifications that make you eligible. Building a social network is equally important, if not more important. Having a professional that's already in the industry being able to vouch for you is a huge plus when it comes to finding jobs. Often, this can completely bypass HR and get you in touch with the management involved where your targeted position is.
HR is kinda stupid. Getting around them is the best way to get in, and doing that requires knowing the right people.
This is how I got my engineering job. I have no degrees, but I have substantial real world experience and knowledge, and was introduced to my job through a friend and former coworker who convinced my current manager to interview me. No HR was involved until hiring.
First, including a link doesn't make you a programmer.
Second, what are you graduating from (high school, technical college, university)? With what kind of degree?
To directly address your question, most entry level positions require two years experience. You need to figure out how to get that experience!
I graduated right before September 11, 2001 and wound up taking an IT support job where they needed some programing done as well. It was a long haul (almost eight years of more and more development), however I just started my first senior developer position. Everyone has to start somewhere!
I will not mourn that which I never had to lose. - Unknown
1. Pick a specialty or two. Maybe you're interested in computer graphics, great, learn OpenGL, or maybe you want to work with databases, fine, learn the API's.
2. Do one or more of the following:
a. Write a few small, relevant, open-source programs that you can show to prospective employers.
b. Work on a few relevant open-source projects to help build networking/contacts.
c. Do an internship and write a few small relevant programs that you can discuss during the interview, this is also good for networking
3. Have a backup plan if you can't get a job. Try to pick a specialty where, if worst comes to worse, you can sell the applications you write, maybe even starting your own business.
The above is the catch 22, no one wants to train people, especially in this economy. I got a job out of school because I learned the relevant knowledge (OpenGL) to my field, and had a portfolio of applications that I wrote outside of school. The kind of guy that is most likely to get a job is the guy that can laugh at job offers because he knows that he has all the skills necessary to write the application on his own and keep the profits for himself. Looking back on it, I think my biggest mistake was not pursuing my own business more seriously. You will always make more money if you can cut out the middle man (your employer), and run your own business. Sure, you take risks, but in this economy, EVERYTHING is risky, and it's also risky to be an expendable employee, with debt, in a low-paying entry level job.
When I hear about the lack of programmers, I can't help but think that the definition of "lack" is: "the candidate pool isn't 100,000x times the job pool, we still have to pay the bastards a fair wage".
No ivory backscratcher for you this week, Mr Burns.
If you post an anonymized version of your resume, I'll be happy to see if there's anything obviously wrong with it.
You haven't really discussed how you went about your approaches in any real detail, so excuse me if I give you a few pointers:
1. HR departments (particularly in big companies) are mostly there to keep outsiders out. They seldom accept speculative applications and forward them to the relevant department - yet at any given point in time, many departments within organisations are thinking "We could do with someone else here to help deal with XXX, but we need to get around to writing the job spec, get hiring authority sorted out, contact agents/advertise and ask HR to accept CVs with the following qualifications....". If you can find companies in that kind of position and speak to the person who's thinking that, you'll bypass much of the HR bullsh*t. For some odd reason, this process can actually be easier than going in the "accepted" way of writing to HR and a hell of a lot more productive.
2. Regardless of whether you're applying speculatively or for an advertised post, NEVER send out a standard CV/covering letter. I promise you no matter how much effort you put in they stand out a mile. Figure out what the company is looking for (and if you can't figure this out, why do you want to work there?) and write covering letter/tweak CV to suit.
3. Avoid agencies. This is my own personal experience, take it with as much salt as you feel it requires. But most employment agencies charge a small fortune, no employer wants to pay that if they can avoid it. Particularly not when they're taking on a graduate, who may or may not be any good in the real world. At the end of the day, the agent is being paid by the employer and they don't really care if you get the job or not, just so long as the person who gets the job is someone who they put forward. You'll waste hours talking to these people on the phone who insist they can find you work, that your best bet is to ask them to market you, that they're the solution to all the world's problems. It's complete fiction, but they're telling you what you want to hear.
4. Keep active in both your job hunting and (if it goes on a long time) something relevant to the job. Any potential employer will view how seriously you're taking a job hunt as a guide to how seriously you would take the job - if you have been scratching your bum since the last interview 3 weeks ago, they'll assume you'll do the same thing when they're paying you.
You think finding a job is hard now, when you have no experience. It can be as hard or harder once you DO have experience. Before I drone on about why it's hard to get a job with experience, here's my solution to both: Human Networking.
It's really surprisingly simple. The more people you talk to and get to know...
- the more people who may tell you when a position becomes (or is about to become) available
- the more people you can "seek advice" from about getting a job (thereby making them aware of your availability, skills, and interests)
- the more you can name-drop, or at least make reference to first hand
- the more you can hear and learn about what companies are like to work for, and whether you would really want to work there or not
I'm sure there are other benefits, but the first two listed are probably the most valuable.
So how do you meet these people? In the old days, pre-internet, people tended to congregate in different groups or clubs (Toastmasters being one of the popular ones). Now we have Meetup, which might have some active groups you can visit and get in with. There are also community groups, such as those focused on bringing and operating business within a community, volunteer groups, etc.
You can't really discount groups as not being applicable or beneficial until you get in and get to know people. Everyone knows someone, and people, in person, tend to be happy and willing to direct and guide others. So the guy you're volunteering with at Habitat for Humanity may have some great contacts in your field. At the very least he may have a contact that he knows has lots of tech contacts; and you're +1 already because you know this guy, and because you're doing meaningful volunteer work.
Lastly, seeing the internet as the primary tool for getting a job is a huge mistake. The internet, where jobs are concerned (and some other things), is a cesspool. Multiple posts for the same job, multiple "staffing firms" trying to fill the same spot (and using recruiters who previously were just somewhat non-technical, but now who are imported and often merely trained monkeys); positions which have been pulled or filled, but no updates/removals of the internet posts have been made; etc. etc.
Meanwhile, find something of interest, technical or otherwise (you never know where your good connection is going to come from), and get involved. If ballroom dancing is your fancy, go do that. Those people know people.
Now about the experienced seeking jobs... just be aware that so many jobs today are for positions that already existed. Bob did X, Y, and Z, and company is seeking someone with those exact skills. It's pretty unlikely that there are candidates with the exact skills required; thus it's very beneficial to know someone within the company, that way you can get the interview without being filtered out by a keyword-matching monkey.
.sigs are for post^Hers.
I've got more than 10 years "experience." It been a rough road trying to get work the last two years. Here are some close calls I had:
1. interviewer wanted me to log in remotely via ssh. Then write an app in php on the command line to determine, if a word was a palindrome. I almost got it but ran out of time. The php program worked for most cases. At the end of the interview, I jokingly asked him how many people could not even log in? He said 50% could not get past that point.
2. A couple of other interviews, I've had three people at a time ( mostly engineers ) grill me. They just pull whatever out of their asses. If you miss a single thing then no job.
3. I had another company give me 9 interviews for a single position. Most of the engineers were just called off of whatever they were doing unprepared. It was like a regurgitation of my work history. Then the last guy really gave a hard time pulling all sorts of shit out his ass. Got most of it right but not good enough.
I have a portfolio of programs I've written. Want to see it work? Not good enough.
Its just a difficult work environment out there. Frankly, I think they don't have the work.
As someone with a degree from a reasonably well known school and 2-ish years of employment who is looking for a job yet again, I can say that the prospects for entry-level positions are generally dim. Most of the so-called entry level positions that I see advertised -required- at least 3 years of experience. The job market is such that they can make these kind of demands, at least in my region of the world. In my admittedly limited experience, it is easier to land an interview with smaller companies. They tend to want someone long-term and are more willing to train or let someone grow into their job. The GE's and Time Warners of the world want someone with solid experience who can step into a development team today. Some larger companies, IBM for example, have some good entry-level positions but only if you're willing to move halfway across the country.
Nepotism. The nice word for this is "connections". Do you know anyone who knows anyone who knows anyone (etc.) who runs their own software company, or works at one in a high-enough position that hiring interns or entry-level, underpaid slaves falls under their authority? Find these people and get your foot in the door.
Le français vous intéresse?
n/t
I read a few responses to all this, and didn't see a significantly practical recommendation. Purposely focus on the municipal areas and industries where unemployment is low. For example, consider Washing DC jobs in the defense sector.
As an aside, you said your problem was that you couldn't land the interview. You must understand clearly that the purpose of sending your resume to the company is to not land a job, but land an interview. You need to rethink the structure and presentation of your resume specifically around this fact. "The interview is to land the job, not the resume." "The resume is to land the interview".
C//
To understand how to get hired, you have to understand how hiring works. Here's a simple 2-step generalization:
Part 1)
A great number of companies out there rely on their HR staff to do the hiring and applicant-seeking. The project lead or ~maybe~ even manager writes up a job description, and the HR staff formalizes it; breaks down each skill individually, adds 'years of' or 'proficiency level x-out-of-5' etc. This means that either a computer program that scans for buzzwords, or a person with no computer experience is going to be the first one to decide if your resume fits the bill.
They are not going to know that someone with 10 years experience with c++ can probably write pretty good c, or that J2EE is the same thing as Enterprise Java. They won't understand why no applicant has "MVC programming" on their resume. This is your first gauntlet.
Conclusion 1)
You need to conform to their specifications.
Rewrite your resume to tailor it for each position you're applying to. Make sure you include every single keyword listed in the job description, exactly as it's listed. Include easy-to-find "years of experience" for skills. When in doubt (say you're submitting without a job listing) investigate the company, make a best guess, and liberally sprinkle buzzwords.
(... and if you're submitting 100% blind, like on dice or monster, rewrite your resume every week or so to change up the buzzwords. It seems that the company searches are re-run upon resubmittal, generating new 'matching candidate found' indicators)
Step 2)
Now you've made it to a person. Hopefully a technical person, but sometimes it's an HR person with a 20 question programming quiz - really just an extension of the resume step (JMP step 1). They're going to do the technical and social evaluation.
Conclusion 2)
You need to be unique.
Everyone else who's made it to this stage is identical. They all have the same buzzwords, years of experience, etc. Assuming all of them have the actual technical capabilities, there's nothing to differentiate you from anyone else, which means that selection of a candidate is still pretty much random choice. So, you need to find a way to stand out.
One good way available to everyone - in life as well as interviews - is to ask a lot of questions. Get the interviewer talking about their most recent projects, engage their emotions by getting them to talk about customers (no one has a customer-neutral stance). If you can get them talking about themselves, they'll leave with the perception that you were really interested in what they do, and pretty impressed with them in general. It doesn't hurt in most cases to sideline the 'real' interview to talk about their hobbies. Then, the next time they see your name on the page, they remember your face, the discussion, and you're head and shoulders above everyone else.
One person I know had his girlfriend call three times during the interview. He did the check-the-number-frown-send-the-call-to-voicemail thing for the first two times, and then asked for a quick reprieve for the third. Embarassed, he explained it was his girlfriend, and they were meeting her parents for the first time tonight, etc, etc, don't forget this, can you pick up that. That sort of thing totally humanizes a person, turns them from a name on a paper to something more.
Of course, if you have some interesting resume fodder, like the google participation listed in a previous comment, that's good to bring up too. Still, people like to talk about themselves or their code, so usually asking THEM the questions instead of just responding or talking about yourself seems to be a better shot.
A biosciences company will hire a dude with a bio education AND a CS degree before they'll hire a CS guy.
A finance company will hire a dude with an accounting education AND a CS degree before they'll hire a CS guy.
You get the idea.
No need to go back for a 4-year degree... Boss will be impressed enough to hear you're enrolled at the local community college.
Also, in general, there are certain educational areas that "go well with programming".
For example, most big companies that have MIS developers also have a finance/accounting department. If you want a MIS developer position, its hard to go wrong by taking a couple accounting classes at the local CC, or a seminar.
Another example, many apps seem to involve databases. My CS degree only had an optional, superficial, theory oriented one semester class. Since so many apps involve DBs, maybe a quickie DBA class at the local CC would be good resume fodder.
The goal is to not be "the guy who programs" but to be "the guy who programs and also knows about our business"
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
Are you Indian?
Are you willing to move to India? Are you willing to accept local Indian renumeration levels?
If you can say yes to the above, I see a great future for you.
Deleted
i had a fairly similar situation coming out of college. i have a few suggestions, but i'd like to see your resume first. my email address is posted at http://www.twinbridgeestates.com/design.php . send your resume along so i can guage what your background is, and we'll be in touch!
Every college and university I ever heard of had a placement center, that existed for the sole purpose of facilitating interviewing of students about to graduate, and getting them hired. They are generally very good people, and helping you get hired is their job.
More to the point, the companies that interview you through the college placement center know you're a fresh grad, and unlikely to have any real experience.
People more experienced than you are applying for every private sector job in the country. You want a job? Start applying for state/local/federal agency programming jobs. Find contractor sevices that have contracts with the government and send in your resume. Apply for FTE positions as well. Government IT jobs are filled with people waiting to retire and are slowly replacing those positions with either fresh contractors or young FTEs. Get some experience, complete some projects, learn some relative frameworks, expand your skills and knowledge. Then after 3-5 years move on to the private sector. Much much easier this way.
The money isnt as good but its a job.
Take a bite out of the reality sandwich:
-Entry level means you are ENTERING the workforce, think bottom rung. You will NOT be programming, you will be doing QA, Data Entry, or IT
-You school does not matter, your GPA does not matter, what matters is your experience if you have any
-If you don't have experience, I use your GPA as a quick filter, I may also use extra-curricular activities
-I'll take someone who had a useful open source project, was a contributor, or did SOMETHING, and had say a sub 3.0 GPA, vs a 4.0 GPA "superstar" who lingered in the 'rents basement, arguing over starwars vs startrek
Why not apply to grad school? A master's degree plus the experience gained from doing even a little of your own research will look great in a few years.
Wait a minute. Like the submitter points out, he's able to correctly make an HTML hyperlink. That puts him ahead of about 98% of the Indians he'd be competing against, in terms of ability*. So the competition might not be so fierce.
However, he will have to fake some academic credentials, fake some first-place finishes in "international" programming contests, and then fake some industry certifications. After all, most 20-year-old Indian Comp. Sci. students already have every certification available from Cisco, Microsoft, Sun, Oracle and Red Hat, or so they claim...
*You might think I'm joking, but I'm not. One of our managers recently outsourced a project to India. It took us three weeks to resolve an incorrect hyperlink. Most of that time was spent telling them just to use the HTML we'd emailed them...
I recently quit a company after just a few weeks, because I couldn't work with the programmers there. I tried to explain to the management what the difference is between their team, and the teams I'm used to working with, but I needed a lot of words. One of them then said "you see programming as a life style, the team here apparently sees it as a nine to five job". And that's the nail on its head.
If you're any good at programming, and you make software or maintain a linux server in your spare time, tell them. Then they'll know you're not just the average Joe (or Jane). Then they'll ask you for a piece of code, and then you're in - if you're any good.
no, I don't have a sig
I'm a manager for a large county (100,000 employees) and am in a medium department with 800 employees. I've hired nine programmers in the past two years. Seven of them were fresh out of college. Oddly enough, all had CS degrees, though none had a clue about assembly or circuit design.
:)
Of the seven 'beginning' programmers, all had done work on the side either as a self-held business or as contract work. I rejected every applicant who hadn't done some programming outside of class.
Two of my top programmers even had joined to enter a M$-sponsored contest for programming and had gone on to the finals.
In other words, show that you want to be a programmer and not just a student.
I noticed koreaman also mentioned nepotism - that works as well.
The Kai's Semi-Updated Website Thingy
Probably out of luck. I'm not sure the job market will ever recover, hopefully you have family you can rely on. In the meantime write up your own software and maybe you'll get lucky and write something people will buy.
If your experience with programming is having a CS degree, you aren't a developer. You are, well, a computer scientist. The same thing you say? Not hardly. While both deal with programming, it is from different aspects. Computer Science is a theoretical field. It is based around the research of computers and algorithms, around the theory of how to program, how to make them better. Fine, but that isn't what most companies are hiring. They are hiring developers, which is the practical side. They are hiring people who will be told to solve real world problem X and do it quickly. They want people with practical knowledge of how to develop apps on today's systems, not theoretical knowledge of computers over all.
So if all you experience is in computer science, that's a disadvantage. Don't get me wrong, having a strong theory background can help, but it isn't what companies are after. If you feel a bit cheated by your university, well, ya, kinda happens that way.
The problem derives from the history of universities. They have historically been high level, theoretical institutions. Time was, that was really the only reason you went there. When Harvard first started, then called Oxford after the English school, you had to know Latin and Greek just to get admitted. It wasn't a place where you got practical training for a job, it was just the polish to an already fine education that included many purely academic pursuits. Few people got those sorts of degrees.
Ok well our current universities get their heritage from that system. So while we now have more complex jobs that want more training than high school gives, students still by and large go to theoretical institutions. The universities are trying to present more practical training, but aren't doing a great job over all.
Now please note, I say this as someone who works at a university. It is just something you need to be realistic about. Your degree can be helpful, but you need to get practical experience outside of it. The only time you tend to see an "All degree," field is if you are seeking to become a PhD and teach/research at a university. Anything else, you need to get practical experience as well as the degree.
Finding a job takes a lot of time if you don't already have the connections. You should be applying to hundreds or thousands of jobs.
Also, remember there are a lot of software engineering jobs at companies that do not sell software. If i were a student fresh out of school right now, I'd just go to a list of the fortune 1000 and apply to all of them.
You also want to go to every single career fair you can find within 50-100 miles, and meet people and give them your resume, and tell them how awesome it would be to help them succeed in business. Jobs fairs/career fairs are a great way to start building a network.
More data, damnit!
Thats one way to get an entry level job.
You need to improve your CV/resume. By this I don't mean do stuff, I literally mean "make it better".
Does your university/college offer a form of careers service? If so, go to them and ask them to look at it. They're not skilled in your field but they know how HR operates, which is invaluable.
Do you have a friend who has no problems getting jobs? Ask them to look at your CV.
Some pointers:
Make it easy to read. Line breaks, paragraphs, bullet points etc. all assist the person reading your CV looking for important information.
Achievements. Be they extra-curricular (did you win a coding competition?) or part of your curriculum (Are you on-course for a high grade? Are you scoring high in programming modules?).
Job Experience. ANY job experience will do. They won't ask you about it, but it gives an idea of how you perform in a work environment and a reference. If you are anything like me, your old work colleagues will know how good you are; even if they don't know what you're good at and they might be able to impart that onto prospective employers.
Open Source Projects. Especially if they're published and used to some extent (even if you think it's a bit shit).
Personal Life. This might sound irrelevent to a job, but I heard of a guy in a Fortune-500 company that hired people based on how good they were at football so he could have them on his team. That's rare, but it can give you something to talk about in the interview and might sway somebody who has similar interests if they're struggling to choose between candidates.
A B.S. alone doesn't mean you deserve an interview. Many many people have that degree PLUS experience. You are at a great disadvantage from the start, with the added restriction of being in a small town. Here is my advice to you:
1. Stop playing the victim, stop making excuses. Let the losers do that while you get yourself a job.
2. Network. Go to happy hours, talks, toastmasters, other networking meetings. Put yourself out there and let people know what you can do for them and how little they'll have to pay you. The best jobs to interview for are the ones that aren't posted and you don't land those interviews from behind a PC.
3. Find out where your classmates are getting jobs. Wait 2 and a half months and send that company your resume. Chances are someone isnt going to pass probation and they are going to need another developer.
4. Don't limit yourself geographically. Time goes quickly when you get out of school, you can move back once you get your experience.
5. Tell everyone you know that you are looking. Most companies give referral bonuses, and people will be eager to mention your name when the time is right.
I could go on but I think you get the idea. You need to separate yourself from the thousands of introverted unemployed programmers out there. Then when someone tells you were lucky to get the job you can tell them to piss off because "I earned it."
Yeah you could contribute to opensource projects and all that jazz but that will help you more in the interview than anything else. We can deal with that later, first you have to get a few interviews...
If the private sector wont hire, maybe the government will?
Having hired quite a few fresh out of school programmers, I can tell you that the best way to stand out is to have actually done something that most others wouldn't do. I hired a guy who wrote a MUD for fun. I hired a guy for a web position who wrote a 3d game engine for fun. I hired a guy who spent a week learning the language before the interview. These guys showed that they were interested in programming for more than the job, and therefore would do a better job than the random guy who just graduated.
Go volunteer to work for your school, or build your friends wild business idea, or work on an open source project, or whatever. It really doesn't matter what it is, so long as it is goes above and beyond what a simple programmer would get through school, and is significant enough that you can put it in your cover letter or resume. Bonus marks if it is public and your potential employer can see it and try it out.
When you do get an interview, be prepared to answer questions about the shit on your resume. Very important. If you say you have SQL experience and can't answer me when I ask you what a left outer join is, I'm not going to call you back. Also actually listen to and think about the questions they ask you. When they ask you to design a function to do X, they're not really looking for you to write a function that does X. They're looking for you to ask more questions about what they really want (They always leave off some very important details,) draw what's going to happen in memory, you know, actually design something. And if they offer you a hint to get you moving in the right direction, for God's sake, take that hint. If I give you a hint and you keep writing code up on the white board, I'm not going to call you back.
Interview well and you can have any job you can get an interview for.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Being a fresh graduate isn't as hard as people make it sound - if you've coded before, and you're good at it, you've got a way to sell yourself.
I guess I can count myself as one of the fortunate ones. I landed an internship with a great company that gave me the opportunity to learn. I gave 110+% on everything I had to do. Most of it was menial and sucked, but then again, programming for any large firm usually is. I had a full time position within 6 months of starting my internship. One of the first things I learned early on was, no matter how great of a coder I thought I was, I didn't know anything.
I've got about 10 years of professional dev experience and it seems that there are a fair number of jobs out there right now, at least in my geographic area. I updated my resume out on Monster a few weeks ago just for housekeeping purposes and got a ton of e-mails from recruiters. There's also a fair number of jobs out on the jobs sites. Is it really that bad for entry level people right now?
I landed in several jobs in the past few years and had gone through interviews with Engineers, managers and HR at various companies. From my experience, I had come to the conclusion that the HR usually consists of dumb liberal arts girls who think they know everything about the job advertised and management of their employees. They don't have any idea about the job, they just match keywords from your resume and prop you to the hiring manager. Landing an entry level job can be easy if you've done any internships or projects which are related to the job. Instead of working at Walmart or a restaurant in your student days, you can try to work at companies , do freelancing , develop or join some project which involves software development. I don't have much idea about IT but it shouldn't be hard for you to gain experience before you land your first job. You can also gain experience while you are working, learn new technologies every six months or so, keep yourself updated with programming practices and software engineering. Don't rely on books because they're outdated. What you've learnt from a book four years ago might not be applicable to today's standard.Keep yourself in touch with your peers who are into programming. Attend exhibitions, conferences in software engineering, read journals and know what is 'state-of-the-art' in programming . Network with people who are in your field. It can be difficult to network with others if you are in a suburban rut but try many channels.Develop the above habits and you would be a good developer.
I can program!
And are you going for programming roles or software engineering/development roles? Make sure you understand the difference because the latter is far more involved.
It seems to me that developers are always looking for talented young programmers. We're out here looking for you too. Am I missing something?"
If you really are a talented programmer then you have loads of experience proving it - personal folio of projects, contributions to open source, volunteer or paid industry experience from throughout your course - these are the essential things. If you have no experience you'll forgive employers for not taking your claim as being a 'talented programmer' seriously.
A few things, yes. Probably most of those were answered already, but lets do it again:
- Find out what the companies are looking for. Do your research. Your post seems to indicate you might be missing this one
- No, most likely you can't program. Just because you think you can, doesn't mean that the companies will think the same way. Talk to some people who are already working in this business and see what they think
- School didn't teach you a trade. Deal with it. If you were dedicated and lucky, it thought you how to LEARN a trade. You do that after school. (Unless you were working while in college, and that doesn't seem to be the case)
- Ask yourself: why would a given company hire you, and not one of the other 9000 who applied.
In other words, make yourself into something they need. Sorry, no dream jobs out there, at least for people who are starting now. Find what they want, become that, and then, after you are inside, find ways to move into positions that will suit you better.
Notice: I am an IT business owner
morcego
A tech recruiter friend gave me this advice. The best way to get a job is, find companies you would like to work for, and try to find someone on the inside. This has proved true, even before I met him and I wasn't trying to do it. Besides part-time jobs at restaurants, retail stores, etc., every single one of my jobs has been through knowing somebody. They were not the one hiring, but they introduced me to that person.
1. I got a job as a classroom speaker, even though I had no professional speaking experience, because a family member worked at the organization. Both the organization and I soon realized that I was an awful speaker. But they didn't fire me. They moved me into an office job, which I liked more anyway.
2. I then got a job as a graphic designer, through a friend of my roommates, even though I had zero portfolio samples. The boss and pay were awful, though, and I soon quit. But I learned (a) not to do art professionally because you will be told by unartistic people what fonts, colors, etc. to use, and (b) the importance of a good boss.
3. I then got a job as a technical writer for a major IT department, through a friend, even though it had never been my job title. I did have a few samples though from the last job.
4. In that same company, I became a web programmer, even though all I knew was HTML. That was four years ago. I still work there and now take care of several web apps on our intranet written in PHP, PostgreSQL, and JavaScript.
I hand HR my resume. I hand my prospective future boss the resume and the source code for it in the language the job is for with documentation.
The game.
Find a decent recruiting firm and forge a relationship with them.
Apply at consulting / solution provider companies. They tend to have high turn around and are always adding new staff to replace those who have moved on or adding folks to work on projects. Microsoft partners that do custom development or product customization (e.g. SharePoint, CRM) offer good opportunities. Certifications help here.
Move to a big city. There is just more opportunity. If you are in the US, D.C. is a great place to be right now for jobs. After a couple of years, move back home if you want to. You will seem like a total badass with big city experience.
First, any company bigger than 20 people is going to have an HR person who is screening resumes. That person has no technical background at all. They don't know a good programmer from a good accountant from a good coffeemaker. What they do have is a buzzword bingo card. And they run through your resume, looking for the right buzzwords, and the ones they find get a checkmark, they add up the checkmarks and put the resume into one short stack, to send on to the manager that's actually hiring, and the big stack of rejects.
So you need to get a buzzword compliant resume. If you know C# put that on there. If you know SQL Server, or Oracle, or whatever else, put that on there. Do you know how to program microcontrollers? Put that on there. Break every convention you were taught in writing classes, and put a big list of all of the technologies you know using all the industry jargon you can. This isn't to make you look like a smart insider. This isn't for anyone's benefit but the little buzzword bingo player. You should have a collection of a half dozen or so targeted resumes you can send out, each one tailored to a certain industry and technology set with appropriate buzzwords for each.
That sounds really really cynical. It isn't. It's absolute truth. You must have the skills they're looking for, but more importantly they must be clearly presented somewhere so a receptionist (that's who did it at my first job) can figure it out. When I was looking for a job getting out of school, I went fully buzzword compliant and that's what got me there. Managers do not have time to go through 300 resumes to find the 5 people they want to interview for 2 positions. They delegate that. Delegation is what managers do.
Second, if you don't have the buzzwords (C#, Java, .Net, SQL Server, etc) get them. Find an internship. If you're getting ready to graduate and you didn't do that, you screwed up. Internships are how you get jobs. Or summer jobs. Or part time jobs. Or something where you can learn something practical in a real office environment. You still have time. Go pick up a "Learn C# in 30 days" book and figure it out well enough to write some code and make sure it's prominently displayed on your resume.
Third, know your market. If you tried to apply for a java programming job here in Kansas City, you'd be out of luck because Sprint's been laying off Java programmers by the bucketload. But trying to get a job using C# or VB.Net or as an entry level systems person on Windows Server would be pretty easy.
Finally, just remember, it does get better. The first job is the hard one to find. The rest get easier as you meet people and develop contacts. That's the key really. After you do your first blind job hunt, you never have to do it again, because you'll know someone. That means you need to build a reputation as someone who's really good at doing what they do while being extremely easy to work with and get along with.
I know it sucks, but really it's pretty much the last thing that sucks.
Any moron can take programming classes and pass. Nobody knows that you're the A+ ace who ran through the textbooks in half the time as the other students and then built an AI to write your homework for you. On paper you just like like J. Random Fuckup who squeaked by with 61% because he managed to bribe you to do his final for him. Knowing that there are a lot more of Mr. Fuckup than of you, presuming you are not him, why on earth would you expect a company to hire you?
I'll tell you why: Somebody knows you're a genius, that somebody works for that company, or is friends with its decision makers, and this person goes to them and says "You've got to hire this kid, he's a genius and will be well worth the investment."
You may be the wiz-kid that's going to make Knuth like like a dope, but until you produce a few thousand lines of brilliant code no one is really going to know it. There are a few proven strategies to make it over this hurdle--becoming a valuable contributer to a high profile open source project is a good way--but most of them are hard, or time consuming, or both. Knowing someone who can recommend you is by far the easiest method.
Of course, maybe you don't know anyone. If that's the case your options narrow and my next best recommendation would be: Get any IT job. Be a phone answerer, or an on site technician. Yeah, it sucks, but it lets you (occasionally) rub elbows with people who have the potential to recognize your genius. It also lets you (occasionally) rub elbows with problems that could be solved by writing a brilliant piece of software. If one day you see one and you write one, then maybe you'll be able to see it adopted. You know what that is? That's something that looks good on a resume: I produced some software in my spare time which went on to be adopted by the whole fucking company and now saves thousands of dollars in productivity every month. That tells a prospective employer that /this/ resume may be worth a callback, and even though HR wont know what that shit means it lets you add a bullet under "Experience"--which is good, because they often take that "15 years of .NET development" crap seriously.
I want my Cowboyneal
This is a rough job market to be graduating into... that being said, these dips occur all the time so you have to be prepared for them. But the job market itself has changed. I graduated with a B.S.E.E. in 1990, and had some software development experience from a summer internship. However, I decided to attend grad school (personal goal to get a Masters), but kept an eye out for more summer work. By the time I got my Masters, I had a second internship as a software developer with another company, and also had networked and worked a contract position doing some PERL scripting for a local ISP.
Not that you have a time machine or anything, but you should have been trying to find a position getting any kind of software development experience, while you were still a student. Perhaps working for a professor as a research software developer, or in your college's IT bureaucracy somewhere. Do co-op positions still exist? My current employer has a summer program, but obviously that isn't something you can look into late March before a May graduation date. If none of that works out, improve some open-source software and at least be able to show something, as a leg up on the competition. Not to be an old fart talking about a bygone era, but back when I was entry level, getting experience on real software wasn't as easy (open source wasn't as visible) so companies didn't look for it to the extent they might these days.
Now I realize it just isn't always that simple... software dev positions are hyper-specialized these days. Companies wanted web programmers with years of experience on specific frameworks, C#/.NET positions with years of UI experience, Java with domain specific experience (simulation/modeling as it turned out) and preferably with a security clearance, C++ experience with X years doing Y, even companies wanting candidates with experience at working at other companies of the same size (startup to startup, small to small), etc. That second summer internship I had was at computer company needing a combo of Windows developer AND Novell Netware developer (this was back in the early-mid 90's). Not many (any?) people had that combo so they were willing to take on a generalist who they thought was fairly sharp and could learn. I really didn't have either coming out of school in that era. These days, I'm not sure many places do that anymore, which I think is really unfortunate. Especially now, with high unemployment, companies can filter for their exact requirements and still have too many resumes to sift through.
Lastly, I would say be realistic, you might have to take some other position just to have a job. That doesn't have to be the end of your career before it even starts, a lot of getting to where you want to go involves getting your foot in the door in order to prove yourself. Where I work now has a mix of software dev and systems engineering, along with the usual IT stuff anywhere - look for companies like that. It isn't perfect, but always think of the other side of the coin - a company isn't psychic and can't predict you might be a great developer, it is a rough call for them to stack you up against anybody else who does have some experience. Be willing to work near software development and the chance to transfer may come up. Work on something at home on your own time (balance that so you aren't totally burned out for your day job) so you keep learning and keep your skills up. This probably isn't what you want to hear but that's the reality of the current situation. If you go this route, be patient, and keep searching job openings to stay up on what is in demand. I was pigeon-holed a bit at my previous job and found out the hard way all about what skills were marketable in the previous geographic region.
I can relate. I left one tech field to go back to school so that I could enter another. Expecting I would be better off for the experience. then the economy went down the shitter. I graduated last may and have just now found a job. Some suggestions from experience are:
1) If your not already employed in some matter get so. It doesnt matter what your doing or if dont really need it cause you live in your parents basement. Long periods of unemployment are a stigma.
2) I religiously applied to jobs online. Careerbuilder, Monster, Dice, Indeed and probably others that im forgetting. Last fall I counted over 1000 applications I had submitted. That was almost a complete waste of my time. The first two wont do anything but bury your email account in spam. I had somewhat better results from usajobs.gov. However my school career center proved to be the most productive.
3) Be realistic with your expectations. entry level pay is defintely down from what it has been and competition is high for entry level openings. you also want to be flexible with where your willing to relocate.
5) Dont give up hope. Keep trying. It took me a year and I managed landing pretty much exactly what I was originally looking for.
And is there anything on it besides your grades in various college classes and a highschool GPA?
What work have you done (internships or open-source)? What have you actually accomplished? For self-motivated projects, why did you pick what you did? For public projects, where can the records of your involvement be found?
I can program! (See how I put that link in?)
If that's really your idea of "programming", then you are part of the problem Jeff is talking about in that post.
I hope you don't pay to much attention to this guy. The world is not nearly as dark as he's proclaiming.
I'm going to tell you a fact that you may or not find comforting.
9 out of 10 programmers who are applying for jobs suck. I'm probably being too generous here, but whatever. I've interviewed people at Microsoft, and I've interviewed people at small start ups. Doesn't matter, most interviewee's are just terrible. I don't blame this guy for being jaded. If you had to interview crappy programmer after crappy programmer, you would be too.
BUT if you're the 1 out of 10 who's actually good, than you have a very bright future ahead of you. Companies are always hiring, and if you're truely talented, they'll often hire you even if they weren't planning on it. No good company lets a great programmer get away when they find one.
Entry level jobs have a lot of advantages, in that you're still new, and have no idea what you're actually worth. People are inheritantly loyal to the first company they work for, so they tend to stick around for a lot longer. Plus you get to train them to your style of programming.
Now in terms of actually getting those jobs...
Luckily for you, HR is ridiculously easy to get around. They don't know technology, and you can use that to your advantage. School, GPA, hobbies, cover letter, prior non programming work experience, awards... none of that matters. The only thing they care about is the programming buzzwords you have in there.
Right now, the big one is FLEX, or AS3. Learn that. Put it on your resume. There's a big shortage there, because most people who learn Flash are graphic designers with a minimal programming skill set. If you're a programmer with a minimal graphic design skill set, they'll love you.
Find out what else is "hot" but becareful not to confuse programmer trendy, with what's actually in demand. (Nobody in HR cares about Ruby on Rails).
Just pretend HR is nothing but a search engine that scans your resumes for keywords, and you'll be fine.
Now as far as experience goes. Work on an open source project. There's really no excuse not to. Just think about all the programs you use that are open source, find something that you'd like to change, and than go about learning how to change it. Don't "apply" and ask "what can I do to help". Just jump in and have at it. It's way easier to work on a project when you're doing something you want done anyway.
Good luck!
These days it's the only way. If you send in a paper resume, it will get thrown in the trash. HR departments were scaled back during the major layoffs, and they receive a lot of resumes. This means your resume will only be chosen by computer! Time to show off your skills and figure out how to game the system.
I just landed a job after 9 months of unemployment this way. Load your resume up will lots of key words. When the computer ranks two resumes equally, it posts the most recent one first. Therefore, you need to repost your resume often.
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
Ive been trying for the past 6 weeks to land a job in a new city, I have 13 years experience and have only just recently started doing an online certification. Ive tried a few different approaches but I have been told endless times that you cant be 'different'. Bosses don't like different, but seeing as I have had no luck at all trying to fit myself into the mold of the masses I am left with no other option.
So no more wasting time with boring cover letters. I will simply state 'because I can do it better'. Forget attaching a resume! After a potential employer has read a hundred before yours there is NOTHING you can do by the book to leave an impression. Instead a doc file with a goatse pic should leave a permanent impression.
If this fails just walk in holding a kitten to a knife and demand to speak to the boss!
I'm about to graduate as well, and I'm coming out of school with a great job.
1) You have to go to a great school where companies actively recruit. These are probably the top ranked 30 or 40 schools in the nation. Going to these schools allow you to network, and take advantage of the school's reputation. This is extremely important. I would wager that Harvard is only 40% better than your run-of-the-mill MBA school, but the MBA's that go there are interesting to the powerful companies that sit on the south tip of Manhattan. Likewise with programming, you have to go to a school that breeds you to be the programmer the big companies want.
2) Study the right thing. I strongly feel that emphasis on low level assembly, vlsi design, and hardware architecture will serve you a lot better than knowing if a convoluted algorithm is O(nlogn). Be unique, and have real skills when you come out of school. If all you can do is spit out userspace Java programs, you'll have a lot harder time finding a job than if you can write device drivers.
3) Network, network, network. Know your classmates, where they're getting a job, what pots they have their ladles in. Pick an area that sounds lucrative and interesting, and focus on getting a job there. A big part of networking is social skills, including interfacing with the dreaded HR drones. Join a fraternity/sorority, toastmaster's club, etc, and make work towards not being CS-awkward.
4) Be willing to relocate. My great school is in one of the worst economies in the States, and I'm having to move a few thousand miles for a job. If I wanted to stay where I grew up, I'd be looking at half the salary.
5) Finally, get some experience programming. If you want to /program/, avoid IT like its the plague. Open source contributions unlock a lot of doors. Its not easy, but you have to prove you're better than the legions of other BASIC-slinging programs out there.
Lots of people are telling you to keep programming, and build a portfolio of interesting projects.
That's reasonable advice, but it misses the most important thing...
Get a job - any job
When an employer get's your resume, and sees that you are currently employed at Walmart, or McDonalds, or gardening for the local council, that will make a much better impression than "working at home on an Open Source project". This is also a good risk mitigation strategy - it keeps you busy, and earning money, in case it takes you a long time to get a programming job. It is also good for your self confidence, and health.
If you also do a code project while you are working, then you will really impress employers
I'm a software visionary. I don't code.
Offer the interviewer an awesome blow job. Works every time ;-)
I've been involved with hiring a lot of hi-tech companies, including Google & Yahoo, as well as smaller shops. The general advice I have you is: be exceptional.
The most common way to do that is to attend an exceptional school. That is, a place like Stanford, MIT, Caltech, etc. This isn't going to guarantee you a job, but it will greatly increase your chances of getting an interview because prior employees from good schools have done well on the job. The background they teach also increases your chances of getting through the interview process.
By definition, not everyone goes to an exceptional school, so a lot of people will resent this advice. Fine, but it's not going to change anything. For a new grad, this is probably one of the single most important factors. (If you've worked a while, it quickly falls in importance as you have real experience & skills that can be evaluated.)
Okay, so you didn't go to a top school. Now what?
Well, you're not screwed. Not by any means. A lot of the best engineers I know didn't go a top school.
But I'm going to be a lot less willing to take on as much risk. So help me (as the theoretical hiring manager) by mitigating it another way. That is, show me your awesome: contribute significantly to an open source project. That shows me you can write real code. It shows me you can get stuff done. It shows you can work with others. It shows initiative.
Last piece of advice, although you didn't ask about this: For you first few jobs, forget about money. Your goal is not to make the most money right now, but over the long haul of your career. Find a gig where there are experienced and better developers than you, ones you'll be able to learn from.
If you walk into a place & you're the hotshot with 1-3 years under your belt, leave. Find a place you grow & develop more, even if they back up the money truck. In ten years, you'll be very glad you did (and you'll laugh at what you considered the "big money" 10 years back).
But, I don't know any technical people who want to be known as the one who brought the bozo in, even if they stand to gain a $5000.00 bonus from HR for a hiring recommendation.
So, pem's law for getting a technical job:
There's no grizzled, cigar smoking boss behind the scenes, like in a boxing hero story. Nobody (especially?) - not even the "Director" who is (supposedly) "in charge" of things at your Dream Job (TM) is able to judge you like your professors have evaluated and coached you. That's their job.
They don't know what questions to ask to provoke the response you really want to give. The companies you're trying to get a job with are forever attempting to mitigate risk, often preempting other activities. Assure them you are a shoe-in, an absolute Perfect Fit (TM) beyond compare.
Your CV/Resume and cover letter are your key, and usually your only hope. If you have the benefit of recruiter calling you, even better, because they will Do Anything (TM) to get you in - all they care about is how well you stack up against the requirements of the opening.
Use the resume/cover letter process to your advantage: probe for any/all information (stock price, board of directors, etc.) put it all together, identify as many places you can apply individual attention to, and follow through. Simply knowing what will come up during an interview, people who will be mentioned, technologies in play, business model, locations, all will define the nature of the conversation.
If you are able to interview, and things go well, leave something behind for them to remember you by - some printed material that demonstrates your capabilities. Pretty-print some clean, well documented code, some charts, a CD-R with a descriptive label, something someone will look at on their desk and bring about internal dialog about your prowess and apparent "sureness" in capability and the minimal risk presented by selecting you.
Bottom line: nobody is going to come up and tap you on the shoulder.
I'm sure that part will get me flamed but what I do for a living is get people jobs. The most important thing you have to realize is it doesn't matter how great your skills are if people don't see your resume. Your resume is a marketing document. It is a tool to get you an interview. And just like all other marketing document it needs to be seen by as many relevant people as possible. Stop applying for jobs and start applying to companies. Emails get auto-responded to at almost all companies. Letters don't. It will cost you some postage but posting your CV to companies will get a lot further than email it ever will.
That said sending your CV around isn't the best way to go about getting a job. The best thing you can do is sit down and make a list of every single company you can think of that you think your skills would suit and then pick up the phone. Call every one of those companies and say "Could I speak to the person that looks after your IT department please?" - "Hello Mr IT Manager, My name is Job Blogs, I am a recent CS graduate with a major in java development and slashdot posting and Digg reading. I am currently seeking a role and I was wondering whether you would have a use with someone of my skills at the moment?" If yes WOOHOO. If no "Do you think you would use someone of my skills in the future? And would you know anyone who is looking for someone of my background at the moment?"
This is extremely hard to do. It takes a lot of self discipline and a strong mind to get past all the no you will receive. But this method is 100% the best way of landing yourself a job.
How good you are plays a part in getting a job, but FAR more important is making sure enough people know you are looking.
Good Luck.
For anyone starting out, coming from a veteran of job searching.
1) Experience. I have said this before, if you have to do some volunteer work for a non-controversial non-profit. E.g. doing websites and donor databases for your local no kill animal shelter. There are plenty of volunteer orgs. that need help. Find one that overlaps your interests and seems a high quality organization. You can get both experience and good references from this.
In addition, if you show up to help with fundraisers you will probably get to meet local business owners. One of which could give you an internship or entry level job to see how you work out. This is also the networking aspect.
2) More references and networking. Get a reference from instructors you "click" with. They may even have leads on potential employers, sometimes former students or colleagues of their. It helps if you have an interest and good grades, but if you show a keen interest that helps to offset any academic struggles.
3) Networking with peers. Form study groups, interests groups, or join one. People who graduated before you could give you leads or advice. Depending on the situation, you may end up doing business with a classmate or two for the rest of your life.
4) See if you can get a student position at your school's IT dept. or help desk. More opportunities for references and networking.
5) Put up adds on Craigs List etc. and do a little consulting on the side while in school. It beats washing dishes. Just make sure you know how the taxes work. More opportun ity for networking. Nothing speaks volume like satisfied customers.
In this economy if all you have done take classes, you are hosed. You lack both experience and social contacts, and will be starting from zero when you graduate which is when you need to money the most.
putting the 'B' in LGBTQ+
As someone who's hired a lot of developers, I can tell you now that going down the Testing path is a terrible idea.
As all good Software Engineers go, Developers Make Bad Testers(tm), and the same goes for the reciprocal. Testing and developing require two completely different mindsets. When we advertise developer positions, we get swarms of testers applying. Unless they've got something else to show for it, their application goes straight in the bin.
The best advice I can give you: contribute to an open source project.
This tells us three things: You actually can cut code, you're motivated enough to see something through, and money isn't your primary motivator.
I keep reading these "I need a job, I'm a programmer" stories or slashdot and can't help but think... "yeah so what, I can do that".
I have a Mechanical Engineering degree. I honestly don't do much more than 'program' all day. But all my for loops and if statements have physical implications in the real world.
I took CS120 (Java) for kicks because I liked programming. I also took CS240 (C/C++) again just for fun, but I was depressed to find out that I graduated top of both classes. Those were my ELECTIVE classes.
If you have the ability to pick up concepts, why not try for a Mechanical or Electrical engineering degree. Your programming skills won't become useless, but you will be able to use them in other ways.
If you understand how a For Loop works and you can pick up ANY of the Mechanical Engineering concepts (Thermo, Fluids, Controls, or Mechanics) you're going to be non-unemployable. I write code to dig through TBs of field data looking for events. I even have quite a few submissions to Mathworks Central and Git Hub
Don't limit yourself to just Programming. There are other skills that require "programming" but are not just limited to being able to program.
Well...I'd say step one would be to stop publicly referring to putting a link in an HTML form as "programming".
The cake is a pie
I've interviewed 50-or-so people for PHP programming roles recently. Everyone starts with a one-hour technical interview, and there's no substitute for passing that.
But what I really want to know is: "Can you show me something cool that is *entirely your own work*?" Where's the pet project you can show off? The thing where you tried something new and solved all the problems that came up, and got something out the door?
Best way to land an entry level job? 1) Write resume 2) Apply for job 3) ???????? 4) PROFIT!
At my university, the College of Engineering had a co-op and internship office. Anyone from the university could sign up with the office and have their resumes submitted to companies. This meant that you would be applying for positions with companies who were specifically looking for entry-level candidates. In addition to this, companies could post job openings, and anyone, even people who had never attended the university, could go in and browse those postings. Again, these posting are specifically for entry-level positions, so you're not competing against much more qualified people. I got my first two jobs through that program: the first an internship and the second a summer job. That summer job led to a full-time job that has led directly to all of the jobs I have had since. If you have any local colleges or universities, you might want to check and see if they have something similar.
"As a manager, I posted for an entry level position "
"I ended up getting the best candidate -- over twelve years of experience pertinent to my business, glowing reviews from previous employers and excellent interpersonal skills."
"Is it fair? Maybe not."
There, right there, is why I don't teach. I cannot, in good conscience, tell some poor kid to work hard, stay in school, study like a madman, fight for good grades, and work 80 hours a week to put himself through school like I did, knowing that there won't be a job for him.
We all know this economy HAS NO entry-level jobs. The same people who so cavalierly smirk "life ain't fair" will be the same people whining and gibbering the loudest when the young we've screwed over pass the "Mandatory Euthanasia/Nutrition Enhancement Act of 2025."
As the next generation straps me and the whiners into the gurneys so we can watch the pretty movie while the drugs start dripping down our IVs, I look forward to finding the fattest, loudest schmucks bawling the like Glenn Beck and telling them, "It's OK. Life ain't fair," before it all goes black.
He put his boots up on the table and made a face. "The sig," he smirked. "You can waste your life in search of the sig."
I am hiring. Seriously. http://tbe.taleo.net/NA5/ats/careers/requisition.jsp?org=MTVNETWORKS&cws=1&rid=207 If you even come close to those sets of skills listed, you will get considered. Honestly, I need someone who can code, yes, but is also hard working and willing to be part of a team, not a lone gunman. If you have ego or attitude, don't apply. If you can at least do python/c++ or C# don't hesistate to apply. Is that entry level opportunity enough for you? Cheers.
People who wrestle with statistics need programmers that understand how to get answers out of data like they need their livers. See if you can't find a research assistanceship to support you for 2 years while you get an MS in Statistics. You will have a reference with 2 years of programming on it when you leave school and probably some personal contacts in the "REAL" world. This is a field that has job openings all over the world.
All generalizations are false, including this one. Mark Twain
As well as the options already mentioned (including in my own posts above), one extra thing you can try for CV/application "fodder" is to take part in sites like stackoverflow, superuser and serverfault. If you can earn a good "reputation" on one or more of those sites it could be worth mentioning that you are an active member and dropping your user name. I'm on page one of two of those sites user-listing-ordered-by-rep pages, though mainly because I'm a sad social inadequate with too much free time of an evening rather than because I'm trying to get my name out there (as I'm currently gainfully employed and "safe" for the foreseeable future) so I've not tested the "helpful to mention on a CV or in an interview" theory yet, but having a good rep on such sites shouldn't harm you (unless your post history makes it obvious you were browsing those sites helping others when you should have been concentrating on your current/previous employer's problems!) and may shine a beneficial light on you if the prospective employer bothers to check and likes the tone and technical quality of your participation.
I would not pursue this as a first line of course, but if you have some free time on your hands and nothing else practical to do with that time... If nothing else you might learn something useful yourself - I've have a few "oh, that's an interesting point/idea" moments from responses to questions that relate to my areas of interest.
Advertise a job similar to the field your trying to gain entry in. select the best cover letter + resume from the submissions and use them for yourself.
I can program! (See how I put that link in?)
I hope that was a joke, otherwise no wonder you're not having any luck. Text mark-up is not programming. Not even close.
bad Networking? as some times it's better not to have any think on stuff like facebook and others. Also are some buzz words a red flag for non tech HR people as well?
I completely understand, because I felt the same way when I graduated college with a computer science degree. I had a part-time programming job during college, but that wasn't enough. No one was willing to take a chance on me.
So, what did I do? I lowered my expectations and started applying to any job that was remotely technical. I managed to land a technical support job at a local university. I thought to myself, "This is a dead-end job. I'm making $13 an hour, which isn't too bad for the work I'm doing. But I'm not using any of my programming skills. I'm just talking on the phone."
Three months later, however, I was able to land a job as an application engineer: A job where I would be talking to customers on the phone about problems that required C/C++ knowledge. So, the job that I thought was "dead-end" was actually crucial for my career path, because it gave me the technical support experience I needed to land the application engineering job. And after working as an application engineer for a couple of years, I was able to convince the managers that I had what it took to be a software engineer, which was the job I wanted in the first place.
So, what I'm saying is, start applying to any job that involves any kind of technical work, even if you won't be using your degree, because you never know what paths will open up.
agency suck and they try to push you into any job even it's just like a bit in your field just to last one day on the job just to be told your not fit for this job.
There are also ones that will have you work one day just to say we have to many people on the job.
Move to a city with a lot of IT. Take ANY job, even if it's Geek Squad. Start networking like crazy, join a LUG, attend conferences and talks, put yourself out there. The vast majority of all jobs are not given to a resume on a stack. Meet people.
In Capitalist America, bank robs you!
I would suggest because you are not seeing people face to face, send out cd's that contain your portfolio, including resume, cover letter, work samples and demo's and any certificates, awards you have. At least having something you created on the cd, you have something to show the company that proves you have skills in the area they are looking for
We're located a couple miles from a 20k+ student University. We're one of the few software development shops around, but we have a simple formula. We hire 1 - 2 interns who Jr's in the fall. Fall semester we expect 10 hours week and it's an unpaid internship. Usually it is on some type of utility that can help us in the long run, but hasn't been important enough to take way from the full time people. But whatever it is, it's something that is going to be put out into production. It has to work. Sometimes we send them into the fire working on opensource projects that need to be tweaked for our needs. Again, whatever it is, is something that will be put into production.
If they are worth a grain of salt, they start working for us part time for a monthly stipend that's about twice what they could make working 15 - 20 hours a week on campus. During the spring, summer, and their senior year. Only rule is get the tasks done. If they've made it to this point, typically we don't have to look over their shoulders. Generally at the end of their Sr. year, they either have a job offer back home (because they have real experience), or we've hired them full-time because while they were working as an intern they were building our next product. By the time they finish school, we're out selling said product to customers and usually it's enough revenue to pay their salary + benefits.
We call it our "Code your way into a job" programme.
"The problem with socialism is eventually you run out of other people's money" - Thatcher.
At least you can program.. I have 2 programmers working beside me that have no idea what they are doing. No idea how they landed that job or how they are still here.
The purpose of the HR department is to come up with bizarre and absurd reasons why mid-level supervisors can't get the human resources that they need to keep their division profitable.
All the other functions of a 'human resources' department could be done by computer or out-sourced to some distant third-world country. So the alleged humans in the HR department need to constantly come up with reasons to justify their salaries. So they specialize in coming up with weird and irrelevant reasons to prevent YOU from being hired.
My last job interview had a 22-year old ask me to explain a job termination that happened to me before she (always a she) was even born! How do you answer something like that?
staffing firms are clue less at time to point of pay people to sit a office to have little to no work to do (and stuff that they having you doing grunt stuff that is not the job they hired you for) as they are waiting on paper work to go though But there is a lot more to that story.
1st the boss (only in that office 1 day a week) things that the paper work was done and the recruiters says we are working on it so they say I can start on the job I was hired for but I can do some stuff and help out the people there a bit. But while doing that I was doing some stuff the wrong way but it takes a week for the boss to telling me that so I end up pissing off people for a week by doing stuff wrong but it's was only some people where pissed off and there may of been as I was from a staffing firm and not working there as a employee of that office.
2st there was a higher up boss that was only in the office 2 week a mouth and 2 week out of state and I did spent some time with him and one of thingd he told me to due was switch out a old hub with a switch and that pissed off some boss of a other part of office. But that was taken care of by him. (We also had a system for them in a storage room but other people in my team did not know about / what it was for some days as well I found it while clearing up the storage rooms) He also let keep a laptop in office with some training manuals on it but do poor team team communication I was not able to use it as we told the 1st boss but the team did not find out / was not told and I need to hide it in the storage room and only get to read them for a few min a day.
3st On day I left alone in office as the other team people when off site and later the 1st boss said I was not to be left alone like that the next week.
4st I was to look over what the other team members where doing as part of the job but there where pushing me off of them even after the 1st boss said to do that so I just ending doing more clearing up the storage rooms and taking boxes / other trash down to dumpster bins.
and after about a mouth of that the staffing contract has ended and they are working on a reup and after about 2 months of that it came back with a lot less people.
staffing firms are clueless at time to point of pay people to sit a office to have little to no work to do (and stuff that they having you doing grunt stuff that is not the job they hired you for) as they are waiting on paper work to go though But there is a lot more to that story.
1st the boss (only in that office 1 day a week) things that the paper work was done and the recruiters says we are working on it so they say I can start on the job I was hired for but I can do some stuff and help out the people there a bit. But while doing that I was doing some stuff the wrong way but it takes a week for the boss to telling me that so I end up pissing off people for a week by doing stuff wrong but it's was only some people where pissed off and there may of been as I was from a staffing firm and not working there as a employee of that office.
2st there was a higher up boss that was only in the office 2 week a mouth and 2 week out of state and I did spent some time with him and one of thingd he told me to due was switch out a old hub with a switch and that pissed off some boss of a other part of office. But that was taken care of by him. (We also had a system for them in a storage room but other people in my team did not know about / what it was for some days as well I found it while clearing up the storage rooms) He also let keep a laptop in office with some training manuals on it but do poor team team communication I was not able to use it as we told the 1st boss but the team did not find out / was not told and I need to hide it in the storage room and only get to read them for a few min a day.
3st On day I left alone in office as the other team people when off site and later the 1st boss said I was not to be left alone like that the next week.
4st I was to look over what the other team members where doing as part of the job but there where pushing me off of them even after the 1st boss said to do that so I just ending doing more clearing up the storage rooms and taking boxes / other trash down to dumpster bins.
and after about a mouth of that the staffing contract has ended and they are working on a reup and after about 2 months of that it came back with a lot less people.
Listen carefully to all of the advice you get given by people on job hunting. Because that's what you should duly ignore.
I can't think how much conflicting advice I've had from know it alls on getting a job, but every time I've nailed a job interview I've done it with merely good enough resume and showing up on time in a shirt and tie. There are a couple of points that make the difference however:
1. I've actually been a good fit for the job, known that, and sincerely wanted it, but was not recklessly optimistic and bubbling self-deluded enthusiasm. You know what I mean, try not to be one of those twits who can't sing in Idol auditions, be one of the cool-headed polite folk who can actually hit a note.
2. I've not come accross as a stuck-up wuckfit in the job interview. Don't reherse, you'll sound rehersed. Don't over-prepare, you'll sound over-prepared. If you can't just sit there and naturally answer questions off the top of your head then you're probably not right for the job.
If you are being interviewed by people you are going to be working for, you need to get on with them comfortably. That's a huge one.
If your a cultural fit for the workplace you are likely to be hired. I believe this applies very strongly to IT. Infact ignore my advice too.
After logging in slashdot still does not take you back to the page you were on. It's been that way for 20 years.
Do not expect the work to come to you. If the work is in Silicon Valley, go there. If it is in New York, go there. If it is fucking Calcutta, go there.
Shoes for Industry. Shoes for the Dead.
Unless bad grades and a bad resume are your problem, they are looking for great people all the time and have a very objective hiring process to find the best people.
This is where you are showing your inexperience. In this economy, HR gets thousands of resumes for any opening, and yours will not be the best one. (You have no experience. That's something that HR will filter on, since they don't know who is "good").
It's about who you know. If you don't know many people, start working on it.
First, tell everyone you know you are looking for a job. Ask them to keep their eyes out for you. Ask them to ask their friends. Post it on facebook. Many people don't tell their friends/family when they are hunting for a job. The technical term for this kind of behavior is "unemployed".
Second, increase the number of people you know in your chosen field. Hit meetup.com, local ACM chapter, criagslist, local event site, etc, for any programming/tech related groups in your area. Go to them. Talk to people. I've gotten more jobs by this method, than all others combined.
Third, spend your time well. Work on an open source project, develop your own website. Hell, launch a commercial product. This is so you have something technical to talk about when you interview.
Fourth, have an interesting life, outside of programming. This is something else to talk about in the interview, and at the tech groups. Be interesting, and people will remember you and want to talk to you
If you get an interview:
Show your interests. If they ask what you like doing, tell them. I don't mean tell them who you vote for, or where you go to church, I mean technical areas you like playing in. Even if it doesn't match the job saying "I like physics simulations", beats the hell out of "anything, I don't care". Even if the job is accounting software.
Do research. You should know what the company does
Ask questions. No one wants to hire a lump. (Ok, some people do, but you don't want to work there. And they are in a minority)
Here are a few tips I did to get my foot in the door right before graduation:
- Don't be afraid to work for free for a few months as an unpaid intern. I know it sucks. I did it for 3 months with a mortgage and 2 semesters to go. The references you'll get and the experience you'll obtain will be invaluable. I found mine by going to the job listings on my university's career page.
- Get into QA. QA positions tend to attract the riff-raff of the programming industry. Incidentally, most of the candidates aren't worth squat (meaning you'll have a good opportunity to get a job). Once you land a QA job, do what you can to start programming. If the current QA job doesn't have any programming, use your newly acquired experience to find a QA job that does. That's basically what I did. The job I was QAing for had a job listing as a web developer. I asked the CEO of the company (a very small company) if I could help with some of the web development when their wasn't a lot of work to QA. After a few weeks of doing programming on the side, he was so impressed that he gave me the job as a web developer.
- Self study. Learn what the real world is using and study the hell out of it. When you do an interview, remember all the questions you were asked, write them down and find out the real answers for them after the interview is over. There is a very good chance you'll be asked these same questions again.
I hope this helps. Good Luck!
Having just gone through this myself, career services events are the biggest help. I went to a larger university that had semi-annual career fairs, while the drones that go there for corporations can't really do much but point you to a website, if you make a good enough impression you can often get on-campus interviews. I had about 15 interviews between september '08 and february '09, just by using all the resources career services had to offer. Good luck!
Q.E.D.
You really need experience. Get an internship somewhere and hope they'll pay. You don't say what level degree you got, but my wife went for one year with no interviews after getting an MS in engineering. It's really tough and you will have to settle for what you can get. Good luck.
The best thing you can do is produce your own code that you can show them. Something you have spent a lot of your own time on and shows a number of different concepts. A previous commenter said contribute to an open source project which should be just as good. My brother produced his own 3D engine (a few hundred hours of work), it got him a intermediate level job at a startup game developer. He is now a senior programmer just two years later. He never went through an agency either, just go straight to the company. I managed to get a graduate position myself, I offered to show code I produced in my own time, for that I got the job and they didn't even ask to see it.
This is addressed to people at least a year away from looking for a job:
Use /. and other technical and even non-technical internet presences as if they were your portfolio.
Think carefully about everything you post, everywhere. What you did 2 years ago may not hurt you but technical mistakes or off-putting comments made in the last few months may hurt you.
Have a "main" web site that's about yourself that includes links to the sites you want your employer to look at along with your handles on each site. Use the same handle if you can, and make is a reasonably professional one. Include links to work you've done that is relevant to the jobs you are seeking.
Then, when you meet recruiters at job fairs include a sample of your portfolio along with the URL or URL-shortener-shrunk URL on your resume. If you've had a few insightful /. posts that are relevant to the work you are looking for or better yet to the particular job the person is hiring for and others have made positive comments about them, include one of them along with your resume and cover letter. If you've ever had a Wikipedia article promoted to Featured status or spearheaded getting one promoted, consider mentioning this, just be aware that it will give your employer a reason to look at your entire Wikipedia history, so this could work in your favor or against you. What other people have said about open-source projects is good, but this also carries over to writing how-tos, explaining things to other programmers or to users, and generally anything that lets you shine as a person and as someone with relevant skills.
Now, having said all of that, don't overdo it. For a college grad, your cover letter should be one page, your resume should be 1 page, maybe two if there is something extraordinary on it, and your initial "portfolio" for programming jobs should be no more than a page or two unless there is something super about it, such as letters of recommendation from industry or other super-heavyweights or a project that won national industry recognition. Recommendations from The President of the United States or the CEO or CIO of a Fortune-50 company won't count against you no matter how many pages they take up. Everything else should go on your web site, not as part of the initial portfolio. For 99% of college grads, the recruiter probably won't spend more than 60 seconds looking at it, if you are lucky, and that's once he's made the decision to even look at it. In today's economy, most won't even get that far even if you hand them to the recruiter in person at a job fair.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
You're totally right, HR people don't know anything when it comes to hiring programmers. I think this is because there's no real way to determine the quality of a programmer by simply interviewing them. One side will tell you to pad your resume with fabulous things like your ability to use Microsoft Word(tm), while the other side care about your "techs". I don't think either side is right. If a man knows how to code, it doesn't really matter what language they use because they'll be up to speed in a week or a month anyway.
It really is awful, if you ask for a low salary for something on your resume, they think you don't know how to code. If you ask for a high salary for your skill, they ask you for your experience(which you have none). Its the state of the union now, no one can get any jobs even though people are skilled. Either go back to school while looking for work, or start a business while looking for work. There is no guarantee you'll ever get a job no matter how much you know.
God spoke to me.
with an Open Source project? For example, KDE has a "bugsquad" and seek those interested in contributing. At least do that you can make a presence for yourself which may/or not lead to something. http://techbase.kde.org/Contribute/Bugsquad
My karma is not a Chameleon.
It's who you know.
The *best* way to get an entry-level job is have a friend on the inside that can recommend you for an opening.
The *best* way to get an executive-level job is to have an uncle on the inside that needs a yes man. Ask your parents why they're not looking out for you!
Good luck kid, and feel free to drop my name during an interview. Chances are they've heard from me.
You're leaving school and entering the real world. Being "able to program" in school and able to program in the real world are two completely different things. You don't know shit about shit right now. Colleget gives you a few basic tools and shows that you can get in-depth on a subject...in terms of what you can actually do for a company it's more or less meaningless.
You're also getting out of college and entering the job market during one of the worst economic downturns in recent history. Get used to applying for jobs and hearing nothing back. There are people with far more programming experience as well as just general work experience (the value of which you have probably not realized yet) who are getting the same replies...or lack of replies...from these companies. There are probably people with experience applying for the same entry level jobs you are because they are desperate. That's bad news for you.
Long story short: get used to getting nothing back. The problem isn't that the evil HR people are a barrier to you showing these companies how useful you could be to them, its that you have no experience at all and you're not worth hiring. Do anything you can to get noticed...apply online, send paper resumes, make sure you have a great cover letter, follow up with a phone call. If your communication skills are poor, you better get someone to help you with that. Your resume and cover letter should be ABSOLUTELY perfect...grammatically perfect, perfect formatting, and specifically targeted to each job you apply to. Persistence is your only weapon right now. If you have co-op/internship experience then that's great. If not, you're up against thousands of people who do have it. Remember, in times like this recruiters and HR people have a MASSIVE flood of resumes coming in. More than you can imagine. What makes yours so special? What makes you stand out from all those others? If the answer is nothing, better get used to flipping burgers until things get better.
If you're getting interviews with HR and then not getting callbacks, it might be time to brush up on your interviewing skills. In a job market like this NOTHING can be taken for granted. Remember that you are up against hundreds and hundreds of others for every single job. How well does that suit fit?
The winning strategy in the short term may be to take any damn job you can get...especially if its in the computer industry...no matter how shitty it may be.
Sorry to be so gloom and doom, but I'm just telling you the truth. I was out for a year when the tech bubble burst in 2001 so I have been there. I was a year out of school (i.e. I was cheap) with a year of experience that not many college grads would have, as well as co-op experience, and I couldn't get hired to save my life. My one final word of advice is not to believe ANYTHING a third party recruiter tells you. Confirm everything they say with the company directly before agreeing to anything. Those recruiters are sleazeballs of the worst kind and will lie to your face. Be very careful dealing with them.
Step 1: Have 2 years of experience...
UTF-8: There and Back Again
In this quickly changing world, the average career lasts about 6 years before a change to something completely different.You can check that info out if you don't believe it.
I m'self have worked several jobs in categories completely unrelated to my aspirations.Then a few years ago I realized I had learned enough to go into business for myself in my unrelated avocation. I have spent years building up to beginning my own business, tooling up, self educating, doing independent small related contractual jobs. Soon I will be out on my own doing what I want to do full time. I won't need a bank loan, investors,employees(at first) or anything from anyone else.
As you struggle to pay off your school loan, whether in your first programming job or a "get by till I find what I want job", consider a meta picture of life and your hopes and dreams from it. Will programming in a quickly changing fickle market be your goal or just a piece of your puzzle?
It used to be important to only choose a career, go to college and then spend your life clawing your way to the top of your choice.That was your grandfathers world. Now making goals 20 yrs. into the future is barely enough. Careers change faster than clothing styles. Look for that big picture of what you want out of life and consider programming a step whether you end up in a cubicle or not. Look at the job market. What's big out there? Medical related jobs take up most of the job boards I can see. I'd start looking in that area. Everything there is software and databases nowadays. Insurance and real estate are big now as well. Think laterally rather than linearly, the most obvious paths are usually crowded dead ends.
*Repent!Quit Your Job!Slack Off!The World Ends Tomorrow and You May Die!
The job market is shit right now. People with lots of very valuable experience are having great difficulty getting a foot in the door.
Do you know people who work for companies that are hiring? Recommendations from employees put you in a totally different (and much shorter) stack on the HR desk than unsolicited resumes. That's not because of rampant corruption, but rather the very real fact that no sane hiring process can come close to evaluating how effectively a software developer will work as well as actually working with the person, be it in industry or school. Work those contacts.
There's no failure quite as dissatisfying as a complete and total solution to the wrong problem.
The I.T. profession welcomes you in the customary way. Thank you for submitting your article to Slashdot. It will not further your career, but at least it confirms you as an official entrant into the profession. Unfortunately your qualifications do not meet our needs at this time. Your application will be kept on file for a predetermined specified duration, and during that time, if any positions arise for which you are qualified, you will be contacted. We wish you the best of luck in your future endeavours. Sincerely, the management.
Now go piss off and don't bother us again, you unqualified little letch!
Get a Java *Developer* certification, learn everything you can about Java, JSP, Javascript/AJAX, HTML, XML, SQL, Eclipse, Netbeans, Spring, Hibernate, and OOD/Design Patterns, then apply for contracting positions with recruiting firms in the major cities. You'll land a $50+ per hour gig in no time if you interview well and actually know your stuff. The Washington DC / Northern Virginia area is a hotbed for Java talent, also Charlotte or Raleigh NC, and of course LA or San Francisco. All of these are good places to live and to get a start as a professional programmer. Keep in mind that HR people are completely clueless about technology so their screening is generally canned or provided by technical management (who's also generally clueless about technology). When you get far enough into the process to go through a "tech screen", you MUST know your stuff well enough to either answer the questions correctly or explain that you know a little about the subject but aren't familiar with the details, though "you'd like to learn". Don't even try to get a programming job if you can't answer questions like "what is an interface?", or "what is the difference between the heap and the stack?", or "when would you use a flyweight and why?".
You aren't missing anything. The problem is HR. The people actually hiring don't evaluate resumes at companies of any size. They send a position summary to HR, who handle that. When you submit a resume, it goes to HR. HR then scans your resume for the keywords from the position summary. If your resume doesn't contain exactly the right keywords (which you don't know), then HR bins your resume and the people who know what to look for never even see it. Meanwhile the scam artists (whether the candidate themselves or the recruiter submitting their resume) know exactly how to put the right keywords in, so what does go through to the hiring manager is the people who aren't qualified. Which leaves both hiring managers and candidates griping.
Yes, I've been through this from the hiring side. After one particularly fruitless batch I got permission from my manager to go twist HR's arms until they coughed up the rejected resumes. And lo and behold, we found 5 interviewable candidates from the batch HR said weren't qualified. My manager was, needless to say, Not Amused, and made his lack of amusement felt.
get a phone number and a name for the person in charge of hiring for the position you are applying for and call them within 1-2 weeks of applying if they have not contacted you by phone in that time. You are entry level without experience, so a way to get yourself considered is to show that you are willing to put forth the extra effort to get noticed and hired.
If you do do this, make sure you can show enthusiasm for the job and company you are applying for. HR is more likely to consider someone they can tell is going to put forth the effort to learn and do the job well than just another qualified person applying for the job.
After careful consideration of your application and CV, we regret to inform that you have not been successful this time.
Your details have been stored in our database and we will get back to you if any job opportunities arise.
We wish you all the very best for your future and career.
Kind regards,
A wide range of HR team of various companies.
I swear these c*cks*ckers shred your resume as soon as they can when they find out you can't dance the Charleston.
Donald Knuth couldn't get a job nowadays cause he too old and Nicolas Wirth couldn't either because "he talks funny."
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
I have come to the conclusion that finding a way past HR is part of the aptitude test. You need to have someone on the inside that will give your resume to the guy that needs you. He will then take your resume to HR and say 'hire this guy'. So, it all boils down to 'networking' and with that I don't mean Facebook...
Excuse me, but please get off my Pennisetum Clandestinum, eh!
The solution is quite obviously a hash lookup, but you would be surprised how few "programmers" come up with that.
My company is hiring now, and it's very difficult to find anyone who can program (in Edmonton, Canada - I'm the programming manager, and as part of that I evaluate applicants programming skills).
There may be places where there's a glut of good experienced programmers, but it certainly isn't universal.
And if I have any complaint it certainly has nothing to do with "an education that is out of date". I'm not interested in what technologies, techniques, or methodologies a candidate is familiar with. I can help someone pick that stuff up, and there's no way to know everything an employer might need. I just want someone who can do basic problem solving and can work through the basic logic of programming - stuff that has never changed.
Let's not stir that bag of worms...
The best advice I got while I was still in school was to apply for internships. I applied for several, and ended up doing 2 summers at a National Lab... which led to a year as a subcontractor while I finished school... which led to a full time position as a software developer a couple months after I graduated.
It's not necessarily too late to apply for internships either. Check out the SULI program through the Office of Science: http://www.scied.science.doe.gov/scied/sci_ed.htm
If you check out the SULI FAQ, you'll see that you can apply as a graduating senior. You will need a few letters of recommendation... and you can apply for spring, summer, or fall term. There are always people looking for good students where I work... and good students often turn into good employees.
A lot of good advice from what I can see! I have interviewed with my old internship's company for a business analyst position. It's hardly involves any coding of substance, but from what I can see from the comments relating to the job market, I may have no choice. Big thanks to the person who pointed out the April 26 eligibility date for Google's Summer of Code and the Open Source suggestions in general. Lastly, thanks to the rest of slashdot for giving me your time and advice. It's obvious that I won't be able to land my ideal job right away, so I'll just get my name out there and earn experience. P.S. The html link comment was a joke so don't get too riled up.
A lot of these suggestions are great (although some are a bit cruel), but why isn't grad school mentioned? You might have saved a decent chunk of money going to a small rural school, and it's understandable, but there's a reason why other people pay more to go to bigger name schools. Why not try and go to a masters program in a bigger name school that has job fairs if you can't find internships/jobs? Plus you can still build a portfolio working on open source software while getting your masters. Sure it'll cost you a good chunk of money, but if you actually are a talented computer scientist, it'll pay off in the long run. Also, besides summer of code I'm pretty sure there are other programming/computer science competitions that you can participate in. And finally, make sure you ask your professors and deans for advice. Seems obvious, but a lot of people I know don't do either or don't go to their professors. Some of them probably won't be of any use, but it only takes one good connection to get you that first job.
The original poster seems to be missing a fundamental aspect of the way organizations hire people.
Organizations do not actively examine all of the resumes that cross their desk, then cherry pick the particularly impressive ones.
At most times, an organization is not hiring, and they do not look at resumes at all. Every once in a while, an organization will decide that it needs more people. Getting approval to hire someone is difficult. (At the organization I work for (which has about 2000 employees), five layers of approval, including the CEO, are needed.) Once the decision to hire someone is made, the team that is hiring has what is known as an "Open Req" (Short for requisition, perhaps?)
Most organizations don't even begin looking at resumes or interviewing until there is an open req. Once there is an open req, the process speeds up signficantly. Most organizations tinker with their budgets every quarter, and what is the easiest item to remove from a budget? An open req. Because of this, most hiring managers are in a great hurry to make an offer before the req gets cancelled. They interview every reasonable candidate they can get their hands on before the end of the quarter, and hire the best of the lot.
The point is, if you aren't getting interviews, it is because either you are applying to companies that aren't hiring, or your resume is simply terrible. (If you are getting interviews but not offers, then you have different issues...)
I recommend the following:
1) Look at job postings on dice.com and craigslist. Companies post there because they are actively hiring. Submit your resume to anything that requires less than 3 years of experience.
2) Post your resume on dice.com. No employers look there, but recruiters do.
http://xkcd.com/756//
Because the person hiring you doesn't know shit from shit.
I scream. You scream. I assume that means we're both acquainted with the problem. We proceed.
I recently went through the same thing. The big thing is not to get discouraged. You're going to put out a ton of resumes and not hear anything. Consider that if you're replying to monster or even craigslist ads that they're typically looking at over 100 resumes for a single position. Consider also that the economy sucks and there are many people with YEARS of experience apply for the same "entry-level position". Given those conditions if your resume has the smallest tarnish on it the HR monster will toss it in the trash, it's unfortunate, but they can be that picky right now. Keep at it, don't get discouraged.
1. Network. Use your family, friends, people you've had classes with, people you've met at conferences, your neighbors, the people you play online games with, whoever you can think of to ask that is in the field. If you can hear about and apply to a position before a company posts it publicly, you just drastically reduced the amount of competition you'll have for that spot, plus hopefully have an insider recommendation.
2. Do whatever you can to bolster your resume/portfolio. While you're in school you can typically find a professor or department that needs some programming or IT work and will pay you for it (albeit in beans). After school, you can work on side projects or take an internship while you're looking for a job. OSS, develop some code for something in your community (church, school, NPO, whatever)...you won't get paid but it will give you something that's in production that you can brag about.
3. Look for small companies. Maybe it's not where you want to end up long term, but when you're just starting out you need to get a couple years of experience. Find small companies that post job openings on their website but not on monster, dice, etc. It can be tedious doing the research but you can dig up all sorts of public records regarding companies in a state who employ whatever profession you're interested in. Then go to those companies' websites and see if they're hiring.
4. Make sure you're familiar with version control software like CVS or SVN, whatever IDE is applicable to the languages you're familiar with, and build tools such as ant and make. Your school may not have taught you about them or required you to use these tools. When you get a job you're almost certainly going to be working with a team of programmers in some sort of standardized development process using these tools...you WILL be asked about them in your interview.
I was released from the army with 3 years of development and team leadership under my belt, but it was still not enough for most of the big companies since it isn't exactly experience in the industry.
By chance I managed to find a small (and now very successful) startup which were actually looking for a developer with a clean slate that doesn't have necessarily much knowledge, but has potential to be a good developer; so that they could help him and build him up the proper way.
Guess who nailed the position and is now super happy in his modest, yet uber-satisfying job :D
It is the universe that makes fun of us all.
When I started out, nobody was interested in interviewing or hiring me, either. After starting my own business writing software, however, this ceased to be a problem.
If you just got out of school you probably can't program very well, unless you did a lot of programming on your own as a hobby. So get a computer if you don't already have one, and program. Write a game. Write a schedule manager. Hack around with network programming. If you can afford it, buy a micro-controller board and parts and build a robot. Program in C and C++, not just scripting languages or dumbed down garbage-collected languages that are designed to make dumb people barely productive. If you can write a couple thousand lines of C that works, you can write anything in Python or Java, but the converse is _not_ true. If you actually can program, and you apply for jobs where there are technical interviews, sooner or later you'll get a job.
The only way you learn to program well is to program a lot, and not hate it. If you hate it, find something else to do, please, for your sake and ours.
Unfortunately, schools are too busy teaching theory and breadth to make sure their grads can actually program on their own. And they're dumbing down the curricula by teaching programming using scripting languages and frameworks, so you don't learn to actually solve problems yourself. Computer Science is now just another liberal arts degree. Your ability to construct functional nontrivial programs is almost completely uncorrelated with your possession of a CS degree. I had a Yale MSCS working for me once who could not write a 20 line C program with a gun to her head - I kid you not (okay, I didn't actually try the gun, stupid HR policies...). Poor girl was an H1B and when they did the big layoff she had 10 days to find a job or leave the country. I have no idea WTF they taught her in the Master's program at Yale. Maybe there were a lot of classes with group projects, and she was always the one whose crummy work got redone and discarded by the one person who got the project working so s/he wouldn't flunk the class (man am I glad I got school over with). Group projects save the prof work on grading, but completely nullify the filtering and signaling functions which school is supposed to fulfill, along with teaching (filtering - weed out people who just can't do the work at all, and signaling - tell the student s/he needs to work harder or switch majors).
In short, figure out if you actually like programming, and if so, do a lot of it, in difficult languages (C, assembly). If you master the hard stuff, employment will mostly take care of itself. In the meantime, get a job in IT or something and do as much programming/scripting as you can on your own initiative to get noticed (but maybe wait until you have more programming experience so you don't get labelled badly). It's a suck job market out there right now.
If you have an inside recommendation from a fellow programmer you are ahead in the game. One way to get to hang around working programmers is to contribute to Linux and open source projects. Many of the people involved are well paid programmers and if they see your abilities and know you are looking you can hook up with their employer. Even after getting a job it pays to keep contributing to the Linux community as your contacts can grow and be kept current.
Argh!!!
I found a bug in 'gmcs' when I whipped up a quick 'n dirty version of my solution to the parent's problem in C#.
Someone please verify and report it if you can duplicate it and agree it's a bug.
The following produces a bug on gmcs 2.4.2.3 on 2.6.31-20-generic #58-Ubuntu SMP Fri Mar 12 05:23:09 UTC 2010 i686 GNU/Linux:
The bug is a stacktrace in the compiler:
Of course you can work around it by typing using StringDict = Dictionary<string, List<string>>;, but means you have to use new List() instead of new StringList(). :(
I'm reasonably sure I've done this in the MS compiler, so even if the spec says otherwise bug-for-bug compatibility means this is a bug against the de-facto-standard.
It is so easy to sue if you are disabled and not hired that you may have a better shot than other people if you express yourself as disappointed that they won't hire disabled workers. And if the work place is upstairs and you can not climb stairs you already have them cold.
Well thats a nice waste of resources...
Your initial vetting should only have left you with 10 people tops, after that, initial interview should have narrowed your list to a maximum of 5.
Second interview you can drill your hearts out, personally I spent 15-20 minuttes drilling to get my bearings and when I found my candidate he got another 30 minuttes worth of drilling to make sure I was right - and if you don't find anyone on round two, you invite a new batch from the initial set.
You already know people connected to the industry -- talk to them! Ask your profs if they know anybody in the industry. Ask your jobful friends to pass your resume along. Is there a famous prof at your uni? Did you take a class with them? Bring your chutzpah to their office and ask for a rec.
A referral from a trusted third party is thousands of times more likely to get your foot in the door than your resume, no matter how bloody sparkly the thing is.
Case in point, I graduated summa cum laude from an Ivy school, and no one really gave much of a shit. Until I knocked on my algo prof's door once during his office hours, asked him whether he knew someone in industry looking for a smart hard-working youngster. He gave me the name of his contact (the CEO of a tiny co). (I didn't even do that well in the Prof's class, slightly below median IIRC.)
Next thing I know the CEO's shaking my hand congratulating me on my new 50%-pay job. He's telling me "boy have you ever got a lot to learn, but Prof so-n-so says you're smart and you do seem to come off that way". Worked my arse off til it turned into a real job. And now there are *2* people out there who think I'm smart, so, you know, twice the network :)
If you don't have a network, make one. Think about doing an unpaid internship at a company that has a future. (Look into funding options from your uni for this kind of stuff.) Be careful with this one -- the network you create here must be valuable to justify the work and the resume gap.
I had the privilege once to speak with the former-CFO of Coke, and asked her (rather lamely) how one winds up being the CFO of Coke. She said, "If you really want a big-time job you gotta be aggressive and you gotta be charming."
Note that "qualified" is not a part of that sentence.
I can program!
Broken thinking. Getting hired isn't about being good at the job. It's about being good at getting hired, which is a largely orthogonal skill set.
Need new skill set = need to practice. Interviews are like first dates: they pretty much all suck, but get less nerve-wrecking with practice.
I should mention that once you have job 1, the network it creates (or doesn't create) will bear heavily on how your search for job 2 goes. So take good care of your network at job 1. I've seen a ton of smart people with amazing resumes, who are actually quite good programmers, who can't find jobs because they are huge pains in the ass. The days of the cranky-bitch-genius-programmer are limited (if not completely over), because there are plenty of pleasant-genius-programmers out there who need jobs too.
Approach your job like a pro: learn the politics and the people, be friendly, be polite but not stodgy. Choose very carefully which personal details to share with which people. Never express a negative emotion unless you've thought about it extremely thoroughly. Never write an email to/from a work account that you wouldn't want the CEO to read. Get people to like you: morally it shouldn't matter, but practically it makes a gigantic difference to how your career will go.
Finally and of course most importantly, work your ass off and get results. Nothing will make boss-man like you more than if you are generating two times the output as everyone else, with a smile and a joke handy at lunch time. It makes him look fabulous to his boss, and ten years from now when he's working at google (or whatever the "google" of 2020 will be, probably "google"), guess where you can ship an email and probably get a job.
Uh. To clarify: I meant to put new List<string>() rather than new List(), but slashcode ate the <string> because I forgot to use the < and > entities.
The comments in that article were fun, especially the bit about 123456789 and adding nothing, +, or * operands between numbers to equal 2001. Good thing I thought you could subtract, or I would've gone nuts wondering why mine didn't work before seeing he really meant 2002.
Timothy probably does underestimate what he doesn't know. And his homepage is not what he wants potential employers to see. Enough people have jumped on him for this.
What no one seems to have mentioned - that the author refers to - is that 90% of so-called programmers are, in fact, not very good. It will be a shame when all IDEs automatically generate getters and setters, because there are a lot of programmers out there who really shouldn't be allowed to do anything much more difficult than that.
Maybe - hopefully - Timothy is one of the 10% who will be really good, once he gets some experience under his belt...
Enjoy life! This is not a dress rehearsal.
As a senior level developer that has in the past worked at major software firms on key projects, I often tend to find myself a bit annoyed when encountering a coding test. It has an unfortunate effect of tipping the negotiating scales in favor of the employer before an interview even happens. However for entry level positions, they are HIGHLY useful.
I regularly mentor "The New Guy", a guy who just finished a masters or Ph.D. in signal processing, mathematics, computer science, etc... and more often than not, they can't code anything more complex than a 50 line simulation which is barely readable. Of course, these are really bright guys and can be pushed gently in the right direction very easily, so I take the opportunity to get them started as quickly as possible, after all, the faster they learn, the more work I can send in their direction.
I applied for a position at Skype a few years back and everything went well up until they sent me a "coding test" which consisted of making a simple HTTP server which would handle database requests using the PostgreSQL API. It was a fun project, but most importantly, it said "we know you've been programming for 15 years as lead developer on major projects. But can you code?" Initially I was a bit annoyed by this and I decided not to bother with the position as I don't like negotiating terms of employment with an employer who takes the upper hand so early. But, for entry level positions this opportunity could really open up a great deal of positions to guys who CAN program but don't know how to get their foot in the door.
Because of this, when we're looking for new people for entry level positions, I recommend we provide a similar test. Something that can be accomplished in 1000 lines or less (an evening coding) and shows that the applicant has the skills necessary. Then when we call the guy in for an interview, we can tell them before we've even started that his abilities are NOT in question and we are interested in him/her. Therefore when it comes to negotiating salary and such, they have can feel confident asking for thing and can actually get their needs taken care of without accepting the first offer we make fearing we'll toss him/her out since they're unproven. It becomes an issue of personality and office compatibility instead and sometimes we might feel the candidate is just "so promising" that we're willing to try anyway.
For a countervailing data point, I have a pile of pointless certifications and it has not helped me much. I started by getting certified in Windows NT and Linux administration because the zeitgeist was that either cert was a guaranteed career path and I honestly wanted to know both. (I would have had three certs but they canceled the Netware program.) The certs probably did help me get the non-paying volunteer GIS/DBA job that I had for the next three years, but that was not exactly the pace of career advancement that I was hoping for.
Then I got the "Microcomputer Systems Specialist" certificate which is supposed to be so prestigious that the government will hire you right on as a full timer in a journeyman position. The coursework seemed to me to have only basic entry level IT skills, and no employers including the government ever seemed to care about the certificate. Then I took certificate courses in SQL (Oracle) and Cisco administration. This filled deficiencies in my skill set but did not get me a job.
Then the school started up a bunch of web development certificate tracks that only differed in one focus course. I had already taken most of the focus and core courses, so I took the two new core courses and picked up four web development certificates. Nobody cares. The reality of "web development" job offerings is that they really want a graphic artist, and any knowledge of what the computers do to make a web page display in a browser is only useful to the extent that you can use that knowledge make it look pretty.
Several interviews went sour immediately after the employer mentioned that I would be expected to answer questions about using Microsoft Word and Excel, and since I was more familiar with vi and piping CSV files through sed regexes and shell utilities, I had to admit that the company's other employees who have experience using the software would have more knowledge of both products than me. I rounded out my education by taking classes in Microsoft Office. Finally, twelve certificates later, I had enough certificatude to land myself a paying job... at the school... as a lab aide, wiping down the monitors.
So that's what the certificates have gotten me, but my experiences are so different from common expectations in so many different situations that my friends call me an anomaly. The certifications are even more pointless than usual since they are offered by the school and not industry, so no one who does not know the school's reputation should care. My favourite is the "Networking with A+" certificate which mixes the pointlessness with inadequate coursework, clumsy naming that should disgust reviewers, and a capstone of trademark infringement.
So that's my story. I'll be looking for work in the summer so if anyone in Marin or Sonoma counties in California is interested in hiring an entry-level programmer with ten years of inexperience who can also do IT, or an entry level IT guy who can also program, please drop a link to your company's contact page in a reply.
And after writing all that, it's slightly amusing that the handle I use around here is...
- Perpetual Newbie (posting as AC because I still haven't made an account)
I am of the ones that also believe higher education is completly useless when it comes to computer sciences.
Programming is a science that requires no physical tools besides a computer. Allowing anyone to be able to learn it, regardless of they are in school or not.
I am the owner of a software development company and we have had to hire quite some developers. I must say the best developers we've hired were the ones with no [relevant] degree(s).
But why is that? I believe its because programmers who are self taught have already proved to me that they are passionate about what they do.
No one would spend hours of their free time learning something they don't like.
I have started writing software way before I ever my first programming class, I have done half of a bachelor (4 year) degree and dropped out because I got bored out of my mind and realised almost everyone in that degree would never become a real developer.
Since then I have only had more than amazing jobs, and now am the owner of my own business.
It has been said by previous commenters and I will say it again:
THERE IS NO EASY ROAD!!
You cant just expect to sit in class for hours and that will be all you need to get a job and live the rest of your life. If you want something you must go and get it, do everything you can to get it.
T
Laws are horrible moral guides, moral guides make even worse laws.
Write a mobile app for a popular platform, or several and include free promo codes to prospecive employers.
Well, we (Mexicans) don't exactly have all your jobs, but mainly Chinese and Indian programmers.
Don't just take any job? Do you realize how many college graduates who spent a lot of money on their degrees he's up against right now? And how few jobs there are?
Indeed from what I've read and heard there are VERY few entry programming jobs in the USA, specially for big companies. This mainly due to the jobs being shipped overseas.
So either you get into a job which includes programming tasks in a small company (for example, back when I graduated from college a friend was working in a family run nuts&bolts seller, where he had the chance to develop and maintain a point of sell software. ).
Ubuntu is an African word meaning 'I can't configure Debian'
Try a few simple strategies:
Above all, good luck.
Read "What Color Is Your Parachute?" by Richard Nelson Bolles.
Basically, you are probably not going to have much luck sending out hundreds of applications. If, however, you figure out exactly what you sort of work you want to do, and then talk to people who are doing that work, you might be able to make contact with someone who is in a position to create a job for you. If you happen to see a particular advertisement that fits you very well, contact the technical person to ask intelligent questions about the work. Do your research; don't waste their time with stupid questions.
You need to understand the role of HR dept.
They want to make sure you'll fit into the team/company/environment/bull****
People are right that sometimes the HR Dept. job is to ensure nobody gets hired because the funding isn't there but they don't want to act like that is the case.
You need to read up on bull****ing HR departments. Loads of documentation on this and make sure you dress the part. Use formal language no matter stupid it seems as HR Dept. will differentiate based on that crap too. You have to give them no reason whatsoever to not hire you because otherwise they will. It is too hard to get rid of an employee once hired for them to take chances on who they hire or at least it is here with our labor laws.
I don't know about unpaid internships. In, Ireland we don't have that crap. I got paid to do student work experience when I was in 3rd year even and straight out of college. Ok it wasn't great pay but it was enough to pay rent and go out, oh and eat :D
Unpaid internships are a bit of a rip off IMO but they are starting to turn up here. I know your useless when you start at a company but they should at least give you enough to live on during training period. You can't live on air after all. I can see why they are doing it. In Ireland the state is starting a train on the dole scheme where you get unemployment benefit while they train you and then they don't have to pay you.
Some people will say screw that or let them get loans but I disagree with getting people into massive debt to get educated. I prefer the everyone pays tax and when you get out you pay tax method as it is basically the same system but with tax and pay after.
1. Take any job you can get to get started. As soon as you land a job, ANY job, the clock starts ticking on your experience.
2. Work like mad and try to learn for the rest of your life.
3. Use recruiters to get jobs, and then once you have experience under your belt, start being more selective with recruiters.
4. Social network like crazy. Maintain relationships. Be great to work with and people will remember.
5. Be willing to do crap work.
6. Be willing to listen.
7. Understand that no matter how good you think your code is, three years from now it will look like junk.
I was a manager for a retail chain while going to school at the same time. My first 'computer' job came while still in school, using Photoshop to edit scanned images. It was crap work and the money wasn't much different than my manager job. Over a decade later I make six figures and get job offers weekly.
If you happen to live in Holland a are PHP developer, then contact me.
But I have some advice to anyone coming to a job interview with me. I am the senior developer and will be the one asking technical questions. And I expect you to know the basics of web development.
That is, you know what a join is and can explain it. You know some techinques that help with loading sites quicker. You can tell me how you debug your code and what tools you use for it. You can tell me the REAL reason to use OO. No, code re-use is not the answer.
What I have noticed is that a lot of web developers seem to lack what I think is basic knowledge, yet ask high salaries. Sorry, no thanks.
For me a junior should show a grasp of the basic skills you need as a web developer (or whatever your field happens to be). You do not need to know everything, but if you can't handle even the basics of SQL, well then just what did you learn in school?
Also, bring a sample of your work and make sure it is CLEAN. Errors you can learn to fix, but if you are a sloppy insecure coder, then I am not sure I am going to bother training you.
What I want to know from an interviewee is that you have potential to grow, that you can be productive for the right price (if you take twice as long to do something as me, but earn 2/3 the salary, then you are a LOT more expensive), and that I won't constantly be correcting the same mistakes.
So far it is proving very hard to find people who qualify. In Holland there is a real shortage of developers who can do more then just throw a site together. But that doesn't help a guy working in the US :/
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
In case you hadn't noticed, there's a recession.
There are hundreds of applicants for every vacancy.
They can always say that another applicant was better qualified, whether he was or not.
My resume gets pre-selected into the circular file on the basis that I might cause other employees health insurance premiums to go up by people without any medical training.
Its easier not to hire me, despite the fact that I am utterly non-contagious and I put no one at risk (if anything they put me at risk.)
Now I'm looking at changing profession.
Hey, the guy who invented the Altair switched and became a doctor and had a happy life.
Don't feel too bad for me. I feel bad for you.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
We live amidst the most devastating capitalist crisis of all time. The economy has come to a halt, and you expect to land a job?
I am suffering with the same problem, i am about to graduate in a month and i have been applying for many jobs but could not get any positive response. I realized that there is something wrong with my resume. Throughout my career, i have been in the university alone doing internships also in the university. May be not having experience in working with companies for internships is also a drawback...
Lots of solid replies here, but yours provides the half of the problem I want to reply to.
There may be a way out, but it probably involves parts of about 5 posts on here.
1. Post above said Austin was starved for applicants. Submitter should then verify this and if true, move to Austin!
2. "Bypass HR" - but just calling the manager directly *pisses off HR*! You wouldn't like HR when they're angry.
3. Temp Agencies DO bypass HR! The manager calls in the temp, not HR, so he can cobble a few ultra-short little assignments. And you know what? Temp work tends to be easier, which I found as the perfect chance to shake off the Ivory Tower dust from college. Then in 6 months, he can fairly say experience > 0.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
I'm an employer, I'd hire you in a heartbeat if:
1) You not only can program, but you're smart enough to be able to program in any language. Good programmers can program well in any language, given time, and our environment is pretty flexible.
2) You are capable of developing software, not just writing code. For example, I don't care if you can write a bunch of sorting algorithms in your sleep - understanding the needs of commercial development is VERY important.
3) You are willing to work for a globally competitive salary.
I'm sure (3) will get a lot of people upset here, but the world is a pretty small place with the technology we have access to. If I can hire an experienced developer in Poland to work for $35k a year, it's hard to justify hiring an inexperienced developer in the US for $50k a year. Clearly there's more difficulty in managing someone overseas, but you're crazy if you don't think that a foreign programmer isn't worth the bother. I run a business, not a charity.
* Right now there are jobs for low skill levels and high skill levels. In the middle is tough.
* Review your resume. This is what they will look at before deciding to interview you. Ask friends to read it and critique it. Read web sites about effective resume writing.
* Work on open source side projects that interest you (and look good on a resume). You will gain experience and have something to show you aren't afraid of work and are interested in your profession. If you're off playing a game with a ball, wasting time on WOW, etc. you're doing nothing that will help your career.
* writing to slashdot was a good idea
-- Programming with boost is like building a house with lego. It's a cool but I wouldn't want to live in it
Greetings,
I hire at many levels, without using a recruiting or scouting agency, from entry-level coders to senior software engineers. Here are some tips for getting yourself hired to my entry-level position:
* bring some code with you
* work in open source and be ready to point it out to me
* know your language well
* bring stories about your ability to learn quickly, do what you're told (in the sense of being given a spec and fulfilling it), and think for yourself
* have a good GPA. (I have this one last on purpose. It's not a deal-breaker, but might be a deal-maker)
As it's probably been said already, the easiest way to get employed practically anywhere is by networking. This, of course, is much easier to do if you live in a larger city where business networking events happen more frequently. This actually works better than most other methods because you build rapport with people you might eventually work for, which, in turn, makes it easier to prove your skills and find a good place to be.
You can also try joining mailing lists. One list that I'm on, which is supposed to discuss C++ development and such, has been practically posting SOLELY job offers, all of which are pretty highly salaried. (The last posting I saw advertised a position that paid $200K/year in NYC for a senior C++ development position.) http://www.meetup.com/ makes it easy to find such lists, though you can also find similar lists on open-source projects you find interesting.
Yet another way to look for jobs is by joining forums that interest you. There are tons of forums that discuss programming, many of which are separated by language. Proving your salt on a forum and gaining some credibility can make it easier for you to find jobs, though they come by less often in my past experience.
If you must play the online resume game, play with the keywords, as most online resume systems filter solely by that criterion. I believe that is a reason why so many applicants who call themselves developers even get through the door; online resume submission is a fairly simple system to defeat once you play with them enough.
The last alternative that you can consider is using a headhunter to find a job for you. They usually tweak your resume to make it attractive, and use their network of contacts to get you interviews. I've met a few headhunters from events, and they spend a substantial amount of time just meeting people expressly for this purpose.
Hope this helps!
6. Pure luck. Maybe the H.R. at the company is having a seriously off day, or maybe they're one of the really wierd and unusual companies that still has some business practices from 50 years ago and somehow still manages to see apprenticeships or on-the-job training as an investment rather than a burden. So you actually manage to get the job, even if you truely are entry-level material and need to polish your skills and build experience.
5. Outsource yourself. If you are young and healthy and willing to embrace adventure, this is a viable option. As sucky as this option seems, the fact is that all the "good" entry level jobs which would provide relevant experience to your field of study have been outsourced from the U.S. by self-defeating (to the U.S. labor pool) business practices encouraged by MBAs and their HR bretheren. Somehow the idea of training employees has gone from being regarded as an investment to being regarded as an expense that must be eliminated by all means possible. The true entry level work for most technical jobs has been off-shored, so it is necessary to off-shore yourself as well to reasonably access entry-level work. (Entry level jobs posted in the U.S. are entry level in name only. You will not qualify unless you fall into any of the following categories on the list.) Of course be prepared to experience these exciting things in your new quest for employment outside the U.S.: learning difficult languages, strange cultures, unusual cuisines, serious crowding, more exposure to disease, breathing in and drinking lots of pollution, and being treated as a second or third class citizen once they realize you don't have tourist money to spend and give clues that you're not on a vacation.
4. You're really good. Yeah, you're really really good. You have years and years of experience, and know the ins and outs of what you're working with. You honestly could be teaching the stuff you're dealing with, if only you didn't care for the academic B.S. and extra busywork it would entail. You're definitely and obviously not entry level material, but with the economy going the way it is these days - who cares? You need the job right?
3. You're a talented bullshit artist. Not only can you sell freezers to eskimos, but you can even manage to sell ice cubes to them. Who cares if you're lying on the resume and interview, as long as H.R. can buy your flowery excrement - you're golden. Not that you'd ever be a good worker, but as long as you suck up to management and are good at the con-game that doesn't matter either.
2. Connections, connections, connections! All it takes is to have a friend in the company with a good relationship to H.R. or management. Or perhaps a friend that owns a business who's also not worried about money ruining the friendship. If that's not the case, then it takes a friend (or family) in government with some kind of political influence or regulatory oversight of the company you want to get in. They can open doors for you.
1. Behold the power of nepotism! If you have any family that owns an established business or runs a major aspect of such, enjoy the free ride. You can be as craptastic as you want, and even be as bad as to ensure the ruin of the venture years down the road. But hey, you're family! Welcome to the new "royalty" of the modern age. Just make sure to pull that C average or whatever to get the qualifying college degree so daddy doesn't feel too awkward about giving you your reserved spot amongst others that worked for their position. (You can also marry your way in, but in truth it really only applies to good looking females. So that probably rules out 99% of the slashdot audience.)
* Disclaimer: Yes, I am cynical. Yes, I got a college degree. No, I haven't found any steady work in the last 3 years. And yes, there is freelancing - but it really doesn't happen often enough or make enough to even qualify as self-employed on the IRS tax bracket. At least there's some old junk to sell via C.L. or eBay, and most major debts are paid off. And yes, I am tired of doing job searches when a lot of companies act like serious assholes in regards to correspondence and treatment of job applicants.
So I was in the same position as submitter in 2k4, the year with the largest number of CS graduates, and also a year with a bad economy (bubble was finishing up being burst).
It took me 18 months to finally find a job, and to get it, I had to go through a one month Java "training" class with Accenture (Accenture Techonology Solutions actually) where I was paid minimum wage. It sucked, and it was a hard way to figure out that the the promise of $50k+ the day I graduated was a lie. The idea behind the class was, they got to test everyone for a month, see if they could actually code, then hire who they wanted, to do whatever they wanted. Some of the people in my class had to go into testing, which IMO is a career killer, but at least one guy I knew made it out and is a developer now. The thing is, if you do go to a large consulting firm, unless you manage to get to a really good place, I say get some experience, then start talking to a job placement firm, and be willing to take a contract or contract to hire job. The large contracting firms try to make coding like assembly line work, and yeah, it creates a repeatable, deliverable product, but it also creates line workers. Being a line worker is no fun.
Above is the path I took, I'm now almost 5 years in to the industry, and went from a consulting firm, to a placement firm, then was placed a small company where I've been able to create some awesome software and I am fairly compensated. It's really rewarding, but it took time, and I had to eat some crow at the beginning.
We hire people to solve problems. Somebody who owns the problem figures out they need a warm body to solve it. They spec the position and ask HR for a few applicants.
HR does not hire - they reject. For the 5 candidates, they have about 50 to 500 resumes to go through. Thus they look for any reason to reject the resume. When they get down to about 20, they pick the best 10 and submit them to the manager. The manager selects 5 of the 10 that are of interest. The interview process begins. Thus sending resumes nets you a 2% - 0.2% chance. Does this match your experience?
But you can bypass the system. Find the company you want to work for. Learn what they do, and what problems they have. Identify a problem you can solve. Find the manager that owns that problem. Contact them (best in person) and show them that you know the company, the problem, and show how you can solve it. If you nail it, the manager takes you to HR and tells them to hire you.
I kid you not - this has worked for me several times. I never worry about getting a job, no matter how bad the economy is.
Read the book "What color is your Parachute" if you need a step-by-step guide.
Place nail here >+
I'm currently trying to hire an entry-level developer. There a lot of little things that separate school work from on the job work. Pick your favorite language and do a bunch of detailed research on the challenges corporate developers face. Speaking from a Java perspective, how are big projects built (Maven, Ant, Cruise Control, etc.), how are dependencies handled using those tools? How is automated testing handled (JUnit, Selenium, etc.) ? What other libraries are typically used? (Spring, Hibernate, Struts, etc. etc) You don't need to be an expert in all this stuff, but learn the basics and be able to describe what you've done with these tools, what you liked about them, disliked about them, pros and cons etc.
I think even a couple weeks of researching and using these tools would put you well above your peers the next time you go to an interview. In the interview, ask good questions: "How do you handle automated testing?" "Oh, you're using Hibernate, do you use it's query language?" Questions like this can demonstrate you understand (at least to some degree) the tools they are using.
Good luck.
Something the submitter forgets to mention is WHAT he just graduated from. If he just graduated high school, good luck landing an entry level "programming" job. There are too many 3+years experience people flooding the job market right now. I'm working with a mid sized company (6,000 employees) and we haven't hired a green hand in 2 years. If you just graduated from college, do what most intelligent people do and get an internship. It's experience, most of them pay at least more than McDonalds, and it gets your foot in the door.
Just use common sense. There is no way to compete with third world wages.
The few jobs that can not being offshored yet, are being filed with foreign guest workers, which will make the jobs easier to offshore in the near future.
Computing in the cloud will make it even easier to offshore US IT jobs.
Unless you can get top secret clearance, it would be best to forget about IT.
Protip: Try and work for a smaller shop without an HR department. Not only is the atmosphere going to be a lot friendlier, but they'll evaluate you as a person with skills, not a coding slave.
I realize I'm stating the obvious, but I cannot stress enough how much more valuable real-world work experience is than just shiny paperwork (degree, certs, etc). I'd imagine this is why you're not hearing back from folks most of the time you submit a resume for a dev job or complete the initial interview. Getting experience isn't hard. Start your own passion project. Sure you won't be paid for it (unless you manage to come up with something groundbreaking that's in high demand), but the experience and project management skills you pick up along the way are invaluable.
Pretty much all job positions are advertised on Craigslist these days. It's especially true of entry-level. If they're looking for someone who's entry level (i.e. cheap) then why would they be paying for an actual listing?
Maybe you'll miss this as I'm posting anonymous; regardless the rules for getting a job are the same no matter what job you're after.
My experience is HR in any company is not even remotely qualified to screen resumes for qualified applicants. When I got hired in my first job at my current employer, my resume was screened out for months. Fortunately I had a connection in the company who brought my resume to my soon to be boss. My boss told me later that every resume he got from HR wasn't even remotely close to what he was looking for and mine coming across his desk was a miracle to him. HR people know HR; they don't know IT so they'll have a hard time spotting good applicants. Also, my ex worked in HR, and her job was to basically throw out people's resumes that didn't meet basic standards, ie if it didn't look professional or lacked a cover letter, it went in the trash and never saw a recruiter.
You have to leverage who you know and work around HR. Use your professors for possible introductions; likely they know people in local companies who might be interested in you. If you haven't developed a relationship with your professors during your education, well it's never too late but I'd start today. Find out who your friends know and network your way into companies that are owned or employed friends of friends. Relatives are a good place to go too. Most employers look at a combination of factors when hiring: resume (cover letter), recommendations, experience/education, and job interview. I list resume and experience/education separately because if you have a great background but can't write a decent resume, you're screwed. Even if you have good education, no experience, and a good resume, if you have no good recommendations you're screwed. So you need people who are respectable and have good backgrounds to vouch for you, and if you know someone in your target company then the recommendation improves dramatically.
Linkedin I thought was kind of ridiculous until a few months ago when a family member at an executive staffing company told me that her company uses Linkedin FIRST for finding potential applicants, and sometimes excusively. Develop a good network of people you know and respect and develop a good Linkedin profile. It may not help but it certainly can't hurt, and more and more it's starting to grow in importance.
This is a tough market for getting a new job, but the jobs are there. The thing is, an employer is going to find someone who they think is the lowest risk and has the highest motivation. If you have good recommendations from people who are respected, you lower your risk profile. Also, shotgunning resumes out into cyberspace might land you a job, but you should combine that with networking, job fairs, and anything else you cna think of. Also, don't wait for them to call you. Send a resume and call them a week later for a follow up. At the very least you'll get friendly with the receptionist and send your resume a second time; maybe she won't throw it away if she recognizes your name.
Other good tips: research your companies. What projects are they doing? Draft a unique cover letter and tailor it to the company. Show interest in their projects and enthusiasm to be a part of what they do. This research will pay off during the interview as well. Make sure you know enough about the company to have questions about their projects lined up; an excellent interviewing tactic that also raises you above everyone else out there is to be able to ask questions back at the interviewer.
Getting hired is a skill. It takes practice and perserverence. Research what to do and go to the career center at your school, ask for help with interviewing and resume writing. Very few people do this and if you can develop these skills not only will you be in the top 5% of applicants, but it'll pay off 10 years, 20 years, 30 years into your career.
If you're still struggling, go to a temp agency. At the very least if you can get placed in a temp position, it may suck for awhile but A) it's work, B) it's experience for a resume, and C) it's an opportunity to network and develop relationships that could lead to the career of your dreams.
(1) Show me not only your code but your interface. I need to know that you can look at a problem and determine what information you need and that you can present the results in a usable manner. It does not have to look great - that is why we have designers. They will made the info look good.
(2) Explain to me the real world problem that you solved with this code. I do not care that you can move discs from one peg to another in size order. I do care that you figured out that I was spending too much time verifying that the home page on my 15 web servers returned exactly the same code.
(3) Use full sentences. In all communications, be they on paper or in conversation with me. I do not ever want to see an emoticon or "u r" in a business communication.
(4) Turn your cell phone off during the interview. If there is a true potential for an emergency, explain it to me when the interview starts and I will make allowances, but during the interview I expect to have your full attention.
(5) DO NOT come to your interview with me in a suit. I showed up for my last interview in a t-shirt and jeans. I am now putting together a new department at that company. How did I know? I asked ahead of time. "What is the dress code there? Less than business casual? Would it be acceptable for me to dress that way for the interview? Not only acceptable but appreciated, great!"
(6) This is the really important one... Tell me about your home computers, what operating systems you have running, how you use them and what cool projects you experimented with lately. You have a Linux server and just set up a UPnP server to serve your home media? That is fantastic! On that alone I might hire you if the rest is borderline. That proves to me that you not only know how to learn, but you are excited to do so.
Good Luck!
Warren
For me it was easy. I got my degrees in philosophy and psychology. They're much more useful in job interviews that boring old technical information. My technical knowledge came from years of DIY projects, some open source when that became cool, using skills as lame as writing excel and access projects at jobs, taking dozens of classes on my own time for a CS degree that never materialized, etc.
Seriously, the amount of technical information you have, starting out, is pretty moot. There's not a huge difference you can tell from looking at your academic list of knowledge other than a basic skillset. Most grads are the same, unless you just finished your PhD from MIT and hold 12 patents.
Psychological jokes aside, I just focus on pacing, leading, and manipulating the interviewer to wanting to hire me. How long I've been working with what tool or language is irrelevent if I can convince them I can learn anything in two weeks. I don't need to be able to write the greatest data structure in the world if I can convince them of the business reason why you would or wouldn't want one and what the affect is on the bottom line.
Of course, good or bad, none of it matter if you can't even get a technical interview with a human in the first place. I don't know if it was mentioned by others, but I went through contracting companies originally. They do all the work of getting the interview, and I just need to get the suit, tie, 37 pieces of flair, and a winning smile.
After that point, most everything is word of mouth and "social networking" whatever the hell that is. IT seems to luckily constantly churn, so I just keep in touch with those who can give me a job (or recommend me to a boss) and return the favor.
I haven't had to apply or interview for a gig in years that I didn't already have the job going in.
I'm a satanic clam.
I'm at 0, because some moron got offended that I think that the move to all web technologies is laziness on the part of programmers....java is easy, easy is lazy, I still stand by that, and refuse to make a new profile over that statement. (His citing of google's introduction of a way of writing native web apps was a saving grace, but then WTF do we have an OS for? Right native apps, they don't need to be run in a browser).
Ok, having my "Bad Karma" out of the way, I haven't seen anyone really answer your question of how to get an interview, and I'll say I have successfully changed jobs several times, and helped many friends to land interviews and jobs. First thing to understand, most big companies have taken the burdon of matching resumes to positions off the HR department, and onto the "candidate". You need to search their job database, and apply to the jobs you feel you are a good fit for. Not just make a profile, not just submit to 1 job, but all jobs you feel you are qualified for and interested in! I have done some recruiting events for the company I currently work for. On campus, we would not accept resumes. This is because it actually changes your legal status as far as the company is concerned, and makes them subject to many more regulations about being an EOE. Bottom line for submitting to a company directly, apply to as many jobs as you are interested in. Your resume will usually then heads straight to the desk of the hiring manager (not HR). If allowed/prompted, include a brief cover letter, I'll get to that in another section.
The resume: Keep it too the point. You should definitely include an objective. If you have a post-graduate degree, you will want to include your focus area. If you just took some interesting coursework as electives, or your college had some good ones as required coursework, you will want to include that under your education section. I personally used Numerical Analysis, Graphics Algorithms, OS, Digital Circuit Design and Physics. If your GPA is good include it. If not, don't. They will ask for it later, but it might get you in the door for an interview. Including a bad GPA often ensures you will not get an interview. The company I work for now will not bring in an entry level hire without a GPA of 3.3 or better! (Just a note, I graduated with a 3.39 from a large, well known university, but have helped friends with a 2.7 get interviews and jobs) You say this is an entry level job, so you aren't going to have a lot of relevant work experience. Still, if your last job was pretty steady, its good to include it just to show you aren't a job hopper, but if no work experience is relevant, limit it to one job. You will want a Skills section. This is really your keyword section. Include languages, IDE's, programming areas of study (graphics, networking, databases, specific APIs like GTK, QT, Java, MFC, Win32, OO, UML, etc), anything that seems relevant. If this hasn't filled up 1 page, you can also include something line an "Other Interests" section. List some of your hobbies, even irrelevant ones. This can turn off some employers, but of I have found that it either goes ignored as filler, or the hiring manager/interviewer finds a common interest, makes a connection with you, and is more likely to hire you just because they like you. This goes back to the it’s not what you know, but who you know aspect of things. If they like you, you get “the who you know” aspect on your side.
References! The company may never contact the people you put down for references, but they are important none-the-less. Usually they look for 3-5 references. You do NOT want them all to be in the category of college buddies, life long friends, and family. In general, depending on the number of references they ask for, its good to have 1 that is a peer (college buddy in the same major, or past colleague in the same field), one that was someone you worked for, and if possible a customer reference. Given that you are looking for an entry
Show up, clean and quiet with a shirt and a tie. That's your advice to counter 400 posts?
Might as well tell the guy to shine his shoes, while you're at it - everyone knows shoes tell all there is to know about a person.
If you don't mind being military for at least four years, are an American, and don't mind getting payed considerably less than the average programmer, enlist as a programmer for the Air Force. Hell, you can even work on a Master's degree for free while you're in.
Apparently wizard is not a legitimate career path, so I chose programmer instead.
It is difficult to get past the HR doorman indeed - because of "non-programming programmers" (CodingHorror). The answer to that are tools for automated verification of programming skills like Codility (http://codility.com/), which value fundamental coding skills over the school's brand and proficiency in CV writing!
1. Contribute to a free software project which interests you.
This will allow potential employers to verify that you can program before bringing you in for an interview, and hopefully you'll learn something about writing maintainable code so your first paying employer doesn't bear the burden of getting you over those hurdles.
2. Network.
Maybe a local group of geeks gather weekly for beer. Maybe there's an interesting user's group. Meeting people at such groups make access to un-advertised positions or to some one in engineering (not HR) that can be intelligent about who to bring in for interviews.
The best thing you can do is to try to find out a bit about companies you are interested in working for. each time i look for a new position, this is my first step---find out who is in HR, who their boss is, etc and email/call them to gauge their interest. you're basically doing some social engineering here---your goal is to get names and phone numbers of the people who would be interviewing you and/or hiring you. call/email them and politely state what you're looking for and feel them to see if they're interested...don't be pushy whatsoever, or claim that you know more than other people in the field. no one wants to work with a jerk. that linked in site is really good for things like this too---you can find out who works for what company, and see if you can get any sort of info from them about the hierarchy. and i'm sure it's been said previously, but you should definitely look outside your area for work---bigger cities always have openings, and they also have a lot more for temp agencies. my current gig, i actually didn't like my prospects where i was and ended up working through a temp agency in a major city before i was brought on full-time. above all, be patient and don't just blast out template letters with garbage that doesn't relate to the company you want to work for. it always works better when you target a specific company, and try to show them how you can help their business. and definitely be prepared for some "different" interview questions---like my favorite one "logically, how would you program a 50 floor elevator". good luck! it's not the best market out there right now---but as long as you keep looking you'll find something. and you could always hire a headhunter....
... job, and were rejected, just because you could walk and talk?
The world's not fair, these days ...
Find a job you really want, make sure you satisfy requirements, fight for it. Be persistent, sometimes it is not enough to apply once and it may not be enough to apply through their HR. Search linked-in, their directory etc., try to identify and talk to the hiring manager, this is the person who ultimately makes the decision (once in a while our candidates happen to show up at our office to make sure their applications make it to hiring managers). Have a proof of your expertise handy -- open source projects, popular articles, blogs, papers. Certify yourself in programming (brainbench.com, codility.com). Don't get discouraged if you don't get what you want the first time -- there is a large amount of luck in every recruitment. Getting a great job is a tough job.
Over the last twelve years, I've worked in a variety of computing roles, from very early in the support process to "architecture" roles, as well as some software development roles. During that time, I have bemoaned my bad timing as a "late to the game", especially during the dot com bust. But the provided me with a smaller, more diverse set of opportunities that have ultimately led to better perspective and a more attractive resume. I finished the college degree that I started before the bust while I consulted for small businesses. During that time I acted as an 'IT Guy' while also pursuing problem solving opportunities that only a programmer could complete. I'll not trouble you with more, except to give you some bullet-form advice.
- Expect continuous learning, and be willing to do it on your off time.
- Differentiate yourself somehow. While having a perspective on a broad range of topics, be deep in some.
- Look to small-to-medium sized businesses, and don't be afraid of the approach. Play the numbers, 10 might not want you, but the 11th might.
I can't stress this enough. The small and medium sized companies can't always afford services from the Oracles and IBMs of the world. They are stuck buying off-the-shelf solutions that half fit their needs. Your niche, if you choose to take it, is the guy who can provide higher-end solutions for lower-end prices. They can spend 2-10k on you, but the licensing for software alone can eliminate the complex off-the-shelf products. The custom solutions are for your resume, the low-end pay will get you by, and in the long run, you'll have seen the entrepreneurial side of things. Also, understand that these companies are often run by individual owners who can make the decision without a committee or HR department. You play to their own feelings of value-for-the-dollar. Example: a customer of mine needed custom reports that his vendor wouldn't provide him. I reverse-engineered the database and built the reports. Build trust - I said it would take 2 weeks, it took 3. Charge for 2, comp one. I was first pick for the next service.
- Don't expect long-term employment right now, but make try to make the short-term work noteworthy.
- Value certifications, especially the college degree. Shrug off the naysayers. In easy job markets, they don't mean much, but in hard ones, they are what keeps you "in the running" against your competition. Accrue these any way you can.
- Know IP. IPv4, IPv6. Simply being able to subnet puts you in a higher tier. Do it.
- Get an idea of what's ahead. Convergence is a big deal. If you have free time, learn to build apps for iPhone, Android, etc. This is going to be a huge area with lots of opportunity. If you can build these inexpensively, there are companies that will pay for them. "I can build you a working app for $10k" looks like a great deal for many companies.
- Forget the discouraging responses to this thread. The truth is that competent technology folks are NOT everywhere. Be a good one and you'll have no problem, at least in the next economic cycle.
Best of luck!
Go to India. Wait at a bus stop. Some random person from an HR agency will recruit you for XYZMantra Software Solutions. For a pittance and stressful competition, you can have that dream coding/developing job. Indians are great at coding and very poor. Americans are smart. So they outsource. Even the Literature graduates and housewives. I live here so I know. My brother was an SCJP at the age of 11 and interned at Sun Micro at 12. He's now onto a UMich PhD in computer networks. I use coding(C) to predict what is most likely to happen in a manufacturing process before it is physically set up.
There are a lot of job listings in the classifieds who are either recruiters looking to build a resume database, or companies with no intention of hiring.
The first, recruiters, often advertise jobs in very general terms, and often short on specifics. Seldom do they specify the company. Sure, you can send your resume to them, but don't expect a reply anytime soon.
The second are a little harder to determine. Companies will often advertise that they are hiring not because they intend to fill positions, but ecause it gives the vendors the impression that they are growing so fast they can't hire enough people to keep up. Sometimes, they'll use these tactics to justify hiring H1B's instead of native talent. Don't feel about not getting a jobs that doesn't really exist.
Finally, an anecdote. A year after graduating, a friend of mine gets a call from a company. Excellent benefits, salary, etc... So she skips some *really important* family commitments to go to the interview, and what happens? She's huddled into a room with a bunch of other "candidates" and given a sales presentation. The job had nothing to do with either IS or IS management.
Officially, one of every 8 workers is unemployed in my state. That's not counting the ones who retired, no longer qualify for benefits, or just took a job flipping burgers. The economy is _really_ bad, and its no exaggeration to say it's the worst recession since the Great Depression. If you can swing it, now is the time to stay in school. You aren't going to gain any long term advantage by getting an entry level job now.
The society for a thought-free internet welcomes you.