The simple guide to writing an effective technical resume for software engineers
The basic building blocks of a great technical resume are pretty easy to understand, and effective for you to implement.
At Leet Resumes, where we write great technical resumes for free, (tips appreciated!), we've learned a lot about writing technical resumes. We've taken an open source model to sharing those learnings, figuring that you can do it yourself, or have us do it for you. Either way, the cost is the same!
A great technical resume helps get you ahead in your career. Company hiring practices can seem mysterious and cryptic, but it’s not too complicated in reality. Companies have processes for how they hire, and just like any system, if you know the rules it’s easy to reverse engineer what you need to do.
To help a hiring manager make technology hires, a company typically has HR staff, and sometimes a recruiter, review resumes of applicants and professionals they've invited to interview. The software they use to track interviews or job applicants is called an Applicant Tracking System (ATS). Technical resumes should be written so they work well with an ATS, and that they are persuasive and effective at getting you interviews with engineering managers and HR people.
Here's a simple guide to doing that well.
The professional headline summarizes your role and level. For easy comprehension, it sums up your professional standing in a few words - a short phrase that serves as shorthand for your career. Great professional headlines include:
- “Passionate Open Source Engineer”,
- “Top-performing BI Analyst”,
- “Innovative Machine Learning Expert”,
- “Successful Front-end Engineer”, or
- “Dedicated DevOps Professional”
In the case of Stephanie's fictional resume below, "Accomplished Lead Engineer" is what she's gone with. A clear professional headline helps you get seen by managers looking to hire professionals like you.
Four job titles you’d accept
Often missed on resumes, it helps to declare explicitly which job titles you are willing to accept. After your professional headline, include these three to four job titles as a means for the recruiter or hiring manager to know what roles they ought to consider you for. These are not necessarily past roles or job titles you’ve already had. Instead, these are job titles your readers should consider you for in your next job. This may seem really obvious to you, but it’s not obvious to the HR staff or your future boss – help them out by documenting very clearly your intended path forward.
The next three lines of your professional summary describe your most important, most relevant attributes. (If you have less than 10 years of experience, you ought to reduce this professional summary section to two lines.)
The second line of the professional summary is capabilities, skills, talents. These are your top 4 most differentiated skills in the market. Highlight skills that indicate you’re ready for the 4 job titles listed above.
The third line covers performance. What types of achievements in your work history prove that you have the skills and capabilities listed above? What specific factual details can you summarize here? (You’ll explain them in detail in the bullet points below.)
The fourth line covers career highlights - awards, promotions, truly distinguishing achievements or industry recognitions. It's always helpful to include your promotion track record on this line: "Promoted early" or "6x Promoted"
Again, please note, if you have less than 8 years of experience, we’ll typically advise collapsing the professional summary from 4 lines into just 2.
The most common mistake engineers make in their work experience section is copying and pasting their job description. The readers of your resume already know the duties and responsibilities of a ‘software engineer’ or a ‘full-stack engineer’. So a copy-pasta job here doesn’t help you.
Instead, please focus on providing the details about what you actually did achieve on the job. Answer for your reader the questions she or he has in their head about you. Did you contribute in concrete numbers and real results to your past employers? Why was your previous employer better because you were there? Did you reduce latency? Increase throughput? Shave seconds off loading time? Build a system that could handle more capacity, concurrency, or continents?
For technologists, this is an area where resumes actually favor your strong suit: numbers, not words. It’s always better to show your expertise by sharing the numbers. Numbers are objective, they are facts, and they help readers understand precisely what you did. For each role on your resume, share the numbers that detail your success.
Examples of good numbers to share:
- Load time reduced by xx ms
- Site engagement increased by xx%
- Bug fix time reduced by xx days
- Data usage reduced by xx %
- Revenue increased by xx %
Anything where you can quantify the specific improvements that happened because you were the engineer on the job.
Finally, list the technologies you’ve used at the end. For more experienced engineers, your particular technology stack may matter less than your overall track record. While for more junior engineers, the placement on the first (and only) page means this important data is at the fingertips of hiring managers and recruiters.
We typically expect to see 8 - 10 technologies for engineers with two to four years of experience. That grows to 15 - 20 by the time you're at ten years' experience. Commonly, being proficient in 25 or so technologies by fifteen years is the sign that you've transcended the bounds of programming languages in specificity, and that you're able to learn enough about any particular language to contribute productively at a higher level.
I hope this overview has been helpful. For more detail, see our technical resume documentation. Leet Resumes helps experienced technologists get ahead in their careers by writing great technical resumes for free. (Tips accepted). We’d love for you to sign up.