top | item 23780236

Ask HN: What do you want to see in a resume / GitHub profile?

65 points| jakearmitage | 5 years ago | reply

I've been out of the hiring game for 7 years. I love my job, my company but, unfortunately, COVID has affected it more than we would like to believe and layoffs are going to happen soon. I want to be prepared when that happens, so I'm asking my fellow HNers: what do you want to see in a resume and GitHub profile? I'm a Principal Software Engineer.

I see all the cool kids with side-projects: libraries, applications, etc. I also see plenty of fancy resumes. I have a 2-page thing in Helvetica, nothing fancy, listing my achievements and skills. I tried to reduce as much as possible since I've been told that the more I put there, the worse it is since it makes me look old and "you can't teach an old dog new tricks".

I know a lot of people, and I'm sure I won't be in a pickle. But I don't want to rely on my soft skills or work connections to set me up in the future: what is it that the market is currently looking for and how to adapt myself to it?

ps.: Oh, is ageism a thing? I'm 35.

78 comments

order
[+] gas9S9zw3P9c|5 years ago|reply
Let me give you a slightly different take. There are no specific things I'm looking for. But here are a few red flags that have proven to be good indicators of who NOT to hire. Don't

- Use high-level vague marketing speech like "helped reduce customers acquisition cost by $X" - The world is complex, who knows what that means in practice.

- List MOOCs, certificates, or free online courses on your resume. 99% of these require no commitment and don't teach you anything. Listing them signals that you care about cheap credentials more than learning. If you wanted to learn, you would've created a project out of it, tried to implement something, or written a blog post, etc. I'd rather see "I privately read books about X in my free time" than cheap MOOC credential signaling. That'd be more impressive and I could ask about it in an interview.

- List software like Excel or Google spreadsheets. I mean, if you're an engineer I'm assuming you can use a computer. Listing this means that you're living in a different world.

- List fluffy soft skills like "I am a good communicator" without any backup. Results speak louder than words.

- Too many spelling mistakes.

These are the things off the top of my head, I may add to it later.

[+] acheron|5 years ago|reply
> List MOOCs, certificates, or free online courses on your resume. 99% of these require no commitment and don't teach you anything. Listing them signals that you care about cheap credentials more than learning.

How I can tell you don't work with the government....

Government and government-related consulting loves certifications. If you're in that field you probably already know this, but if for some reason you're looking to relocate to a gov't-heavy area, or just applying to a contractor for the first time: yes, list certifications if you have them. If you don't have something the employer will have to pay for you to get one anyway, so already having something will save them money.

[+] pesfandiar|5 years ago|reply
> Use high-level vague marketing speech like "helped reduce customers acquisition cost by $X" - The world is complex, who knows what that means in practice.

I agree that high-level buzzword-laden items in a resume are off-putting, but that example is actually concrete evidence that the candidate:

1) helped the business in a tangible, quantifiable way. (competent)

2) knows how their work was contributing to an important business metric. (aligned with business side)

[+] znpy|5 years ago|reply
> List software like Excel or Google spreadsheets. I mean, if you're an engineer I'm assuming you can use a computer. Listing this means that you're living in a different world.

I'd take this with a grain of salt. Excel is a very malleable tool that can do marvels in the right hands.

[+] steerablesafe|5 years ago|reply
Some of your red-flags are must-haves someplace else (manly HR). How an applicant should know what to leave in and what to left out? It's a minefield.
[+] Dayshine|5 years ago|reply
> - List software like Excel or Google spreadsheets. I mean, if you're an engineer I'm assuming you can use a computer. Listing this means that you're living in a different world.

Yes, that different world is the public sector (or even just enterprise hiring), where applicants are graded against criteria.

[+] huy-nguyen|5 years ago|reply
Not all certifications are bad. Some are quite good. For example, the Google Cloud certifications (associate cloud engineer, professional cloud architect, professional data engineer, professional cloud developer etc) give you a good technical understanding of GCP services and to use them to achieve business objectives.
[+] vikramkr|5 years ago|reply
The fluffy soft skills thing - sometimes we're just trying to get past the ATS. If those words are in the job description, they're gonna have to be shoehorned in somewhere if the company uses one of those god awful ATS suites
[+] poiuytrewqa|5 years ago|reply
> List fluffy soft skills like "I am a good communicator" without any backup. Results speak louder than words.

