Why Would I Use a Template for My Developer Portfolio?

Tanner Hallenstein
6 min readSep 14, 2021

--

Ok, so I’m guessing you found this blog post because you were going through my portfolio (thank you for checking it out!). Maybe you were thinking, “huh, this site is fairly polished, not ground-breaking, but solid front-end development.” And then, oh no… You got to the click-bait title of this blog post. Can it be? Did your potential new hire use a template, and not even code his own home on the internet from scratch?! You couldn’t resist but see the truth for yourself. Say it isn’t so… Well, it is.

Yeah, yeah, it’s not that big of a deal and I’m being dramatic about it. But honestly, as a junior developer trying to show off their work for the first time to potential employers, it kind of feels that dramatic. You learn to code, you get some projects to show off, and you make a Frankenstein CV where you slam your projects at the top before work experience that probably doesn’t include much coding. You aren’t even entirely sure what working full time on a dev team will be like, or what specifically each hiring manage will look for. Imposter syndrome starts to set in.

So what can one do? Oh I know! I’ll design the most amazing portfolio an employer has ever seen. It’ll use tons of Javascript for cool animations. It’ll be part mini-game, part resume, and part perfect reflection of my personality. (Bonus points if I can throw in a low-opacity, close-up picture of the side of my face.) Well, as a junior developer, maybe, just maaaaybe, there are better ways to approach both learning and the job search.

Disclaimer — the people who do make those bad ass animated portfolios are most definitely badasses themselves and I sorely want to do the same once I posses the same level of talent. I’m just not there yet.

When I was looking into designing a portfolio for myself, I had all these ideas that, to me, are fun and exciting. It is my home on the internet after all and should be a place that I think is cool. I started looking at inspirational examples and quickly realized that all the best examples were made by UX/UI designer/developers. Uhh, I know Rails and bootstrap with enough JS to implement specific features, not full responsive animation… The few examples designed by junior devs with no experience were, well, less inspiring. Was I going to spend a few weeks making this dream portfolio, just for it to result in something mediocre? It was time to rethink my strategy.

Was I going to spend a few weeks making this dream portfolio, just for it to result in something mediocre? It was time to rethink my strategy.

I contemplated the purpose of my portfolio and how it fits into the rest of my strategy for landing a job. At this very early stage in my career, my portfolio is a means to showcase my work. The portfolio itself is not what I’m trying to sell. It is a sales tool, not the product. I, supported by projects and continuous learning, am the product. If I spend weeks developing the portfolio (even if it turns out really good), those are weeks I’m not selling.

Being fresh out of a bootcamp, now is the time to take a “good enough” approach. I love the saying “perfection is the enemy of good.” And in this case it’s the enemy of getting a job and learning. I needed to get a sleek and (somewhat) simple template that would give a professional impression without being being a false advertisement of my coding abilities.

Being fresh out of a bootcamp, now is the time to take a “good enough” approach.

I had a plan, and it was time to execute it flawlessly.

Aaaaaand- road block. I spent way more time looking through templates than I expected. Some had way too advanced Javascript for me to promote earnestly, and other designs were not at all to my liking. Eventually I found this template. It looked “good enough” and I went with it.

Finding the template was only the first struggle. After buying and downloading, I opened up the files. “Wait, there’s a lot of code here. Where are the file structures I’m used to? What’s this huge block of nonsense text??”. On previous projects I had small files for each css component and Javascript function. This template did a decent job with file management, but it also had huge css files that covered many components, and files containing massive chunks of code with no indentation. I hadn’t worked with css files so large, and certainly not files with no styling.

This was my first experience learning an existing code base, and it was not easy. Each time I tried changing one bit of code… that I thought should take only 30 seconds… and it just. would. not. work… AHHHHRRGGHH. It was such a headache searching through the files. Even using the search-all-files feature, it was a pain. I would eventually find where the { color: black; } was, just to change it, and have the text still be black on my local server. It took loads of inspecting the page and figuring out what classes and states of each elements made everything the way it was. For a bit I was wondering if I had made the wrong choice, and if creating it from scratch would have been easier.

One of the blocks of text….

Then, like a good mechanical keyboard, it started to click. I was getting faster at figuring out what the classes on each<div> were doing. My way around the chrome inspect feature also quickened and became a great tool for understanding how each element was displayed. My editing became faster and it felt GOOD. Even working with a contact form that used PHP (which I had never touched before) didn’t feel as daunting by the time I got around to doing minor customizations to it.

I’m both grateful and lucky for the chance to work on an existing code base before getting my first job. I can imagine how stressful the first days on a job would be without this experience. I’m sure there are better, known processes to dive into an unfamiliar code base, but this was a fantastic first dip. I knew that a template would be a good strategy for speed and getting me back to my projects. I didn’t know that it would come with a new challenge and learning opportunity.

Now my portfolio is almost done. The code is set and features that don’t need to be there (such as client reviews) are removed. All that’s left is an updated headshot. I was a little weary about the strategy I took, but in the end, I’m very happy with my decision. It wasn’t quite as fast as I expected, but still within a couple full days work. And, it definitely looks better than what I could have designed. And that’s ok, because I’m not a designer! My portfolio is a (fairly) sleek sales tool that simply shows off my projects. And that’s really the most accurate and honest way to show my abilities to employers.

In the future, I want to make that dream site. The one that gets put on blogs about top developer portfolios. For now, though, mine is doing exactly what it needs to.

--

--