How to Make a Killer Software Engineer Resume and Portfolio to Boost Your Freelance Career

Published Sep 21, 2017Last updated Jan 15, 2018
How to Make a Killer Software Engineer Resume and Portfolio to Boost Your Freelance Career

One of the biggest challenges for freelance developers is maintaining a steady flow of clients — especially if you are new to freelancing. Your software engineer resume and portfolio will be essential tools for securing interesting projects from legit clients.

Even if you aren’t new to freelancing, it’s important not to neglect your resume and portfolio. Maybe you have a degree in computer science, and have completed projects with high-caliber clients — all the more reason to update your software engineer resume and portfolio to better build off of your experience.

When clients screen for freelance developers, there is a certain set of criteria they will be looking for. They want to know:

  • Which programming languages you are proficient in
  • How you acquired your technical expertise
  • Which companies you have worked with
  • What quantifiable results you have achieved for clients
  • If you have leadership experience

These questions should be addressed in your software engineer resume.

Beyond this, clients want evidence. They want to see something tangible to back up the claims you have made in your resume. They want to know what libraries you are familiar with, the tech stacks used in your previous projects, the functionality of completed projects, how you built those projects, if your code is clean and readable, and the industries you have experience in. This is where your developer portfolio comes in.


When working on a project with remote freelancers, clients will have some additional concerns that you should do your best to alleviate. To do so, your freelance portfolio should also showcase the following:

  • Communication ability
  • Workflow process
  • Documentation habits
  • Overall project management ability

In this post, we’ll offer a guide on how to create an impressive developer’s resume to catch the attention of clients you want to work with and produce a portfolio to back it up. We will also provide some tips on getting more involved in developer communities to grow your skills and reputation.

For strategies on getting inbound job leads read this post: Insider Tips From Recruiters Hiring Software Engineers.

Contents of a Web Developer’s Resume

Research from Business Insider shows that recruiters may spend as little as six seconds scanning each resume. Therefore, it’s very important that you make it concise, easy to read, and strategically use keywords. A big part of this is knowing exactly what role you are hoping to land, and the skills you will need to perform in that role.

Before you jump into writing your resume, you should first take an inventory of your experience and skills, and spend some time reflecting on how you want to apply this in a freelance engineering role.

Like resumes for any profession, a freelance developer resume typically includes some must-have sections and some optional ones. Here’s what your section headers may look like, with must-haves in bold:

  • Career Summary
  • Skills and Certifications
  • Experience
  • Freelance Projects
  • Side Projects
  • Education

Drafting a Software Engineer Resume

Career Summary

A strong Career Summary section should detail your experience with technologies and use cases. You can indicate which industries you have worked in, cite the number of years spent in each position, and offer a brief description of what it is you have built and with which languages. Note, some form of a career summary will be a must-have for most hiring managers, and is also a smart way to get eyes on your resume for a second or two longer. Here is an example to get you started:

(Name) is a front-end developer with 5 years of experience working with e-commerce companies. (He/She) specializes in using Java, PHP, and Ruby to build customer facing APIs, and also has experience integrating payment systems.

Skills and Certifications

A Skills and Certifications section is a great place to emphasize keywords that you want to highlight at the top of your resume. If you are an expert in Node.js, list it here! If you have completed multiple projects with Java, list it here! If you practice Test Driven Development methods, list it here! You get the idea.

This is the place where your potential client will most likely either keep reading or bounce to the next prospect — therefore, this is another must-have for your resume.


As you may have guessed, the Experience section is where you list your previous employment and expand on the claims you have made in your Career Summary. Here, you should note the length of the employment period, the employer, your job title, the name and description of specific projects, and the quantifiable results achieved for the employer. Without explaining your experience, you’d have a hard time convincing anyone to hire you, so this is definitely a must-have section. Here is a snippet for your reference:

Full-stack Developer
Codementor (2015-Present)

  • Created multiple web apps starting with requirements gathering, designing, developing, refactoring, and code implementation
  • Implemented the redesigned user dashboard with better UX and performance using JavaScript
  • Created 10 landing pages with HTML and CSS
  • Rotated as scrum master to facilitate team performance on current tasks

Freelance Projects

If you have already completed other freelance projects, be sure to include a section outlining your most notable work. This is a great way to make the case for your development prowess and demonstrate that you have the project management and communication skills it takes to make a good freelancer. Freelance projects completed with other clients help to build trust and credibility, especially if they were done remotely. That being said, if you don’t have much freelance experience, this section is optional and can be substituted with side projects.

Side Projects

