## General things ### Overall Make sure there are no spelling mistakes, and keep your resume to 1 page at most. Use a commonly used font (i.e Arial), as special templates with images and unusual formats can clog up an ATS system, causing your resume not to make it past the initial screening. Try to stand out with your experience and merit—not with fancy resume formatting. That being said, small errors like spelling mistakes and formatting inconsistencies are usually red flags in a candidate. If you can't take the time to make your resume nicely organized and clean, it's probably an indicator of how you write code as well. If you're a non native english speaker who's a bit worried about grammar, passing text into ChatGPT just to fix any small grammar issues is the best way to go. - [ ] Are you using an easy to read font like Arial, Calibri, or Garamond? - [ ] Are the font sizes across all sections consistent? - [ ] Headers - [ ] Bullet points - [ ] Contact info - [ ] Company names & Locations - [ ] Your name - [ ] Is everything grammatically correct? - [ ] Is it limited to 1 page? (unless you're senior+ level, but even then 1 page is enough) - [ ] Are you submitting as a PDF to make sure the formatting is consistent? ### Personal Information This is the easiest section to get right. Make sure things are neatly formatted, and PROPERLY UPDATED! The amount of times I've clicked on someone's Github link to find the link's broken or their Github isn't updated is insane. If it's not mandatory, and it's not updated, don't include it. - [ ] Is all your information there and correct? - [ ] Name - [ ] LinkedIn - [ ] Email - [ ] Location - [ ] you'd be surprised how many people leave this out - [ ] Github (don't add if there's nothing there, but hopefully there is something) - [ ] Personal site (ONLY if it's good!! Check my [site reviews](https://docs.google.com/spreadsheets/d/1EGRT9yiERDnPuc_p3KzERbEKK_n4BeoqyxoTF6Sk6YQ/edit?gid=0#gid=0) and my [Youtube portfolio reviews ](https://www.youtube.com/@AnthonySistilli/videos)to get inspo from good portfolio sites) ### "Summary" or "Personal statement" The goal of this is to save the other person's time in determining if you're a fit (and to sometime game ATS systems). Only include this section if you'll be updating it with relevant information. Otherwise, if it's boilerplate stuff that talks about how "passionate" you are, just leave it out. An example of a good summary: _Software Engineer with X years of full stack web development experience specializing in Ruby on Rails and PostgreSQL. Domain expert in e-commerce and payments field as a result of working at multiple e-commerce companies._ or _Senior Software Engineer @ Google with 5 years of experience leading teams_ - [ ] Is your summary actually relevant to the job you're applying to? - [ ] Did you cut out random buzz words? - [ ] Did you include technologies they specifically emphasized in the job application? - [ ] Is it one/two sentences that gets straight to the point? - [ ] If you have any outstanding notable things (i.e graduated from Harvard, worked at Google) did you mention it? ### Experience / Projects section Mostly looking at this section to understand what level you're at, how many years of experience you have, what technologies you work with on a daily basis, and if you've worked anywhere prestigious. If you only have projects, having the project title link to the github repo helps a lot. - [ ] Is the formatting consistent? - [ ] Is it easy to tell how long you've worked at places? - [ ] Can someone looking at your resume easily figure out what technologies you've worked with at just a glance? - [ ] Is there anything public the recruiter can click on and look at that you've built while at that company / building that project? This gets bonus points if it's relevant to what we're hiring for ### Technologies section If you're applying for a job, and you tell me you've used every technology under the sun, I'm going to assume you're a novice at all of them. Chances are I'm hiring for a specific role with specific technologies, and I'm just trying to find an expert in those things. The more you have = the more general of an engineer you're assumed to be. The more general = the less quality for more specific jobs. - [ ] Did you focus on the skills you mainly do / are specifically right for the job? - [ ] Matching your skills closely with ones mentioned on the application is great for ATS bypassing as well - [ ] Is it formatted in a nice and easy to understand way? Or did you list 25 technologies in no particular order? ### Education section Depending on the job you're applying for, the person looking at your resume might completely overlook your education section, or it might be vitally important. Usually the bigger and more prestigious the company, the more of an advantage a "top school" might give you. For most jobs though, it's probably not super important. - [ ] Is your GPA good? If so list it, if not, leave it out - [ ] Do you have relevant stuff you did at school i.e attending hackathons, organizing your competitive programming club, etc? if so, mention it. Don't mention that one time you got a 100 on your Spanish exam though. - [ ] Don't list common things everyone at your school has done. If everyone had to build a weather app for a class, that's probably not a great project to showcase. You want to seem DIFFERENT and more "passionate" than everyone you're competing against. ## Advanced checklist Advanced checklist (formatting etc): I'd recommend checking out https://www.faangtechleads.com/resume/checklist They're not sponsored / I don't know them, but I used their tips when building my resume building algorithm at https://hyrd.dev ## Understand what recruiters and engineers are looking for The more empathy you have for the person on the other side of the process, the more successful you'll be able to be. Usually your resume is either getting looked at by a recruiter who makes the decision of whether or not to send you to an engineer, or an engineer themselves. #### Recruiters Recruiters will normally be looking for a few things: - Do you fit the job description in terms of skills, role, and seniority? - How well do your skills match? - Are you at the seniority level they need? - Is your job title similar to what they're hiring for? - Is your specialization the same as the one they need? - Do you fit the job in terms of technicalities - Where are you located? - How long have you been working professionally for? - age - working hours / work style (hybrid, remote, in-office) - visa status - etc - Is there anything that sets you apart from other candidates? - Experience at a top company - Graduated from a well known school - Worked on important things in the past / contributed to major projects in some way - Other notable or special achievements that give you a little sparkle above everyone else #### Engineers Engineers will look for: - Are you a specialist or generalist? - Do you list every technology under the sun? Or do you know your craft extremely well and deep? Usually no one wants to hire a generalist to do a specialist's job. - How well do you know the technologies we're hiring for? - Have you dabbled with a PoC in that technology, or have you worked with it on a daily basis? - How closely do you align with our tech stack? - Do you look adaptable or do you use super old technologies? - What have you built? - Is it similar to what we're building? - Is it similar to what we're hiring you for? - What parts of the process were you involved in when you built it? - Are you a proactive and passionate coder? Or just someone who does it for a living? - While working a job is a 9-5 thing, someone who enjoys what they do and takes personal time to experiment with new technologies and build things will always be a better engineer than someone who does it solely for money. It's just a general trend that I think every working engineer has seen. - Usually proactive coders will have experience with more modern technologies as well, which is helpful, and they seem more adaptable without coming off as a generalist - How long have you been working, and have you worked anywhere notable? - Same as the recruiter above ## A note on ATS ATS's (Application Tracking Systems) are used by almost every big company that hires software engineers. When a recruiter makes a LinkedIn job posting, and they get 500 applicants within the first hour, their ATS system is what helps score, organize, and disqualify candidates who don't match well. Usually if your resume is some funky custom template with wierd formatting, or if you don't meet the job requirements at all, you'll be automatically rejected (internally) almost immediately. **Almost all Fortune 500 companies use ATS for recruitment** ² **75% of resumes don't reach a recruiter** ¹ ATS isn't all bad though - if you know how ATS works, you can also "game" the system to getting an interview. "Gaming" ATS is a lot like optimizing your site for Google. Obviously you probably don't want to lie in order to do it, but it can be a good edge if you actually fit the job reqs nicely. #### General ATS Tips - [ ] Don't use random fancy formatted templates - keep it standard. A good resume example is something like [this](https://www.reddit.com/r/EngineeringResumes/comments/18d9mb4/senior_software_engineer_resume_second_post/) - [ ] **Fonts**: Stick to Arial, Calibri, Garamond - [ ] **Font size**: 10px for general text - still readable, but small enough to fit lots of stuff in lmao. Ofc your headers etc will be bigger. - [ ] Use your professional summary to specifically mention technologies that they're looking for - that means you'll have to modify this for every job you apply to, or use a tool like https://hyrd.dev to automatically use AI to do it. - [ ] Same tip for experiences and projects - if you can highlight things they specifically mention in the JD (job description) it'll be better. It takes a ton of time tho so just use some AI tool to do it - [ ] Make sure formatting of each section is simple and easy for a pdf parser to read and understand - [ ] Include lots of keywords directly from the JD - [ ] Don't specialize in too many different things / technologies. People and ATS systems look for SPECIALISTS most of the time (depending on the job) ¹ Source: [Expert Resume Pros](https://www.expertresumepros.com/post/the-shocking-of-resumes-that-fail-employers-applicant-tracking-software-ats-system) ² Source: [CEO Michael HR](https://ceomichaelhr.com/truth-about-how-ats-systems-reject-resumes/)