It's important to acquire skills and learn various parts of development but in order to get a job its equally important to present your skills in a meaningful way. That is why we recommend that you build a portfolio - to demonstrate your ability to potential employers.
In this article, I will explain how to build a good portfolio with actionable items.
The most concrete way of proving your skill set is - to show. You should strive to build quality projects that showcase your knowledge. Host them up online so that you can just demo it by just sharing an URL (use services like Github-pages, Heroku, Amazon AWS etc).
Back your projects with code(put them up on Github) that people can see. Code and the project is your chance to show that you care for the details. So please lint, add documentation, follow style guides and make it presentable.
It's a bonus to work on a variety of projects (Websites, CLIs, Visualisations, Games, Apps, Libraries). The deeper and non-trivial they are, better are your chances for hiring.
Actionable Item - Figure out a few good projects that you would like to do, add depth to them, finish them, host them online and make them presentable.
If you are looking for some project ideas, ping me on Twitter. Will help you in best possible way.
Open source contributions
It's important to be able to write code and build your projects but its also equally important to be able to read and contribute to an existing codebase. A great way to do this is by following and reading a few open source projects on Github.
The challenge with this though is finding a good project that matches your current skills. You should either ask about it in communities or seek a mentor who can point you in the right direction. There are a lot of projects which have specific issues that are labeled as 'good-first-issue' which is primarily for beginner devs to get started with open source contribution.
Actionable Step - Look up the list and try to find a project and a few issues that you can at least read, understand and try to work on.
I am writing a beginner's guide to open source contribution. To get a free copy of the book, follow me on Twitter and send me your request as a DM. Will share the book with you once it gets completed.
Personal website with an active blog
Well, now is the time to put them together and build one platform to showcase your work and self. You should build a good personal website. Your website should reflect who are and shouldn't just be another template website. It serves as one point information source for people looking you up/potential employers. So make sure that the following things are listed properly -
- Your Projects - You should also add descriptions about why and how you built a particular project. What did you learn while building them. Your reflections.
- Blog - Having an active blog shows that you care to document, can organize your thoughts in words effectively and hence proves your communication skills. You can write technical posts about particular topics that you recently learned; non-technical posts about your experience learning/doing something. Make them informative and easier to understand.
- About section and links to Profiles - In about section, write about yourself, your interests etc. Provide links to Github, Twitter, LinkedIn etc. Also, make sure that these profiles are updated.
- Contact - A form or an email that makes it easier for people to get in touch with you.
Feel free to add more stuff and please make it look presentable. You can build such personal websites along with blogs on static site generators like Jekyll, Hugo, Gatsby etc.
Actionable step - Make your personal website and start writing blog posts.
Hope it helps you in building a good portfolio!