Ask HN: How does a great resume look like? What are the best tools to make one?

161 points by rayalez ↗ HN
Hey everyone! I'm a self-taught full-stack web developer. I've spent the past few years learning webdev, working on personal projects, and building a portfolio (https://startuplab.io/portfolio).

Now I want to find good clients, or work remotely for a startup, and to do that I need to make a resume(or CV?).

So I wanted to ask a few questions:

- What should I put on my resume?

- Can you share some examples of how a great resume should look like?

- What are some of the best tools for making one?

- What do you look for when deciding to hire a developer?

- Can you share some advice that would help me increase my chances of finding a good job?

100 comments

[ 3.2 ms ] story [ 139 ms ] thread
A good resume won't get you consulting clients. You need marketing - see e.g. https://doubleyourfreelancing.com/ which has lots of free content.

You are also not likely to get a remote job without some relevant work experience that demonstrates you can work independently. So your resume should heavily focus on that - show you can learn on your own, manage yourself, etc.. Lacking any programing job experience, though, it's going to be somewhat difficult.

If you don't have relevant job experience, can you get a non-remote job to begin with?

One bit of friendly advice, and that's to ensure that it's been proofread by a native English speaker. "How does it look like" is not a phrase that would be used normally, although the rule is certainly confusing and easy to get wrong.

"What does it look like" and "how does it look" are both correct, yet for whatever reason, using both the words "how" and "like" in that construction ends up sounding awkward.

I hope that doesn't sound critical, I'm just trying to be helpful. When it comes to resumes, every little detail matters, even the ones that shouldn't. Good luck!

There are many proof-reading services online and, from my experience, they are pretty good and deal pretty well with technical language
I think "How does it look like" is actually wrong though I lack the grammatical education to explain why. "How does it look like" would be asking "How does it accomplish looking like <other thing>".
I think, in "What does it look like?" "What" is the object, the subject is "it." "How does it look like" has no object, so it's not a complete sentence because "look like" is a transitive verb (it requires a direct object when used in this context.)
(comment deleted)
Details are important. For example, my eyes immediately jumped to "how does / look like" in your very first sentence. I just interviewed a guy who Capitalized random Words on his resume, used (TM) after every product name (half of which were spelled wrong), etc. It's a bad first impression, but it doesn't make me round file the resume.

So definitely, proofread it yourself, have a grammar nazi proofread it, etc. Your eyes will completely miss mistakes you made -- and not because you don't KNOW they're mistakes, but because you know the content you wrote, and what you MEANT to say, so your eyes won't even see the error, even if they'd easily spot it on someone else's.

Unfortunately, this works against non-native English speakers, but that's all the more reason to seek out help if you need it, to put a non-native speaker on the same footing, to begin with, as a native.

Interestingly, the guy was a 180 degree opposite from what I expected based on the carelessness on his resume and the person who referred him. In the end, he still wasn't anywhere near up to my expectations, but, again, details.

... but you still interviewed him...?
Sometimes people surprise you, no? Just giving a chance for them to do that is quite nice.
I'm a big fan of one page resumes and the minimum amount of text needed to put across your points. This means your strengths will stand out (i.e. not being diluted by unnecessary text)

Be achievement focused. i.e. don't water down what you write with a job description.

The mistakes I see made most are:

(1) Not concretely listing the candidate's contribution (vs the team or project description), and

(2) Not focused on the most impressive and relevant items, but instead a laundry list of things unrelated to the opportunity at hand

Some tips and a resume template: https://www.careercup.com/resume

If you tailor your resume you are wasting your time, period.
I disagree with that assertion. When looking for my current position, I had a much higher response rate when each resume was tailored to the position.

Tailoring, in this case, meant relatively minor tweaks - if it was a more engineering role I'd highlight those skills and contributions whereas with the more data science-y roles I'd highlight more relevant aspects. I think it's very arrogant to think that a single resume is appropriate for every job application.

I disagree completely. I've worn several hats at every job I've worked at, each one demonstrating a different skill set. I will reword, change the order of, or even completely delete or swap out bullet points under jobs to highlight the skills that a particular req is looking for.

If you're "just another developer" applying to a "just a developer" req, then yes there's probably no reason to tweak. For anything else, you should absolutely be reconfiguring your resume to highlight your relevant skills.

Isn't that what a cover letter is for?
Cover letters are not really in style right now. But, even then, it still helps to align your resume to what you write in the cover letter. It wouldn't look good to talk about all this good stuff in the cover letter, and it has no visibility in your resume.
I've had the "opportunity" to read several 4+ page resumes like this. (Current record is 9 pages!) Candidates are definitely not doing themselves any favors. I expect that you used source control at your software engineering job. Listing it as a bullet point on your resume is just wasting your space and my time.

Another favorite is people who don't trim down previous experience. Every time I add a position to my resume, I go back over every other position and remove or compress bullet points based on what I think is important from that job now. And, of course, I've completely removed things like irrelevant college summer jobs. This is the main mechanism that allows my resume to still fit on a single (!) page.

The problem is that, to use your example, if a job requires Git there might be an automated filter looking for the keyword Git. A good rule of thumb is that if it's in the job description it should be in your resume somewhere.
You can just list them as a list of keywords somewhere.
Individual technologies should just be listed somewhere. There's not enough space to waste an entire line for a single technology. Your bullet points should be talking about how you used technology to deliver business value. Not how you used a technology to do the thing that everyone does with that technology.
On several occasions I would have ended up writing a multi-page resume as well if recruiters/job ad websites hadn't told me explicitly not to do so. One easily ends up worrying that you need to show off a tower off knowledge.

For my next job hunt I definitely concentrate on the things relevant for the kind of thing I'm looking for. Especially adding bullets about things one dislikes backfires eventually after taking a position. At some point one will get asked to work with exactly that stuff because nobody likes doing it

This template follows where mine has ended up. I forget where I sourced the material from but it suggested listing the worthy contributions to the company with action verbs like "integrated large payments system responsible for millions in revenue". It's a very concise sentence that clearly explains the value you brought to a previous company. I used to have a resume like 'proficient in MS Word' which some companies do care for but they can usually suss out important things during a phone screen. We're also the types that largely self learn though so the "what you know" becomes more irrelevant than "what value you brought to the company based on what you know or have learned along the way". It's a subtle change that seems to have much greater impact.

My resume is ultimately more than one page, not much more, but it reads very quickly. In the source material I vaguely recall you have seconds, like maybe 30-90 to really hook the reader. Long paragraphs read much more slowly than concise yet robust bullet points. If you want to pack absolutely everything on your resume, keep the unimportant stuff towards the end. I list time travel as one of my interests at almost the very end of my resume. Getting comments on it let me know someone was either skimming for an interesting phrase or really read all of it.

"Looks" aren't a consideration for a resume; most people don't mind if it's ugly or not. What people care about is content. Does this resume tell me what you learned and accomplished at your position? Does it show responsibility and experience? Can I see a career path? Can I see any patterns I might not like, like very little time spent at each job, or re-using the same technology?

In terms of getting a job, that's a completely different story. That involves the steps necessary to get a resume on top of a desk, and to inspire the person reading it that this person has more value than the others. Those are not easy things to do, but they often do more to determine whether you will get hired than the content of your resume.

(comment deleted)
Of course looks matter.

But not necessarily in a "you should try to make it pretty" sort of way. Looks should be more about readability and making it easy to scan and easy to find the pertinent information. It should look good in an engineering sort of way, not an art sort of way, if that makes sense.

As an employee that sometimes screens resumes, LaTeX is a plus.
My resume has been in LaTeX for years. In fact, it's the only thing I use LaTeX for these days.

Sometimes I get a recruiter who demands I send them my resume as an editable Word document rather than a PDF, so not having one at the ready makes it easier to just say no :)

