Thanks to Saeed Ahmed for contributing this article!
CV writing is a challenging task for many software engineers. Many programmers are isolated people who know how to write code but have difficulty with content. We are intelligent, but presenting our accomplishments well is a separate skill.
Writing an effective CV for software engineering is an art, not a science. Here are some tips on how to do it well.
We also have another page that describes resume tips in general, outside software engineering.
1. Focus on Projects.
Projects are where you show your potential employers that you can do the job. This goes for anyone. Whether you are experienced or a novice, you should list your best projects in a separate projects section.
The things which you need to show in this section are:
- name of the project
- one-liner explaining it
- the technology stack used in it
- 3 or 4 points describing what you did
Most of these are self-explanatory. In the 3-4 points of description, you need to discuss what you did in the project. This may be features implemented, key outcomes, results, or what you learned. You may also describe if you found a unique or efficient solution to some problem.
2. Show Achievements
“Achievements” here means performance at the workplace. If you are entry-level and do not have workplace experience, make up for it by making your projects section comprehensive enough to cover all your accomplishments. Most people will have a section in their CV for work experience, experience, or career summary.
This section of your resume should follow the ‘Accomplishment-Measurement-Action’ pattern. For example, ‘Successfully reduced the loading time of web application by 20%, by removing unused modules and only loading specific modules when they are needed’. Show your employer what you’ve done in ways that show what skills you have.
3. Only Show Relevant Experience.
Only list work experience relevant to the position you are applying for.
The same goes for projects. If you are applying for a data science position, then it may not be a good idea to include web development projects in this version of your CV. If it has a bit of data science work, then tailor the description a bit and only focus on the data science-related part.
This does mean you should usually make a separate version of your resume for each job. If two companies have ReactJS positions, you may use the same resume for both. But only do this if you are sure those two jobs call for the same skills. At minimum, you should have a version of your resume tailored toward emphasizing different skills, whether that means data science vs. web development or wherever your experience is.