Hacker News new | ask | show | jobs
How programmers should write their resumes (doesnotcompute.biz)
27 points by gsabo 4467 days ago
12 comments

I find these funny. Not helpful to anyone at all, but funny.

Article says: "Sure, you might have implemented a new feature "in less than a month", but why did you start in the first place?"

90% of developers reply with: "Oh dear God, I don't make the decisions. As far as I know, some AE was golfing with some d-bag client/customer who, between jokes about breasts and baseball, mentioned 'Wouldn't it be cool if your product...' and now I've been told to make it happen."

Article says: "Use all that freed-up real estate to describe how you made it better than anyone else could have."

Self-aware developers reply with: "Well, actually, someone else probably could have done a better job. I'm good, but I'm not the guy giving talks and inventing technologies. That guy doesn't need to write a resume. That guy shows up in jeans and a t-shirt and walks away with an offer 3x my salary."

Article says: "what was the impact of your work...in numbers?"

90% of developers reply with: "HAHAHAHAHAHA. You think we kept analytics??? Good one. That's a good one."

Article says: "You resume should be devoid of personality."

I reply with: "Please die in a fire."

Article says: "Answer this: what kind of job are you looking for?"

A confused developer replies with: "But still write my resume in exactly the same way whether I'm applying at a Fortune 100 company or a 5 person start-up?"

It was at this point I stopped reading, so if there's more ridiculousness at the end, well, you have more patience than I do.

I rarely agree with the author of this blog post :

- "Don't bother mentioning your G.P.A." : I know firms are only interested in your diploma's name, but it can be an advantage to mention you passed summa cum laude whereas another barely made it by coasting and offloading his share of works on others students (which is unfortunately a useful skill in the workplace).

- "Don't bother using verbs other than "made" for programming projects." : I completely disagree. Using the exact verb to describe your work show your understanding of the tasks which fell onto you, but also your writing proficiency (which will be reflected in the quality of your comments).

- "Answer this: where can I look at some stuff you built?" Github is a nice place to show-off your skill but not everyone is interested in open-source side-projects, so it's not a silver bullet.

- "Answer this: which languages and databases do you prefer?" Well, if you want to pass the résumes' automatic parser used by the HR dep., you need to stuff your application with keywords anyway.