Side projects could include your own passion projects or contributions you have made to open source projects on GitHub, SourceForge, or other repositories. If you are sharing passion projects, ideally you have a completed project with active users, even if it’s just among your friends. Like freelance projects, side projects are optional, but aim to include one or the other.


Although it’s becoming less relevant, especially when it comes to software development, many engineering managers still want to see a section for education, and this is generally considered a must-have. Leave a little room at the bottom of your resume to list any tertiary education, master’s, majors, minors, and other academic achievements. If your university education experience is unrelated to the skills required of a freelance programmer, feel free to substitute it for certifications for programming classes or bootcamps.

Software Engineer Resume Samples

Here are some links to software engineer resume samples for your reference. Customize and pick the style that best suits you and your experience!

Live Career
Visual CV
Job Hero
Best Sample Resume

Resume Litmus Test Questions

My Resume

In reviewing your resume, you should try to ask yourself the same questions that the hiring manager might be asking themselves — if they spend more than six seconds on your resume. Based on our experience at CodementorX matching clients with talented developers — here are the resume litmus questions we’ve come up with:

  • Have they demonstrated a variety of project types?
  • What are their technical strengths?
  • Have they shown continued skill development throughout their career?
  • Do they demonstrate project management skills?
  • Do they showcase leadership abilities?
  • Is their experience suggestive of the soft skills needed to work with clients and other team members? I.e., collaboration, communication, adaptive, reliability
  • Do they have experience in our industry? (nice-to-have)

If you want some more insight from the hiring manager's perspective, you can check this previous post: 10 Freelance Engineer Interview Questions That Will Make or Break Your Project.

What Makes a Good Developer Portfolio?

A portfolio is not a resume. It is a showcase of completed work rather than a description of experience. For a developer, developing an online portfolio is the perfect way to flaunt the tricks of your trade. A web developer’s portfolio is the evidence to support the claims you have made in your resume. If a resume is where you talk the talk, a portfolio is where you have to walk the walk.

The most common form of a web developer’s portfolio is a personal web page. If you have a lot of work on GitHub, GitHub Pages is an easy way to turn your repositories into a website that can serve as your portfolio. The great thing about an online portfolio page is that you can customize it to reflect your unique talents and interests. Also, be sure to inject a shot of personality, but remain professional.

Domain Name

The logical starting point is your domain name. A professional way to build your personal brand is to simply use your first and last name in the URL. If your name is unavailable, you can always modify by using initials or adding an extra word that describes your profession, like dev, developing, design, etc. If you have a lab or a workshop, feel free to tack this on as an alternative.

Don’t, however, get too creative with adjectives like “amazing,” “talented,” “marvelous,” and such. An even bigger faux pas would be using unrelated nouns. Do you use throwing stars? Have you reached nirvana? No? Then spare us the “ninja” and the “guru” charade.

Introductory Statement

Your resume has already provided a Career Summary, so there’s no need for an in-depth “about me” or “objective” here. A brief introduction of your skills and interests on the first page will suffice. If you’re not already familiar, the subreddit r/webdev is a great place to find and reference other developer portfolios and get feedback on your own. Here’s an example of a concise introductory statement:

Tom Smith
I’m a web developer from Boise, Idaho. I focus on front-end web development to bring the best experience to your users. Here is some of my work.

Below is a portfolio example from a CodementorX freelancer with a great introductory statement, personality, user flow, and visual appeal:

G’day Ivan
Ivan Lutrov’s Portfolio

Under your introduction is a good place to include links to your preferred contact methods, social media, LinkedIn, GitHub, and StackOverflow pages, if you are active on those platforms.

Both GitHub and StackOverflow track the frequency of your usage. To show dedication to your trade, you should try be continuously active on both of these platforms. If you have long periods without any activity on your GitHub and StackOverflow accounts, you can consider whether or not these will strengthen your credentials.

For more tips on how to best integrate GitHub projects with resumes and portfolios, you can read this blog post: GitHub Vs. Resumes: Why Bother With A Resume in the Age of Github?

Project Samples

The crux of your portfolio is, of course, examples of your work. You should include a snapshot of the project, that includes the following:

  • Project name and description
    -Objective of the project
    -Tech stack used
    -How you built the application
  • How to run the application
  • How to test the application
  • Software tools used
  • Tangible results
  • Screenshots or animated GIFs showing user flows (if customer facing)
  • Links to web pages or installers for desktop applications
  • Links to code

When providing links to source code, it’s best to follow Folder Structure Conventions. This will make it easier for clients to follow your project and will demonstrate that you are organized, which potential employers will highly value.