Start with getting to know your audience.

You're basically selling yourself and your skills. Length, design, content, formatting, etc. all will depend on who is actually reading your resume.

For a fantastic example of how your writing changes based on audience, check out https://getcoleman.com/.

Wow. That website is probably the best example I've seen in a long time of "show don't tell" when it comes to marketing your skills and services.

Going to either extremes are chuckleworthy too.

getcoleman.com is really funny, made me laugh, but hire? I don't think so.
Here is what works for me. Took me so many iterations to polish it. I use Inkscape.

https://github.com/evinr/Graphic_Design/blob/master/Resumes/...

Could you share more about the toolchain for producing the PDF, e.g. D3 to create SVG, then manual placement of SVG in an Inkscape file?

Were you trying to block machine readers by using an image for skills?

I have trouble parsing your resume.

The bars require me to tilt my neck to read. If I don't, it's still challenging. The graph isn't very intuitive either.

What I care most about is the description of your role at your previous employment, but it seems to have the smallest font which makes it difficult to read when everything else is so large.

Testimonials also take up a lot of space and doesn't provide much.

A piece of advice, two of the words in the large graphic are spelled wrong (explanation and experience).
Also "teleco". I assume this is supposed to be telco or telecom
I am not a fan of this format at all. It is exhausting to read. How many iterations? You have spelling errors in your bars...
Agree. It's very tiresome to extract information from this.
I would recommend removing your skill level graph, it doesn't provide meaningful information to recruiting or hiring managers, and takes away due to using an unorthodox visual in a professional document.
I don't want to sound dismissive, but if I was hiring, I woudn't even read this one. Not because it's ugly, but because you're supposed to produce sth. I'll read but not helping even a little bit about that.
You should be an expert in Computer Science Basics. If I were a hiring manager, (and I have been in the past) I would probably push yours to the side for that reason alone.
Anyone applying for an engineer position that lists MS Office as a skill won't be getting a call back.
This is one of the best resume designs I have seen.

