DEV Community

Cover image for Tips for making your interview assignment impressive
Marcin Wosinek for How to dev

Posted on • Originally published at how-to.dev

Tips for making your interview assignment impressive

Let’s have a quick look at how to make your next front-end interview assignment look as good as possible.

Stick to what you know the best

It can be tempting to kill two birds with one stone and try learning or practicing some new technology while applying for a job. For sure, it was tempting for me at some point. But this isn’t how you’ll produce your best code. It’s better to stick to what you know best and learn new things on a different project.

Image description

You know which option will get a better offer.

Make it easy to review

Make sure the thing you deliver is easy to review. The perfect flow from the reviewer's perspective would be:

  • get a working link
  • see with their own eyes that the application works as expected
  • dive into the code to see how you achieved what you did

Reviewing code without seeing whether it works feels a bit pointless. I’m not going to care much about how your code looks before seeing that it’s working as expected. And if it’s not easy to see it working, I may never bother to give it an in-depth review.

Image description

Give them everything on a silver platter

Deliver something interactive

For a front-end application, the easiest solution is to deploy it to one of the free servers you can use:

  • GitHub pages,
  • GitLab pages, or
  • Netlify.

Never send ZIP files

Sending ZIP files has two disadvantages that could be a deal-breaker just by themselves:

  • it’s inconvenient
  • opening a ZIP file is a security risk

Image description

Can be fun to open!

Make sure it works

And that it works on a range of browsers and devices. It doesn’t have to be beautiful, but it should be usable—no matter whether the reviewers are sitting in front of the computer or on a bus on their phone.

Add README.md

Any project you have needs a README, and an interview assignment needs one even more. You should shortly introduce the exercise you implement and link a usable application. After that, you can add some high-level documentation—what framework you used and how to build or test your code.

Show how you think

Share with the reviewer your thinking process. If you use some patterns or best practices, then reference them explicitly in the documentation. If you encountered some tradeoffs, describe them and explain why you chose the way you implemented them.

Make it shine

If you want to stand out, you can consider adding some of the following things. Doing so will probably be a bit beyond the scope of what the assignment asked for, but it can show that you know the tasks that you will perform every day at your job.

Make it engaging

Add a few routes to your project. You can keep the reviewer's attention a bit longer by having additional pages. Maybe a short /about so they can easily match this demo app with your CV?

Unit test

Setting up unit tests can be an excellent example of showing that you are a quality-focused developer. You don’t have to aim for full code test coverage: just a few tests showing you know what it is should be enough.

Set up lint & prettier

Many professional teams use linters and automated tools to enforce their chosen code style. In the front-end case, those will be most likely ESLint & Prettier. It can be a nice touch to your show-off project to do the same—if there are any consistency-focused developers on the team, they will for sure notice it.

Make meaningful commits

Git (or, more generally, version control) is a crucial tool for working together on projects in IT. The team collaborates on the Git repository, so good commit messages are essential. If you create a history that makes sense for an example project, it’s a good sign of how your contributions to the company’s project will look.

Image description

How about you?

What is your best demo project? Share links in the comments!

Top comments (2)

Collapse
 
rajeshroyal profile image
Rajesh Royal

Made this project for one of the companies I was interviewing with.

GitHub logo Rajesh-Royal / Employee-Management-Dashboard

An employee dashboard built with ReactJS, nestJS, MongoDB.

Employee Dashboard

This project Is bootstrapped with Create React App and using tailwindcss for UI library. Backend is built with node.js on top of NestJS and MongoDB. Development enviornment is 64bit Windows 10.

Netlify Status

> *project color theme can be changed from `src/data/projectTheme.js`*

Available Scripts 🚁

This project usages Yarn as package manager and in the project directory, you can run:

Root scripts

Client Script Description
start:client Starts the development server of client
start:server Starts the development server of server
start:all Starts the development server of client and server both
install:server Install server's npm packages
install:client Install client's npm packages
install:server:client Install server and client's npm packages
build:server build client production
build:client build server production
prepare Install husky hooks after package Installs

You can Ignore some of the weird looking commands they are related to heroku or netlify, but If you have experience with these platform and CI/CD pipeline go ahead…

IdidntMakeIt 🙂🙂

Collapse
 
marcinwosinek profile image
Marcin Wosinek

Thanks for sharing!