Your creativity and the presentation of your work should speak for itself, but you should also show how you got there. Clients want to know not only what you built, but how you built it. Developers work by a process and you should demonstrate that you have one.

Quality is another important point. You don’t need to share every project you have ever completed. In fact, you shouldn’t. You should select a sampling of three to five projects that represent the depth of your experience and the level of your skills.

If available, use testimonials to add social proof to your portfolio. Don’t be afraid to reach out to former clients and ask them for comments, thoughts, or reviews of your previous engagements and the resulting work.

What if My Work is Protected?

Some of your previous projects may have been for internal use, or may be protected under non-disclosure agreements. If that’s the case, the first thing you should do is request permission to use parts of the project. If you have maintained friendly relations with your previous clients, and using portions of the project in a limited capacity does not threaten their business advantage, they may be willing to let you share it in your portfolio.

Share what you can. If you can’t share links to internal software, share screenshots. If you can’t share screenshots, share wireframes. If you can’t share wireframes, explain your involvement in the project, skills used, and skills learned.

If much of your best work is still locked up in NDAs, it will be more important for you to be making consistent contributions to open source projects or fill your portfolio with your own side projects.

As a freelance software engineer, you should be aware that employers and clients have a need to protect their proprietary information. That being said, make sure you know what you are signing and never agree to anything that will inhibit your future ability to find work. To learn more about all the ins and outs of NDAs, you can reference this previous post: The Essential Guide to Non-Disclosure Agreements.


In addition to sharing your professional achievements, don’t be afraid to show a little personality. There are hundreds of boring template portfolios out there. Don’t be one of them.

It’s perfectly acceptable to include a photo of yourself (of at least business casual quality).

Another way to add personality is to share something not related to your professional life. If you want to tell the world that not only are you a skilled programmer, you also make music, go ahead! If you want to let your future clients know that when you’re not writing code, you’re crushing it on the rugby pitch, perfect!

Sharing something about you makes your digital self a little more “real”. Feel free to share, but maintain professionalism. Don’t share anything you wouldn’t share with your grandma.

Here are several portfolio examples from CodementorX freelancers for your reference.

Francisco's portfolio
Francisco Presencia’s Portfolio

Noah’s Portfolio
Noah Appel’s Portfolio

Portfolio Litmus Questions

If you’ve done it right, your portfolio will be an important part of your marketability as a freelance developer. Just as you’ve drafted your resume with potential clients in mind, you should consider your ideal client as you design your online portfolio. People looking at your portfolio will want easy access to key information.

A good portfolio has a limited number of clicks, displays your programming skills, personality, and project management habits. Here are some questions to help you get in the mindset of recruiters and clients:

  • Is the user flow intuitive (both of the portfolio itself and the sample work)?
  • Do they communicate simply and clearly, in the language I work in?
  • Do they work by a process?
  • Do they explain decision making of design, architecture, frameworks, and coding style?
  • Do they document their work ?
  • Does it seem like they can deliver results?
  • Will they be an okay culture match?

Still need more inspiration? Here’s a detailed post on 12 things to include in your web developer portfolio

Developer Communities and Freelance Platforms

If you want to grow your skills and build a reputation as an enthusiastic programmer, consider getting more involved in developer communities like Codementor. Serving as a mentor is a smart way to hone your skills and share your experience with other aspiring programmers, which can be a great way to advance your freelance career. You can also publish articles on the community page, sharing knowledge, insights, and ideas.

In addition to building experience to bolster your resume and portfolio, contributing as a mentor or community member will help you make a stronger profile when you are ready take on more mentee or freelance clients. Like most other freelance platforms, CodementorX provides profile pages as opposed to a resume or portfolio. Demonstrated involvement in developer communities will help make your profile stand out when clients come looking for developers with your skill set. Here’s what to expect:

about david

engineering expertise

reviews and ranking

programming posts
Oyeniyi's Full Profile

project experience
Project by Francisco

working experience

Feel free to peruse profiles of our vetted developers to get inspiration when you are ready to build your own.


Having a strong resume has long been the primary tool for job seekers to relay their skills to potential employers. Today, as the market evolves, and everything is digital, more is expected. An online portfolio is often considered a requisite supplement to a resume — and should also be seen as an opportunity for you to give clients a more detailed peek into your professional background.

If you are ready to take your career as a freelance software engineer to the next level, a solid resume AND portfolio — to present your tech skills, professional achievements, and yes, personality — are essential.

You can apply to become a CodementorX freelancer here!

Become a CodementorX developer
Apply Now