How you bring result/backup about soft skills in a CV? Is already quite hard to get an understanding of hard skill from a piece of paper let alone soft skills.

Unless you think you can condense the complexity of the experience of a person in a two page document.

Also trying to backup something like that with things such as "speaking engagement" etc is not even working. There are people who are "good communicator" for a certain audience (eg. Entry level) but quite bad for another audience (eg seasoned engineers). For example for me a bad communicator is a person that spend 30 minutes to share a concept that can be compressed in 2.

[+] collyw|5 years ago|reply
Unpopular opinion, but as an old person, I am starting to look down on having too many technologies / frameworks on a CV these days. Some developers need to try something new every project and never learn anything with style or get deep into a tech, they are busy jumping on the next trend and learning things at a very shallow level.

It's not a definite "no", but it's a red flag for me as to why you would need Flask for one project when you have used Django for another and PHP for something else. If you can convince me that you that you had a good reason for changing that doesn't appear to be resume driven development, then I'll listen.

Also I am starting to value team players over technical skills. Provided you are of a reasonable level of ability it's more useful to have a team player than a diva genius. Most of us are doing a variation on CRUD that doesn't require superior levels of algorithmic ability.

My 2 cents having done this for 20 years and getting a bit bored of the bullshit .

[+] stu2b50|5 years ago|reply
I think you're not being fair to assume people who try out different technologies are looking to catch more buzzwords for their resume.

Using cutting edge technology can be fun and interesting. It may not be optimal, but these are personal projects--they're not intended to be optimal, but rather something more hobbyist.

[+] ownagefool|5 years ago|reply
For me it's really simple.

Have as many tech on your CV as you want, but you'll need to back it up when you're asked questions on them.

[+] 1123581321|5 years ago|reply
Consider stepping away from reading resumes, or developing a rubric to help you process them more dispassionately, or a workflow to edit them before passing them to a review team. It's natural to get tired of seeing the same thing, but it's unfair to candidates to use your overfamiliarity with the resume format against them.

Additionally consider there is no good way on a resume to distinguish between considering but declining to use a technology, and never evaluating technology in the first place. Additionally, consider that many people pick up expertise with overlapping tools due to circumstances they cannot control (legacy codebases, client insistence, freelance.)

I say this as a fellow resume reader who experienced some of what you describe. It feels like gaining wisdom but it's not quite.

[+] tutfbhuf|5 years ago|reply
> Unpopular opinion, but...

HN tends to upvote those, because they are often controversial and interesting.

[+] IvyMike|5 years ago|reply
As someone who has conducted a lot of interviews and read even more resumes, there is no single good answer here.

Some of my peers would pour over resumes for hours. Others would look for specific items (a technology, a company, a school). Others would almost completely ignore the resume. Some companies I've worked at would have HR pre-vet resumes, getting rid of ones that didn't have some magical combination of keywords.

Sadly your resume is going to have to survive encounters will all of these people.

I will list one personal pet peeve: do not put anything on your resume that you cannot have an intelligent five-minute conversation about. "That was a long time ago, I kind of forget the details" doesn't cut it--if you forgot the details, it doesn't feel like it's part of your current skillset and thus doesn't belong on the resume.

[+] drahazar|5 years ago|reply
...when did 35 become old?

Am I the only 30 yr old who feels like he only just got to grips with the basics of how to write software like an adult?

If we're past it by 35 what happens for the other 35 years of working life?

[+] cvs268|5 years ago|reply
+1 on having the feeling of FINALLY understanding wht the whole hoopla is after age 30. :D

BTW, based on the currently common lifestyle choices, most tech folks who are 35, likely do not have another similar 35 yrs left in them :-)

[+] diehunde|5 years ago|reply
I don't think it's old. I actually think OP is a bit young to be a principal engineer assuming that's what comes after senior.
[+] sitzkrieg|5 years ago|reply
its funny, i remember thinking i knew the bees knees at like 23 and have been steadily learning how much more i dont know for a solid decade since. its great
[+] gregdoesit|5 years ago|reply
I'm a a hiring manager at Uber. All I want to see is your profile being relevant for the position. The second best thing you can do is choose a clear format [1], be clear about the results you've helped happen, and customize your resume for that specific job.

