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.
- 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.
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 .
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.
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?
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/
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.
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.
- 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)
- 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!
- 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.
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.
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.
- 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.
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.
Instead get a referral and leetcode like crazy. Target all the leet code questions that are tagged by your target company and CTCI
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.
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.
- Look at N job descriptions for job(s) you want
- Flush out your LinkedIn profile to make it look like you can do the jobs you want
- Set your LinkedIn profile to being open to new opportunities
- Engage with any recruiter who comes along for the practice
- If you get a lot of attention, refine your pitch, and if you don't get any attention, look into why that is
- If a recruiter asks you to send them a resume, and you don't have one you like, use a PDF of your LinkedIn profie
Maybe don't rely, but please don't feel bad about using work connections.
And it's not necessarily a matter of "set me up": If you work well with someone at one company, you'll probably work well with them at another. It's win-win.
So what I want to see is a project repo that the applicant has made in a language that I can read. That’s pretty unfair, as github decides which repos are listed on top, so they might be forks or similar stuff that is not helpful in evaluating an applicant.
* Concise bullet points.
* Easy-to-scan bullet points.
There is a style of resume I sometimes encounter: huge blocks of paragraph text including scattered bold statements about React Native and other Super Buzzwords. There's a whole story crafted about the applicant and their AWS skills.
It's incredibly hard to parse. Don't do that.
The most salient piece of advice: Use a "what-how-what-impact" format in your work history's line items.
To modify an example given elsewhere in the comments, instead of
> helped reduce customers acquisition cost by $X
prefer
> Streamlined customer acquisition by building a self-serve customer onboarding web app using Python and Django, reducing acquisition cost by $X yearly