Yes, there are spelling mistakes, but for me, these show a human being behind the words and design.

Excellent work.

The best tool is Microsoft Word or equivalent.
I agree. Make it simple, attractive, and keep it's format familiar. Export to PDF. Nothing else.

It's a resume... it doesn't have to be paired with the paper equivalent of a LSD trip...

(Sorry for throwaway, I don't usually comment)

I've been very happy with limecv, check out https://olivierpieters.be/projects/limecv and https://github.com/opieters/limecv

When hiring devs, or anyone really, but this seems particularly problematic in tech: I always look for people who aren't completely full of themselves. If you think you're infallible or arrogant, I don't care what you've done. You're likely awful to work with. Be a person and remember you work with people.

How can I reflect not being arrogant in a resume, though?
Just objectively and briefly describe yourself. Don't try to "market" yourself, or talk too much about your personality and other abstract stuff. An example would be: saying "I'm a CS grad, looking to do ..." and then listing in your education details that you've graduated from MIT vs. saying upfront "I've completed a CS course in MIT, one of the best universities worldwide in this area; and I strive to change the world..."
Regarding what you should put on a resume, check out this checklist we put together:

https://breakoutlist.com/engineer-resume-checklist

Regarding examples of a great resume, see the one in the photo above.

Also see the following template regarding this and your question about the best tools for making one.

Example resume on ShareLaTeX: https://www.sharelatex.com/project/55db6ac384d1be370a7d4b9a

> Can you share some advice that would help me increase my chances of finding a good job?

Treat it like an engineering problem. Analyze your funnel - what companies/opportunities are you starting with? What's your conversion rate between funnel steps? How can you increase that?

And, vitally, how can you put yourself in the shoes of the person on the other side? How can you simulate their perspective? At every point of interaction with you, if you were them, what would you think? And given that knowledge, how can you improve what you're doing?

Other things: check out @sehurlburt on Twitter, Stephanie gives great advice on this topic. Also search around and read threads like the following: https://www.reddit.com/r/engineering/comments/23e4df/entry_l...

If anyone's interested, I'm launching a resume side project called https://htmlresume.com/ soon, and if anyone would like one for free, shoot me a message at hello[at]htmlresume.com with HN in the subject line or tweet me at @mosstache.

you can have one for free as long as you promise to upload it on your website and make it live :)

The best advise i've been given is : don't use a text processor software to make it. Use a drawing software.

I myself use inkscape. The result is neat, pixel perfect resume and i can adjust the size and content aesthetically to make it fit on one page.

Of course it supposes that you got the content already figured out.

This approach only works if you know your resume will be read by a person exclusively, and not machine parsed.
Unfortunately, a lot of people are going to want real text.
Doesn't really work with links eg. to your portfolio/github and you can't copy a phone number or an email address.
If you're targeting a mid-sized company or bigger, your resume will most likely first be parsed[1], with key skills, education, years of experience (etc) extracted and stored in some kind of applicant tracking system, and then loosely searched against. Your resume will likely not be looked at by human eyes until it passes through this filter, so it's important to consider making your resume as machine-readable as possible: Minimal formatting, key technical terms should be abundant, standard date formats, etc. Only after this should consider how it reads naturally, and make any appropriate adjustments for subindustry (e.g. academically-focused jobs generally want to see education first, etc.) and company.

[1]: https://www.sovren.com/resume-job-parser/

One thing a great resume has is information that is relevant to the job you are applying, not all of your experience.

Keep a master resume with everything you have accomplished so you don't forget something in the future, and edit it accordingly.

I have a resume styled with simple CSS and HTML, and it prints to a single page pdf.
Do this:

1. Write a list of 5-10 places you'd love to work and the role you'd want to have

2. Research the people who work there, the company's mission, and the company's marketing materials

3. Spend a few hours writing a job description from the employers perspective, to get you in their mindset and see the importance of certain attributes and skills over others

---

After you do the above steps, you'll be able to see the parts of your resume/cover letter/portfolio that are important and the ones that can be left out.

All you need to do is learn how to shift your perspective... which is a hard thing to do. By doing the above steps, you should be able to achieve it, however.

In my experience, the insights you'll get from doing so are invaluable.

---

Also, use a professional paid-for resume generating service, subscribe for a month, and then cancel. I'd recommend: https://resume.io/?ref=producthunt (I left the parameter on the url so you'll get the 80% discount)

Not sure about what can help, but I just started using your Helix (habit tracking web app), so please don't kill it in the next months! :)

Good luck!