The best thing you can do is get a referral. Still with a referral you'll want a relatively relevant resume.

And to your point on what you can do to be relevant. I say keep track of the impact of what you ship. How much $$ per year does your project generate? How many users? How many RPS? How many engineering hours saved? Whenever I see people with resumes who have done more impactful things than I'm hiring for, I think: I need to talk to this person. It's exactly the type of expertise we need. And so few resumes have any of this.

I'm also writing a book exactly on this topic, which is at 115 pages and lots of visuals, and examples, including advice for experienced people like yourself. As I don't trust myself only, I'm having tech recruiters and hiring managers across the industry help me out. You can check out the beta of the book [2] and I'd love feedback on what you might feel is missing there.

I'm planning to make the book free for any software engineer who have lost their job due to COVID when it launches.

[1] https://twitter.com/GergelyOrosz/status/1279431439914762240?... [2] https://thetechresume.com/

[+] kingnothing|5 years ago|reply
Hiring manager here.

In a resume, I want to see where you've worked, how long you were at each job, and your major accomplishments at each. Those can be technical and non-technical -- perhaps you made some excellent people process improvements you can showcase. I don't want to see your hobbies or where you went to high school, keep it professional and relevant to work. Personally, I use LinkedIn as my resume. If a recruiter wants something different, they're welcome to use print mode or format it in Word / PDF themselves.

I don't care about your GitHub profile. It's a small value add, nothing more.

Ageism is not a thing I've seen. I've worked at a trendy unicorn and was involved in hiring multiple people 30+ and at least one 50+. I'm in my mid 30s.

At your level, I really want to know how you work with others and influence teams across an organization. Your tech skills are now secondary to your people skills, but you still have to be up to date on tech since you'll be one of the driving forces at the company.

Why don't you want to rely on your network to set you up in the future? It's one of your biggest professional assets and will open doors to jobs that aren't publicly advertised.

[+] bE9a3S5So8igd3|5 years ago|reply
> I don't care about your GitHub profile. It's a small value add, nothing more.

I think this sentiment may be unfortunately common. It used to be that having a good github profile was golden. I got my first two jobs probably as a result of my github activity. Lately I get the sense that no one even bothers to look. To me this signals that the company itself doesn't value technical matters as much as how good the candidate is at answering canned behavioral questions.

For example, if as a hiring manager you are convined that "Tell me about a time you had a disagreement with a coworker" is more valuable than a decade of open source contributions to relevant projects, that's a problem IMO.

