Building an effective tech portfolio

How I designed my first portfolio and got my first internship at Google

Arman Hezarkhani
Last Updated
April 2, 2021
Topics —

Finding a new job is hard, but knowing how to tell your story can definitely help. Especially as developers: we’re fortunate to have work that speaks for itself.

In this post, I’ll describe how I built my first portfolio and got my first internship at Google. (I’m going to dive right into it, but if you want to know a bit more about me and my story, you can scroll down to the bottom of the page 👇).

Parthean Interactive Lesson
How good is your design eye?
TEST YOUR SKILLS

1) Choose your dream job(s)

The first step to building anything is to define the user. In the case of an engineering portfolio, your user is surely a recruiter and that’ll inform a lot of its structure. But, you can determine even more about your portfolio’s user by defining what company that recruiter works at.

In my case, I knew I wanted to work at Google. I always loved their culture and products and in college, I wanted to be a part of it. But this doesn’t have to be your goal, too. You might want a smaller team or a different culture entirely. Either way, it’s important to list 1-3 dream jobs so that you can understand exactly what they’re looking for: Do your research.

Note: If we had unlimited time, we’d do research on dozens of companies. Unfortunately, we don’t have that kind of time. By choosing your dream company, you’re orienting yourself and your portfolio towards the type of company you’d love to work for. After that, you may or may not get the job at your company -- that’s fine! But your application will show your true self, and it’ll work for the companies you fit best with.

Don’t know what your dream job can be? Don’t sweat it. Here are some resources to help you find great companies and their job opportunities:

Other great options:

2) Do your research

Now, we have a list of 1-3 companies that we’d love to work at -- let’s learn about what they’re looking for. Don’t just look for their technical qualifications or requirements, dive deeper! Learn about what experiences have worked for other people, what technologies they use, and their company culture. Here are some ways you can conduct this research:

  • Network Search
    This one may be a bit harder, but try and find people who can answer questions about the company. They may be in your network already, but you can also find these people on online communities such as Reddit, Facebook, or Linkedin. People want to help -- just reach out!
  • Website / Social Media Deep Dive
    Most companies have content on their websites, in their blogs, and on their social media. Dive deep into this content, learn about how they speak and what brand and culture they emulate.
  • Glassdoor Search
    Glassdoor.com is a company that lets employees review companies. It gives you a clear look into what working at these companies is like. It can also give you a deeper understanding of what they’re looking for in potential employees.
  • Linkedin Experience Research
    Search for current employees of these companies on LinkedIn. Extra points if these people have the same role you’re applying for. Look at what experiences they had at the time of their application -- this can tell you what worked for them.

You know what the company is looking for and you understand their culture a bit better. Keep this in mind for the rest of the process and be sure to emulate that as much as you can!


Parthean Interactive Lesson
12 Timeless UI Patterns Examined
LEARN MORE

3) Highlight your projects

Now, you know what your dream companies are looking for. Take a look at your resume and your experiences and ask yourself: how can I highlight my experiences so that these people want to hire me?

Don’t have projects? No problem! Here are a few tips to help you find them:

  • Work on projects with local businesses
    Many local businesses are lacking modern technology and you, the incredible engineer that you are, can help them! You can literally walk down the street and approach any business -- coffee shop, shoe store, you name it! -- and just ask to make them a website, an app, etc.

    You’ll get a ton of no’s, surely, but don’t let it get you down! You can help out a small business in a meaningful way, and beef up your resume, if you keep this up!
  • DON’T Blindly follow tutorials
    There are a ton of great tutorials out there that yield full, technically complex projects. View these as purely educational or foundational for your projects. Don’t just build a tutorial project and put it on your resume -- instead, build a tutorial project to learn how it’s done, then build your own from scratch OR build upon it in a significant way.
  • Contribute to open source projects
    Open source projects are generally hard to find and break into. Finding projects on Github that have "good first issue", "help wanted", or "up for grabs" can be a helpful starting point for you to browse around and see what's interesting. Compilations such as Up for Grabs can be helpful.

    Second, remember that it's not just about the code. Help improve the documentation if you notice that there are holes there, or perhaps even just raise a small PR to fix a typo. If you're really comfortable with a library, you can help others who are stuck and asking for help in the Github Issues section.

    The best open source contributions are usually when you are personally frustrated with some part of the experience of using a library and are able to help fix it by raising a PR.

    There are too many things to mention here, so if you're curious to dive deeper into this, check out Open source Guide
  • Work with early-stage startups
    Along those same lines, you can also join an early-stage startup for any amount of time (and even get paid!). Like open source projects, startups are already established, impact-driven, and structured. Furthermore, you can get some great mentorship from the team!

    To find good startups you can work with, I’d recommend searching through Angelist and reaching out directly to the founders!

    By the way, I run a startup (you’re on our site right now -- welcome!). Reach out if you’d like to work with us!

4) Display your projects

Last step? Show it off!

Making a portfolio website can be one of the most fun things you do. Don’t be humble -- show off your work and express your story. Remember the user -- the recruiter from your dream company -- and tell them your story through your projects and through your design.

For design tips, check out 10 Design Tips to Level Up Your Next Project

Personally, I think it’s always helpful to start with examples, so I’ve compiled a list of GREAT portfolio sites (some of them are my friends, too!) to show you here:

Parthean Interactive Lesson
The world is poorly designed, but copying nature helps
LEARN MORE

A bit more about Arman:

Hey! I’m originally from New York and I studied Electrical & Computer Engineering at Carnegie Mellon University. I’ve interned at Google twice, taught web development at Carnegie Mellon, and started 3 companies. Reach out any time on Twitter or Linkedin!

Highlighted Work at Google:

One Last Thing

We're growing a design for non-designers community where we curate free 5 minute lessons to help you get smarter every day. For more design tips, case studies, and principles, join our community!

Or try a free design lesson instead.
Thank you! Your first lesson is on the way!
Oops! Something went wrong.
"The Design by Parthean program has been mind blowingly great."
Jenny Han, Software Engineer
"I love the idea of improving one's self through a small commitment of time each day."
Nikhil Swaminathan, Student