- "Don't bring up your hobbies." : This one really raised my hair. Not everyone is tweeting every part of their life (I certainly don't) so hobbies are a great way to lighten the mood during the interview and assessing the interviewee's personality.

> Answer this: where can I look at some stuff you built?

You can't, it's closed source proprietary internal stuff. And I'm not allowed to talk too much about it because I had to sign a NDA.

This. And while learning is important, I really am getting tired of the bullshit line about everyone needing open-source side projects (and this is coming from a guy who enjoys side projects). How many other professionals need side projects for legitimization? My mechanical engineering friends build stuff too, but no one's expecting them to bring in a home-made contraption for their interviews.
Fully agree. I wouldn't discount anyone for not having a github project. I have a life outside of work, i enjoy going out and being with friends and family. I spend most of my waking hours during the week at my machine coding, it's not something I want to do at the weekend, and that doesn't make me a bad coder.
Anecdote: A guy who wanted one of our open mechanical/embedded positions came in with something he built and programmed. It was super impressive side work and helped him stand out.

Sadly, when you're competing against the world for many positions, you need every possible advantage.

Either that, or it's code that runs machines that most people haven't even heard of. Not everyone builds web-apps for a living.
I have to second that. When you work in a team of >20 on a closed source enterprise software which is also not public facing - there's little to nothing to show. I can't help but think that only a small fraction of programmers are actually lucky enough to work on some open source projects that make a difference and there's something to show.
There's always something to tell. Even when under NDA, you can link to the company/product you worked on, can't you?

I did on my 'about' page ( http://nickkusters.com/About ) for stuff that was under NDA and I haven't had any comments.

Did you know some of the links at the bottom are spitting out 500's?

But hey that's a lot of interesting stuff you've worked on :)

I don't have NDAs but I have the same kind of problem - lots of things I've done have been internal tools/systems which aren't visible or wouldn't make sense to anyone outside the relevant companies.
I see the same but the job hunt seems to favor OSS. if you can't share code you write at work then the other option I'd to give up free/family time to do some side project you can share.
As a hiring manager, I actually care about your GPA. There is some self-selection with those that have a 3.9+. It means they cared about the topic, they went to class consistently, and they performed well during tests (under pressure).

I'd much rather have the motivated, driven guy who wants to dot his I's and cross his T's than a programmer who thinks that learning big-O notation isn't worth it, that learning software engineering methodology is a waste of time, and operating systems is dumb because all hiring positions want Java programmers.

High GPAs come with certain attitudes built in. It is not the only indicator of success, but when I see anything less than a 3.5 it makes me question the candidate's grit. Is that how you are going to behave when you are given work you don't like, or do not deem is important? We are paying you "A+" salaries, we want A+ work. Not night-before C- "I turned it in" software.

As a non-hiring manager, who has hired 159 software developers and interviewed probably over 1000. I have found high GPA to have negative correlation with success. When I started, I had absolutely no idea how to hire -- so I just kept track of good hires and bad and looked for correlations to help me hire better in the future.

Two biggest things in my personal experience that ended up with amazing hires. Unashamed to admit they don't know something in the interview, treat it as a matter of simple fact - they don't know yet, but can find out. Program in multiple languages / explore languages / can speak about strengths and weaknesses across languages.

In my (obviously limited) experience, high GPAs have correlated to poor or even poisonous personalities. Often arrogant without merit, unable to change positions because of ego, and with an inability to adapt and learn.

Google appears to have done an experiment on a much grander scale and come to similar (but IMHO a little better written up) conclusions: http://qz.com/180247/why-google-doesnt-care-about-hiring-top...

I would agree if we were considering GPA as the strongest leading indicator of a good hire. This seems like a straw man argument because its not what I said.

I would assume that arrogance, ego, and inability to adapt and learn comes out during the interview process. You should be weeding these people out regardless of their GPA.

Assuming they aren't afraid to admit they don't know something, or aren't a complete asshole, I want to know how you deal with the cards you are dealt - that includes going to class, studying for tests, and doing things you deem "unimportant." The last 20% of any project is where 80% of the time and effort go, and I want to know when that time comes that you won't settle for a "B."

I didn't say strongest indicator, I said negative correlation. These are people I hired because they interviewed well, I liked them initially -- or I wouldn't have hired them. Yet, out of the small handful of people I have had to fire, they make up the vast majority.

Over time (around 15 years), I simply had to accept a negative correlation. It is something me and my peers spitball ideas about often these days. Our working, but entirely booze derived, theory is that the high GPA kids are generally able to keep top marks because mom and dad pay for everything, so they can devote themselves more easily to getting an A. But, this ease gives a sense of absolute entitlement and bitter, useless arrogance... versus the kid working a job, helping at home and struggling to lock down that B. But, just a theory and all that.

Can't argue with the sentiment. And considering "numbers" I'd say you're right about privileged kids getting 4.0 easy, but it can't build character. Maybe I myself am an outlier (as I've had my own hardships), but I'm willing to accept I may be wrong, statistically.

Tldr I totally buy your "brat theory"

Do you weight against school and course load? It's easy to get a 3.9 GPA and it's easy to take a few upper division math classes taught by a top field professor and get much less than that. The 3.0 I got in my upper level discrete math was more meaningful than the 4.0 that I got in most of my upper level CS courses (and with a phd, it's all moot now a anyways).

I see so many 4.0 students from top schools that it doesn't even turn my eye anymore (grade inflation is a bad problem in china).

Right, and I keep remembering schoolmates saying "you're taking that? But this is an easy A..."
It's also a very good indicator of obedience. Someone who cares about painting in the lines, and pleasing authority. Which is very important in some companies.
> "Don't bring up your hobbies." : This one really raised my hair. Not everyone is tweeting every part of their life (I certainly don't) so hobbies are a great way to lighten the mood during the interview and assessing the interviewee's personality.

I think it is fluff. Unless you are going to put something strikingly like juggling live swords, it is something I would glaze over. There are other ways to lighten the mood (like small talk) during the interview.

> - "Don't bother mentioning your G.P.A." : I know firms are only interested in your diploma's name, but it can be an advantage to mention you passed summa cum laude whereas another barely made it by coasting and offloading his share of works on others students (which is unfortunately a useful skill in the workplace).

Only if you are close to fresh out of school. If someone has five years of experience and mentions his GPA, I either think he has not updated that portion of his resume (which is OK) or that he still thinks I care about what he did five years ago in an ivory tower (which I really don't).

> I think it is fluff.

You may think so, but you've no idea who is ultimately reading your resume.

Granted keep it short, but more than once this has got someone from the "maybe" pile into the "we'll take a look cos he plays bass" pile.

Database preference is almost silly, once you have figured out the general type of DB you need. If you are in the realm of open-source RDBMS, "do you prefer MySQL or Postgres?" seems designed to just start a religious war. (Yes, there are differences, and I could tell them to you. If you want the differences, ask.)

Added:

How are you using hobbies to evaluate the person's personality matters? Does someone who coaches his son's ultimate Frisbee team have a better personality than someone who plays with his Raspberry Pi?

"it can be an advantage to mention you passed summa cum laude whereas another barely made it by coasting and offloading his share of works on others students"

Coasting and offloading work don't necessarily negatively correlate with GPA. Some of the people I knew in school who cared most about GPA would 1) pick the easiest classes they could find and 2) push as much of the work as they could onto others, neither of which was particularly impressive.

I think GPA is actually important as well - but only if you're straight out of school. If you have work experience and have proven to be an asset to the company you work for, who cares about a silly school number?

C's get degrees my friend.

This is yet another "I wish the world would work a certain way, so I am going to tell everyone that they should adapt to my worldview" job-market post.

The author may even be hiring and saying "these are the only kinds of resumes I read" but there are a thousand other companies out there with their own criteria for what makes a resume work.

> "Don't try anything cute. You resume should be devoid of personality."

I have to disagree. I got my current job because my resume stood out. It was the only one not written in MS word. The other candidates had equal if not greater experience than me, but I got the job before they even got a response.

If you're going for a programming position where you're not expected to be different, then sure, but if you're going for a development role where you may be full stack, or expected to be different, make sure your resume shows that.

Sell yourself in the 10 seconds you get. A school boy resume isn't going to do that.

And as mh_yam says, don't call yourself a programmer.

Agreed. My (LaTeX) resume that I spend many hours refining has caught the attention of many hiring managers, and I often get compliments on it. Curse those recruiters who reformat my resume into their shitty Word templates. I've had times where a hiring manager would have the recruiter's version of the resume, and when I handed them my pretty resume they were pleasantly surprised.
The recruiters do that because lots of HR departments are explicit: docx or deleted.

Once you get through the screen, you can show them your fancy resume, but at that point, no one cares about your resume -- you already caught their attention and it is interview / references time.

Haha. If a company doesn't want to hire me because my resume is not in .docx format, I probably don't want to be working there anyway!
That is one way to look at it -- a rather unproductive one, but you are welcome to it. Lots of great teams work at large companies and have no control over the first pass of resumes.

The reasons are often somewhat complex. Their application tracking software only supports word. Their IT department has sent word from atop the mountain to only accept .docx because it works with their AV and a bad virus got into the company via PDF last year.

It isn't the people you are going to be working with that are the problem, it is the people who defend the outer ring of large companies -- IT and HR departments.

As mh_yam said, if they're only accepting .docx, and if someone else controls the first stage of the recruitment process, then maybe these aren't the right companies for some people.

Larger companies may do this, and if you like larger companies, this is probably ok. Not for me.

Though I have to say it isn't unproductive. Unless you're unemployed. But if you're employed and you're wanted by numerous companies, what is unproductive about picking the right one?
Job candidates have a zillion "well if they don't want to work with me I don't want to work there" rules.

But companies also have a zillion "well if they don't want to work with me I don't want them working here" rules.

Listen, sometimes in the real world you have to do something a little unpleasant every now and then. Candidates should bend a little to employers, and employers should bend a little for candidates.

This only applies when you're in a position where if you don't get the job, it's a bad thing. But when you get to a certain point, getting a job is easy. It's getting the right job which is hard.
If you judge a company based on its hiring team's practices, you'll probably rule out a lot of great companies.
If you call them and let them know they're not accepting your format of resume, ask them if you can send a physical version, and get a negative response, then it's the companies loss, surely.
Typically, the reason that happens with external recruiters (i.e. those folks who are not employed directly for the company you're talking to), is because the initial engagement is often "anonymized" with the employer.

As a result, they'll take your CV, remove all identifiable information and send it on

I wonder if you could hack this by providing a pretty anonymized version as well.
I have to disagree with your disagree! Many (most) jobs go through a pre-screen. The project manager is far too busy to filter all the crap, HR does that. HR sees a unfamiliar format, and simply bins that resume.

If they specifically allow other formats, or request a specific format, use it. But, in the case that they don't specify -- go with the most common format in the industry, anything else is nuts.

Additionally, if the primary filter on talent is .docx versus .pdf (or .txt or even .tex) -- it is a place so stupid you probably don't want to work there anyway.

I have to agree with your disagree but point something out also.

> HR sees a unfamiliar format, and simply bins that resume.

When they bin the good resumes, they bin the good candidates, which means the chances of the current employees not being particularly good is higher. This would make me think twice about working for a company that says no to the better candidate because HR found their job too difficult.

I suspect that there is a wide variance between didn't write the resume in MS Word while still making it respectable and added say animated GIFs/cat video.
Animated GIFs/cat video?
I think it depends if the CV is meant for HR or for the actual person who's going to hire you. HR just use them as a filtering mechanism and will get bothered if you're making their lives more difficult.

In either case the introduction letter is probably the best place to show why you're special and a good fit for the company.

In general, I think this advice is off. Particularly, "don't use a word other than made." Using developed, designed, implemented, deployed, or a variety of other words that have slightly different meaning to indicate what your actual contributions were makes sense. In general I think made is imprecise, and makes whatever the object that was created appear simple.

I also think that if you have a GPA that is worth being proud of you should include it. It takes up very little space, and it summarizes years of accomplishment in a quantitative way. I'm more than 10 years out of my undergrad now, but I'm still going to say that my GPA was 3.98 (4.0 in majors).

Not into GitHub? Register a memorable domain and throw together a to-the-point portfolio page instead.

Or use another goddamned software hosting service? I'll never understand this sense of GitHub supremacy amongst trendies.

Otherwise, the advice in general is subpar.

The good thing about github is that it provides a decent UI for browsing a person's contributions over time. Often a github profile can look busy but when you drill down most of what the person has done is submitted varying versions of their dotfiles.
Then suggest one that is both better than GitHub and doesn't cost you any money. Sourceforge, Savannah, Google Code.. They all suck in comparison.
BitBucket ?
As well as Gitorious and GitLab.
Is having a portfolio website necessary now-a-days? What does HN think?
Having a portfolio website is necessary to get a job at the place most HN entrepreneurs are interested in running. For better or worse, a portfolio or an active github are almost necessary to land a position at a top-tier company or a startup. If you want to work for a generic business that has grown a software division out of necessity then your basic resume will do just fine.
Would you/they discount people who have >5 years experience working for mainstream organisations that might have "grown a software division out of necessity", but no github activity?
Typical thought process for deciding what features a candidate needs to have.

1. I am a good programmer.

2. I have/am X.

3. (Optional) Just-so story about how X makes you a good developer.

4. Therefore, job candidates must have/be X.

I've seen this taken to stupid lengths, where employers want someone who has done professional work with the exact toolchain in use. I don't like car analogies, but it would be like hiring a driver and saying "well, we need someone familiar with the Ford Fusion, and you only have driven a Ford Taurus."

@danielweber i agree about what you're saying, but i tend to find that only happens when a recruiter gets their hands on your CV. If you generally allow yourself or HR team to have direct access to the CV's, they tend to know what will make a good hire, and won't be looking for people who have only driven a Ford "focus"
Maybe a startup, but not a top tier company like google or apple, and definitely not for more senior hires who already have tons of experience.
There are 20 people applying for a job, and 19 of them don't have source code on the web. 1 does.

Who do you think has a higher chance of getting the job? It's a definite plus.

Citation needed. Is there any indication that the suggested type of resume works? Other than when applying for a job with the author, I suppose?
Don't call yourself a programmer.
Exactly. A programmer is a line cook. You want to be thought of as a guy who has potential to be a Chef or is one. I think the whole "impact of your work in numbers" also dovetails into this. That changes you from being an interchangeable cog to someone who can bring value and change the company.
While it might make one feel better to call oneself an engineer (you're not, it is not one of the original engineering practices), a developer (I guess, is it any better though), guru, ninja, evangelist (rebranded words). There is absolutely no need for these names in the software context. All of these words are made for the touchy-feely Gen-Y'ers (which I am a part of). While everyone tries to make the word "programmer" a dirty word these days, I'm proud to call myself one. When I go into job descriptions, I would put "Helped architech...", "developed a...", "designed flow of...", and etc.
I would argue anyone that is creating anything within software is doing engineering (and know what they are doing):

The American Engineers' Council for Professional Development (ECPD, the predecessor of ABET) has defined "engineering" as: The creative application of scientific principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination; or to construct or operate the same with full cognizance of their design; or to forecast their behavior under specific operating conditions; all as respects an intended function, economics of operation or safety to life and property.

Software engineers take scientific methods created/researched/etc from Computer Scientists and created something from it. The difference between an engineer and joe shmo is that an engineer understands the science behind what they are doing.

An engineer could build a bridge and a regular guy could build a bridge. Both may work for 100 years, but the engineer KNOWS it will work for 100 years (under specific conditions obviously) and the regular guy doesn't. The same could be said for software.

https://en.wikipedia.org/wiki/Engineering

While I do agree with you somewhat, I'm willing to give up to be called an engineer by others to stop all of these new engineering disciplines from appearing: political engineering, social engineering, market engineering. With this logic you can apply engineering to anything you do. Engineering used to be a much nobler and much more respected calling, not so much anymore.
Agreed that there is really no distinction in most cases (software engineer = software developer = programmer = guru = ninja etc), but it matters to the people in positions to hire you. I bet someone with a job title of 'software engineer' is perceived to be more 'prestigious' even if the job is really the same.

I am sick of job ads that use words like 'ninja' and 'rockstar', btw.

Programmers shouldn't write their resumes at all.

Get it done by a professional service. It's pretty much one of the most important documents you will ever have created. It's your ticket to employment, which is quite likely determining your quality of life.

Shop around. Find a quality, professional resume writing service with plenty of positive testimonials that will provide a custom service, not some "paste your text into a template" crock job.

How will the programmer know that the professional service is doing a good job? I've seen recruiters -- supposedly experts in what it takes to get hired, and are motivated because the only way they get compensated if I get the position -- completely butcher my resume.
Recruiting and Resume Writing are completely different services. One gets paid by a company when they fill roles, the other is paid directly by you and are accountable to you. Surely you can see the difference? Also, for the record, not all recruiters are like that, but it's probably pointless trying to convince you otherwise.

Pick the service like you pick any other service. Word of mouth from people you trust, reviews, research into the service, common sense, money-back guarantee etc. How do pick how to use any service? How do you pick an important SAAS or library or API to use?

If you are so convinced you wouldn't be able to tell if a service is doing a good job, how do you know that this recruiter you went to "butchered" your resume and didn't improve it?

Sorry if I'm coming across as overly combative, I just feel that IT professionals in particular are really bad at acknowledging their inexperience in other domains. I think this is especially true when it comes to writing. Perhaps it has something to do with documentation traditionally being an afterthought in the FLOSS world.

I'm sure they could give me a pretty resume. How can I tell if it actually works? There are dozens of factors at play[1]. While job candidates need to dedicate time to the job hunt (just like employers need to dedicate time to recruiting people) it's hard to imagine having the bandwidth and the sample size to do A/B testing of my resume compared with the "professional" one.

I can tell ugly and bad resumes. When a bunch of sentences on using Microsoft Office have been added to my resume, I can tell it's a bad resume. This doesn't mean I can tell the difference between the 95th percentile and the 98th percentile resume for a particular employer, where the latter will get me in the door and the former won't.

> but it's probably pointless trying to convince you otherwise.

Hey, thanks man!

[1] Say there are two companies and one has a "don't say anything about hobbies" hiring manager and the other has an "always mention hobbies" hiring manager.

You can tell if it actually works, when it actually works. I went from 0 callbacks to around a 30%-40% interview rate. It become 100% when I just let a recruiter do it for me (probably because he didn't "gamble" going for jobs that were outside my experience like I sometimes did).

I'm not really sure what else to tell you. When you use any service, there is always a chance that the result is shit. As an adult and a consumer you just have to do your best to mitigate the risk.

If you are already getting lots of callbacks and interviews then it's probably already fine. But if you are getting none, then it's time to swallow your pride and accept that you need help from a professional.

> Hey, thanks man!

I didn't mean to insult you, but if your personal experience with recruiters is only negative, nothing I say will change that perception.

Answer this: what kind of job are you looking for?

This is a good tip. I often just say My interest never leaves education, tool automation, and security.

Like all advice on resumes and interviews, this should be read with the understanding it only applies to the particular person writing the article. So, if you are applying to a company where this person is reading the the resume and decided whether to interview you, write the resume using this advice. Otherwise, it will make no difference.
This is an advert for his "resume fixing" product, regardless of wether it's free or not.