How To Write The Perfect Software Developer CV — With Examples
If you’re used to writing code, the odds are that writing your CV is far from one of your favourite activities. It is time consuming, fussy, and naturally associated with the unhappy state of being unemployed.
It is also what will land you the job that you want.
In this guide, we will look at how to write the perfect CV/resumé for anyone who writes code professionally, be their title software developer, software engineer, data scientist, or other ‘related but not quite a developer’ type of jobs.
In the first part, we will guide you through some of the key rules about writing a CV that will ensure it doesn’t get discarded by recruiters the moment it is opened. We will also consider what to do if you’re starting from scratch, and how to create a template.
In the second part, we will go one by one through every section that should make up your CV, and explain how to maximise their persuasive power as well as how to avoid the most common pitfalls.
And the next step will be you getting the job!
WHERE TO START IF YOU’VE NEVER WRITTEN A CV
For those who have never written their CV before, or who wish to create a new one completely from scratch, facing the empty Word document before them can be daunting. Where does one even begin?
Fortunately, the answer is relatively easy! Here is a simple, step by step approach not to writing your whole CV, but just to getting started. Everything else should follow quite naturally.
1.) The building blocks of your CV are your experience and your education, so first things first, we want to get that down. Write a list of every job you’ve ever held, the company or clients you were working for, and the dates you’ve done them for. Do the same for any educational titles you may hold.
Don’t worry about adding text to describe your experiences, sorting them by relevance, or anything like that. For now you just need the raw information. If that means digging into some old paperwork to find past company names, do that.
2.) The next step is to choose a template for your CV. We have a whole dedicated section below on this topic, but in brief, you can find predesigned templates online by Googling for them. This will automatically take care of all the ‘extra stuff’ you need on your CV (say, your contact details), as your template will come with labelled boxes/spaces for all the necessary information.
3.) Put your raw list of information into the template, formatted to fit there, and dress it up with some more substantial text. We cover how this can be done in detail further down in the article, where each part of the CV gets its dedicated section.
And that’s it — you have a base document! Now let’s see about making it perfect…
THE GOLDEN RULES OF WRITING YOUR CV
Although you are welcome to approach writing your CV any way you like, there are a few golden rules that you should never break. Let’s list them:
1.) Never make your CV longer than two pages, and if possible try and make it fit in one. Exceptions may be made for people with 10+ years of truly relevant experience applying for extremely competitive positions, but even then — best to keep it short.
2.) Never lie on your CV. Trust us on this. You’re just setting yourself up for trouble.
3.) Spelling and grammar errors are a HUGE red flag to recruiters. Have someone proofread your CV (a native speaker in whichever language it is written, evidently).
4.) Be ready to adapt your CV according to the job you’re applying for, slightly adjusting your personal statement or the descriptions of your previous roles. Most importantly, research what the key words for the specific job you’re applying are, and include them in your CV. Many companies use Applicant Tracking Systems that filter out CVs which don’t do that. Avoid getting caught in that filter.
Everything else you are free to do your own way — just don’t toy with these four principles.
CHOOSING A TEMPLATE
Standardised CV templates are popular in some regions of the world. In the EU, for example, there exists the Europass CV, which is particularly useful for those sending applications out to multiple European countries at once. American standards, by contrast, are generally more relaxed.
Wherever you are in the world, it’s worth taking a little bit of time to research whether there is a standardised template in use in your region, and how popular that template is in your particular line of work.
However, in general we recommend designing your own custom template. This doesn’t involve any advanced design skills — it just means finding a predesigned template, and then tweaking it to fit your requirements. This will allow you greater flexibility when presenting your information, and it will also give your document a more personalised (and therefore memorable) touch.
Don’t do this with Microsoft Word, LibreOffice or any such general writing program — it will take you a lot of time and needless hassle. Instead, use an online CV creator, ideally one that lets you edit the format of your document.
The example we provide below of a template was made with Canva.com, a graphic design platform which offers a tremendous range of both resume templates and the tools to (re)design them, but the available resources are abundant, to put it mildly. You can use MyPerfectResume, CV Maker, Resume.com, Resume.io, and also the in-built CV designers at JobScan, Indeed.com, and CoolFreeCV.
Now, as promised, here is an example of what your CV should look like (again, allowing for your own customisation). This one has the ‘Experience’ and ‘Education’ sections a little abbreviated to make everything fit in one page — it’s not a problem if yours runs on to a second page.
Most recruiters recommend not including a headshot of yourself in your CV, and so do we.
Tech is not an industry where your looks matter (or at least it shouldn’t be), so your picture will add nothing to your applications other than the risk that you may end up victim to someone’s personal prejudices and biases. What if you have dreadlocks, and the person reading your CV was bullied in high school by somebody with dreadlocks?
The exception to our advice, of course, is if you live in a region of the world where this is considered a standard/desired practice. In that case, or if you are simply keen to include a headshot for personal reasons, make sure you follow these three golden rules.
Firstly, smile in your picture. A smile subcommunicates friendliness and suggests you may be someone nice to have around. Literally any other facial expression will make you look less approachable, and will predispose the recruiter negatively.
Secondly, dress for the industry. Tech is generally quite relaxed in this sense, so you can get away with anything you feel comfortable in, as long as you don’t look shabby (a shirt is preferable to a worn hoodie, for example).
Third and last, get a professional photoshoot done. Or at least get a friend with some knowledge of pictures to take one, following the recommended guidelines above. If you’re going to include a headshot in your CV, it’s worth making sure that it is a good one.
This part is very straightforward. All CVs must include a header with this basic information:
● Your full name.
● Your (desired) job title.
● Your work email address (if your private email address has a silly name like email@example.com, create a new one for work).
● Your mobile number.
● Your location. In some regions of the world you are expected to include your full address, but you should always have at least the city you’re based in.
● Links to your LinkedIn and GitHub profile, and of course, to your portfolio.
This is by far the most difficult section of your CV to get right, both because it is the most sensitive to actual writing skills, and also because the way it is deployed can vary considerably.
A personal statement is basically your sales pitch: a short paragraph that concisely states who you are and what makes you a great hire. On LinkedIn, it’s the text that goes under the About section.
It’s important to note that although your personal statement absolutely has to be part of your job application, it does not necessarily have to be in your CV. For example, it is not uncommon to write it in your cover letter (which is basically just a frame for such a statement), or, for automated job applications, in some dedicated section (eg. “Introduce yourself”). In that case, remove it from your CV to avoid duplicates — don’t forget what we said earlier about adapting your CV in accordance with the job you’re applying for.
If your personal statement is written on your CV, its length should stand at around 70 words. In a cover letter or on your LinkedIn profile, you can wax a little more expansive, and go to around 120 words.
As for how to write it. The first sentence should be a self-contained sales pitch in its own right, declaring what sort of professional you are in the most concise way possible. Keep everything fact-based and specific, and avoid flowery, self- congratulatory language about things which are not verifiable (eg. “I am highly intelligent and always popular in my teams”).
Since this section can be hard to write, let’s look at a couple of examples. Here’s what a good personal statement looks like:
I am an experienced Data Scientist and Analyst with high proficiency in Python, R and SQL, and a proven track record in developing machine learning solutions, particularly advanced recommender systems. Having worked for two industry-leading companies in the fields of retail and tourism, I am a versatile professional who can adapt to a variety of challenges. I also have experience in managing small teams, and my motto is that people should never be busy, but always productive!
Now let’s look at what a personal statement should not be like:
I was born in Paris, France, where I earned a degree in literature before discovering that my true passion was in web development. I am a trustworthy and enthusiastic worker, and I love absolutely everything related to building websites. I’m excellent with both front-end and back-end development, and I can guarantee that deadlines which may seem unreasonable to others will always be met!
Hopefully the difference between these two passages is apparent. The first one is clear about the skills it lays out, concise about the experience, and it rapidly conveys that this person knows what they are talking about and will be capable in a new position. The writing style is sober and professional, but not completely dry, with a little room for personal expression at the end.
The second passage conveys enthusiasm, but starts off with inessential details, is not precise about skills or experience, and sounds unrealistic, particularly in the part which boasts about meeting “unreasonable deadlines”.
Which one would you hire?
A link to your portfolio should be prominent in your CV, ideally displayed in the header (see above). There is no need for anything other than the link, which is why we are keeping this section so brief — your portfolio should always speak for itself.
TECH STACK / SKILLS
Although an essential part of your CV, the skills section really shouldn’t occupy too much space. List out the programming languages you can work with and your proficiency with them. For general purpose languages (eg. C, Java or Python), state which domain you specialise in (eg. backend development), as well as any other relevant ability you possess, such as in-depth knowledge of a particular framework or library.
Ideally, you should split this section into two separate columns, one for your technical skills (entitled ‘Tech Stack’) and the other for your soft skills (entitled simply ‘Skills’), like communication, leadership, time management or extra languages spoken.
If you really have very little to boast in terms of relevant non-technical skills, you may simply include them together with the technical ones. We would not recommend this, however — do some thinking, and try to come up with enough soft skills for their own column.
Our templates above offer some suggestions as to where on your CV your skills section should go, but generally you are free to play around with this. Just make sure this section is on the first page, clearly and immediately visible.
Work experience should always be listed in reverse chronological order, with your most recent position at the top, and all entries formatted consistently. Include all of your relevant previous jobs, as well as any freelance or pro bono work.
However, feel free to drop some of the least relevant positions, particularly the older ones. It doesn’t really matter that you worked as a tourist guide while studying at university back in 2005, if in the meantime you held five positions writing code.
With that in mind, if possible avoid leaving chronological ‘black holes’. Say that last year you worked as a waiter in Dubai for 6 months, because you wanted to travel. In that case it’s better to include that position in your CV than to give the impression that you just did nothing for 6 months, or worse, that you were taken up with something you do not wish to share.
In writing down your work experience, you should include your job title, the name of your employer, and the dates when you started and left the position. These should be in bold, in such a way that they’re easy to see at a glance.
Below these essential details, you should write one or two lines describing your achievements (these are more important than your “responsibilities”). The purpose here should be to demonstrate the impact you had on the job. To that end, and wherever possible, include hard numbers: how many clients you worked with, how many team members you managed, how much revenue you generated (or saved), what KPIs you had and met, etc.
Drop all pronouns when writing this section, and use verbs rather than nouns. In other words, use the construction “Managed a team of…” rather than “I managed a team of…” or “Management of a team.”
If you are in the early phase of your tech career and you come from a totally different professional background, emphasise any transferable skills, such as your ability to work in a team or to multitask.
Don’t write a novel for this section. Two lines per job should be ample space, maybe three for positions that you feel are highly relevant, but no more than that.
State the name of the course and/or certification, the institution that offered it, and the beginning & end dates of your studies, as well as any special distinctions you attained (outstanding marks, for example). Candidates with experience in tech don’t need to write any more than that; those new to tech can afford to add a line or two specifying what they learned that will be professionally relevant.
CONCLUSION: DON’T LET SMALL THINGS STOP YOU
A good developer who didn’t want to spend two hours writing their CV is a lot less likely to find a job than a bad developer who spent three days perfecting it. Let that sink in.
Writing your CV can feel like an annoying chore, and one that tends to reawaken imposter syndrome to boot.
But in truth, CVs do not require much in the way of writing skills, and creating a good one is simply a matter of putting one foot in front of the other a number of times. It is a considerably less serious challenge than, say, preparing yourself for the coding challenges you’ll face in an interview.
Don’t let something as mundane as writing a CV make you feel like you do not belong in tech. You absolutely do, and if you don’t quite yet, well, nowadays there are ways to get into it.