Portfolios have been used to promote graphic designers, photographers, graphic illustrators, and artists, but they can be just as useful to software engineers and developers. A software engineer is not just someone who writes code all the time. More often than not, software developers hail from different professional backgrounds and career tracks, and are passionate about a lot of things. A portfolio exhibits the creative side of a software engineer who’s willing to invest time in explaining their work not only to the general public, but to recruiters, hiring managers, and other engineers.
What a Portfolio Is, and Why You Need One
A portfolio is more than just a resume. It’s a portal into your world of creativity and engineering prowess. Just like a company advertises its brand through a portfolio for its services and products, you can too as a software engineer.
A portfolio documents items that are not normally in a resume. As a software engineer, you are what you do. A picture is to a photographer as a project is to an engineer.
Your resume may speak of skills that you currently possess, but without projects to apply them to, they’re just hash tags and labels. A portfolio organizes the information normally found in a resume based on projects and marketable skills.
To keep up with rapid technology changes, you should be current with your skills. Skills are often related to the projects you accomplish at work or in your own time. A resume can be boring if it’s just plain text. A portfolio can document your projects, highlight the skills relevant to those projects, and link to live demos, video walkthroughs, and source code repositories.
Like a resume, a portfolio can be printable, but it’s best to be in the format of an interactive website so that it can be searchable on the Web and always up to date with your latest projects.
If you’ve encountered challenges in a project and successfully solved them, document the project in a portfolio. Doing so will not only prove your technical accomplishments, but will also highlight your problem-solving skills and persistence.
During a job interview, a portfolio can be a conversation piece with recruiters, hiring managers, and other engineers. Speaking about your portfolio might just leave an indelible impression on your future boss for years to come.
Planning a Portfolio
Like any other web development project, your portfolio website can be implemented in many different ways. Consider asking these questions while planning your portfolio project.
Static or dynamic? Will your website be a statically generated set of pages or a dynamic one with a database?
Single-page or multi-page? Will your portfolio website appear as a single-page application or SPA, or a multi-page website?
Responsive? Will your portfolio website be portable across multiple browsers, platforms, and devices?
What’s your budget? Are you looking to spend a considerable amount of time and money to make your portfolio website?
Answering these questions will help you decide where to build and host your portfolio.
What’s in a Portfolio
Creating a portfolio website is like writing an article. First, you need to create an outline of what you want to include in your portfolio website. Here are some recommendations.
Since a portfolio website is all about you and your accomplishments, remember to introduce yourself in a friendly but professional manner. Besides your name and role(s), try to add an original tag line or quote that you live by that conveys your personality. Add a short list of goals for your next project or role if you have one to match what your prospective client or recruiter is looking for. Although not necessary, you can also describe your personal interests.
The image below shows that About page of Andrew Borstein.
The crux of your portfolio website is your projects. Step back and take a look at your past achievements and select several projects you’re proud to showcase. For each project, you can do the following:
Organize all the information needed to describe a project in terms of words, pictures, videos, and source code, if available.
Arrange your projects in a grid or list presentation.
Label or tag the skills involved in creating the project to include programming languages, environments, frameworks, and deployment.
Here’s an example of that from the portfolio of Rafael Cafarati.
Provide enough contact information to reach you either by email, phone, or a web form. List additional links where recruiters can learn more about you, such as links to your LinkedIn, GitHub, and/or Twitter profiles.
Here’s an example for the portfolio site of Jack Tomaszewski.
Link to a blog that you maintain that documents your thought processes and writing skills. Recruiters are just as interested in your communication style and your sound reasoning.
The image below shows an example from the site of Matthew Williams.
If you’re a freelancer accepting appointments from a potential client, embed a calendar app or provide a link to one. Simplify the process for a talent recruiter to speak to you about a position or project they’re looking to staff.
Creating a Portfolio to Showcase Your Engineering Abilities