[+] 0xbadcafebee|5 years ago|reply
Do you have $120? If so, hire a resume consultant like The Muse (https://www.thebalancecareers.com/the-muse-resume-review-484...). Landing a good job affects your mental health as well as your financial security, so this is a really cheap and easy investment in your future.

From my own experience, I can tell you that there's two basic kinds of resumes: an "attractive to recruiters" resume, and an "attractive to a single employer" resume.

The former is what you post on job boards to get recruiters to notice you. It's full of buzzwords and designed to cast a wide net. It doesn't need to look great, but it should provide lots of information about your last few jobs and highlight all the tech you've worked on as well as different industries, roles, etc.

The latter is what you send them as your "latest updated resume" that will get passed on to a real hiring manager at a real company. It should be trimmed down, attractive without looking ridiculous, and only showcase the stuff that matters to the one company and what they're looking for. You want the person who hires you to think that you were born to fill that role, and that you will be an "easy hire".

And yes, ageism at 35 is a thing, but you can use it to your advantage. Younger people might get overlooked for some positions for "not enough experience", whereas an older person can talk up their proven effectiveness and ability to solve problems and manage complex work and soft skills.

[+] Jefro118|5 years ago|reply
I've talked to a few different hiring managers and recruiters about for the sake of my own project[1] this so I'll share what I've learned here (this applies more to GitHub/portfolio than resume):

- Projects should have a clear README explaining what it is and why it exists. Some hiring managers will dive into the code properly but others simply won't have the time and are looking to get a good overview. Both groups want to see a clear README that explains what the project is about and ideally provides a link or some screenshots if relevant. Things like installation instructions should be there as a component of good documentation, but don't expect them to actually go to the effort to do install and run things, most won't.

- Curating your GitHub profile a little can make their lives easier. Simplest way to do this is by pinning your best repos. Consider removing (or making private) things that might be considered "clutter" like e.g. forks that you haven't done anything with.

- Having good, atomic commit messages, and clear, helpful comments on issues, prs, etc. is good, but many simply won't go into this much depth.

- Having detailed, well-written blog posts about technical issues can definitely be impressive. As with your code, a hiring manager may often just skim this, but all they need to come away with is the impression that "this person knows their stuff".

- As said in another comment, things like typos and grammar mistakes are a big no-no, especially on resumes.

[1] - https://profiled.app (tool for generating a portfolio site from a GitHub account)

[+] notsag-hn|5 years ago|reply
Hi, jakearmitage. As a senior engineer that was able to get jobs/visa sponsorship abroad more than once I feel I can give you the following pieces of advice:

- Start with what kind of job you would love to have. Do you want to work for a blockchain startup? maybe a gaming one? Or fintech? It may be something you never did, don't limit yourself.

- If you don't have a Github project related to what you want to do, create one. Put a lot of emphasis on the README of the project and on code quality.

- Read a relevant book before starting looking for the job. That alone will give you a lot of stuff to talk about and it's going to be really fresh in your mind. People that read books have much more chances of standing out.

- Create 2 or 3 generic CVs and do customize them when applying for a job. I used to customize mainly the top paragraph(s) of the CV I use to introduce myself. Describe your skills and interests from the perspective of that particular job.

- Regarding CV style, I'd prefer a sober and minimalistic one. Google "best fonts for CVs 2020" and pick up one you like.

- Highlight keywords so it's much easier to understand your skills at first glance.

- Don't just list technologies but also explain in a higher level what you have achieved.

- Nowadays there are ML-based tools that analyze and even discard your CV before a human takes a look at it. Glassdoor had some time ago a CV analyzer that literally gave me hints that allowed me landing a job, after simply changing a bit its wording my CV got much more visibility. Find some of those tools and give them a try, if the feedback you get is reasonable edit your CV accordingly and see what happens.

- Have a lot of interviews! If it's difficult for you to get them (which I doubt if you are a principal engineer already), apply for jobs that you would just take in an emergency situation and sit those interviews. At some point I was having like 2-3 interviews a day. That helped me be sharp on selling myself after some weeks and that is crucial!

And that would be it, I hope this helps. Good luck with your search!

[+] jaspal747|5 years ago|reply
- Show respect for the reader's time. Sometimes we scan 10-15 resumes a day and can see clear patterns, repetitive marketing pitch, lofty unsubstantiated claims. Unserstand that others applying for the job have very similar resumes and you need to be more direct and stand out from the pack. The job poster's BS detector is fairly finetuned and can quicky pick out BS from true merit.

- What draws my attention is humility and the resumes that speak directly to me. Like a resume narrating a coherent career story.

- Show some solid experience in the core technologies requested in the job posting.

This much is usually enough to prompt me to give someone a call and then know their story and cross reference it with what the resume said and also know more about them.

[+] ghiculescu|5 years ago|reply
Honestly I’d consider hiring you based on the combination of confidence & humility in this post. It’s rare.

I’m not sure if linking to this post from your resume is a great idea... but it could be.

If you’re in Chicago, reach out.

[+] jakearmitage|5 years ago|reply
Thank you for the kind words, really uplifting! Unfortunately, I'm in FL.
[+] muzani|5 years ago|reply
1. Clean resume. Programming is 100% communication, both with yourself and others. If your resume doesn't communicate well, you probably don't code/design very well. Emphasize important parts, and it matters what exactly about yourself you're emphasizing, and that you don't follow a "default" template.

2. Seniority. It's said that a person's second project will be their worst, overengineered and bound to fail. Someone who has done three projects can solo. Any less needs a mentor who has done at least three projects. Someone who's working on their first production project will underengineer it, but that's fixable by bringing a senior in later. There are people who have years of experience but never the opportunity to do a project from scratch - these will still go through those phases.

3. Fill in gaps. If they're a break, why? Many people are embarrassed of gaps, because they're a phase of experimentation and failure. But if you've taken a couple years off to become a monk or try a startup, say so. Dealing with burnout says a lot about your experience and how tough you've grown too.

[+] codegeek|5 years ago|reply
Some tips:

- Decide first what type of role would you be interested in ? And this is not always driven from your current experience but most likely, your current experience will be the most relevant. You said you are a Principal Software Engineer with at least 7 years of experience ? Do you want to be ready for a similar job or are you interested in a different role that you know you are capable of.

- based on your determination from above, you then need to work on your Resume and online presence. Do you need a github ? Not really. There are lot of github profiles out there that are basically just a fork/clone of other projects without any new work being done. Instead, create a 1-2 page website about you with your Resume on it. Make it easy to learn about who you are and if you are worth a second look on paper. Focus on "accomplishments" instead of technologies especially as you become more senior over the years. I couldn't care less if you are a Python or PHP developer if your Resume talks about solving real problems at work that are similar to your prospective employer.

- I highly suggest starting a blog. It is hard I know. It is difficult to write. But talk about things you have learned. Not only tech but general stuff. Things that gives a prospective employer indication about the type of work you like to do. For the right employers, it will help. No one knows who you are until you show. This is an old saying "Show, Don't Tell". Figure out what works for you to show who you are and then let people find you hopefully.

- Ageism is absolutely a thing. But there are plenty of good companies/hiring teams that look for experience and value it. Because they need it. Find those teams. Ageism becomes a bigger issue when you are that guy with 1 year of experience 7 times instead of actual 7 years worth of experience. Which one are you ? Challenge yourself and find out.

[+] enriquto|5 years ago|reply
There's nothing that piques my interest more than a way too long and well-documented rant about an extremely niche and inconsequential topic (tabs vs paces, variable naming conventions, whatever). I do not really care about the specific option taken, but about the raw passion on its defence. Mostly, I appreciate people who can write an engaging argument.
[+] twalla|5 years ago|reply
In the service of keeping my resume as dense as possible while remaining readable I've moved specific technology keywords from the body of my line items to the end of each job's body.

So instead of this:

  Weyland Yutani Corp, Sea of Tranquility, 2318-2320 
  - increased foo by bar with blockchain, ml, vr, k8s, GIMP
  - did baz with COBOL, webassembly, graphql, react
I'd just have this:

  Weyland Yutani Corp, Sea of Tranquility, 2318-2320
  - increased foo by bar
  - did baz
  (ml, blockchain, big data, k8s, GIMP, react, etc)
I can't comment on if it's something hiring managers and recruiters prefer but I can say that I think it looks nice and I am currently employed.
[+] downvoteme1|5 years ago|reply
Totally different take . Nobody cares about your github or has time to click that url.

Instead get a referral and leetcode like crazy. Target all the leet code questions that are tagged by your target company and CTCI

[+] awinder|5 years ago|reply
For the last couple of jobs (lead and senior) I’ve had a resume focused on business achievements that I helped lead. I’ll put some relevant technologies but it’s not a huge focus area. This helped slim down the resume naturally because my first few jobs had less notable “big deals”, later jobs more.

Not that you asked for advice on this part but — ageism isn’t a thing (at 35 imo), but what is a thing is interviewing from position of strength. There is a world of a difference between being a principal who is seeing the writing on the wall and getting out, versus waiting for the layoffs and now being a former principal. It’s gonna make the interviews harder, you’re going to have more stress, companies may play comp games. If you think it’s going there I’d strongly consider expediting your search.

[+] sergiotapia|5 years ago|reply
Whatever you do, keep your CV short, one page. Highlight your impact to the business. Don't list Word, Excel since you're applying to a software dev job. Highlight personal projects if any, and clean up your github profile to show your most starred repos if any (play the game).
[+] wojciii|5 years ago|reply
This post reminded me of the generator (English, Danish and pirate-english is supported) that I used to write cover letters when hunting for jobs. I sent the same CV for each job.

I was usually called in for an interview for 2 out of 5 times. The CV just lists the different places that I worked and what I worked on. At the end I have a table with the tech that I know. Listed most recent first. I have a picture in the CV and some bullshit about what I do in my spare time. I have kids .. so no spare time of importance.