The Junior Developer Journey - Part 5
Tags: webdev, codenewbie, beginners, career
Published: 2022-10-23 14:39:05

This post was originally posted [on my blog](https://lisilinhart.info/posts/the-junior-developer-journey-part-5)


# Building a public profile

Most junior developers will have some kind of idea of what role they might want to hold in the future or for what kind of company they might want to work. However, before most people can the dream job, they will have to build some kind of credibility. Getting that dream job will very much depend on what impression the employer gets from your interview. If you have some previous experience and work to show, it will increase your chances by a lot. Of course, a lot of developers will get jobs without a portfolio or side projects, but with more visibility, your job opportunities will also multiply. This visibility becomes even more important if you don’t have a computer science degree. People with a degree can get away with not showing so much proof because, with their degree, the expectation will be that they know a lot of the basics. 

## What that meant for me
For the first internships I got hired for, there were two important things to show: that I had built websites before and that I had some experience in programming, where my bachelors degree was sufficient. Later when I had a few projects and websites to show, I built my profile in a different way. I focused a lot on web animation and coded dozens of free examples on [Codepen](codepen.io/lisilinhart/). I started writing blog posts about that topic and engaged in Slack channels dedicated purely to web animation. After some time I got a lot more oppourtinities in that area: I started writing articles for magazines, I started speaking at conferences and I got client offers to help them out in that area of web animation. 
 
## Building a profile
There is not a single right way to build a profile or portfolio. It depends on what you enjoy doing and what you are good at. There is no use in recording youtube videos if you hate standing in front of a camera. However there are some common strategies to show your work and expand your network. Building a network and getting to know your technical community can also be helpful outside of looking for a job because you will get to connect with people who can help you out and might be useful in the future when you want to change jobs or just need help. 

## Blog Posts
One of the simplest ways to get started in showing what you are working on is to write a blog post about it. The “junior” learning perspective can be  super useful for other people who are learning the same topic. You can either set up a simple medium.com or dev.to account to directly blog on those platforms or set up your own blog. By writing about technical topics that interest you, you will improve your writing skills and learn how to transfer your knowledge to other people. 

You can read [this tutorial](https://www.freecodecamp.org/news/how-to-write-a-great-technical-blog-post-414c414b67f6/) to learn more about writing your first blog post: 


## Meetups
Meetups are great for getting to know people in your area or even finding a mentor. Speaking at meetups can be your start at speaking in public and it can ease the fear of speaking in front of large groups. Before I started speaking at conferences, I spoke at various meetups from my university and local agencies. For many meetups, especially smaller meetups, it’s a struggle to fill all of the speaker slots, so this makes it quite easy to get a slot compared to larger conferences. 

## Contribute to open source
There are lots of great open-source projects and initiatives like Hacktober, that make it easy to contribute to already existing projects. Small open-source projects (fewer than 10 contributors or 100 stars on GitHub) can be an excellent way to get involved with open-source. The best way is to contribute to a project you find interesting because it will allow you to gain a deeper understanding of how it works. Here are a few ways how you can contribute:

* Improve the Readme file and the description of the project itself
* Add examples of how the code works and how to use the project
* Add translations for a different language
* Answer questions in the issue or pull request section of a project
* Fix typos or rearrange files to make the project more organized

Many projects will have how to contribute sections, that show what contributions are needed. Make sure to look out for those, to make sure your contributions are useful. You can read the following guides that teach you all about open-source contribution: 
[https://opensource.guide/]( https://opensource.guide/)


## Record a video
Recording videos can also be a great way to share your learning journey, especially if you prefer speaking to writing. I have never created a youtube channel to share my learning journey, but there are various videos of me on youtube from different meetups and conferences that people still watch. The funny thing is that [the most watched video of me](https://www.youtube.com/watch?v=mJ9KajSVG0Q) speaking, was a video that was recorded at a really small local  meetup. The talk I gave was about how to do data visualization with python and there were only around 20 people there. But over the years it reached a lot more people through the uploaded video on youtube, who found it very helpful, because it was a basic and short introduction to the topic, that I normally don't have much time to explore.

Here are some ideas on how to get started:

* Talk through how you solved a particular problem and recreate your steps as you do so
* Demonstrate something you just learned about a programming language, framework, or tool
* Record yourself while you work on a side-project

No matter what format you are comfortable with, videos are certainly a great way to share your knowledge!

## Starting side projects
Side projects are a great way to move your learning in a direction that you are interested in. In a company, you will often not be able to choose the projects you would want to work on, but by doing side projects, you can learn more about topics that you find fascinating. Side projects are great for showing how much experience you have during a coding interview. It will make clear that you are passionate about learning and can go that extra step of spending some free time to improve your skills.  The great thing about side projects is that there is no pressure or deadline. It doesn’t have to be something that makes money or is super useful, but can just be something you enjoy creating. 

Here are some great side project ideas I have seen over the years:
* One-page layout pages
* Geometric Art
* Quiz games
* Popular service lookalike
* Tribute page
* Counter or countdown tools
* Digital postcards
* Online CV
* Any kind of generator (Jokes, Words, Names, … )

## Exercise 6 - Building a profile

There are many ways to build a profile and expand your network. It’s important to find a way that you enjoy and that you are good at. If you are not sure what you want to do, you can try out different things and see what you like. Here are some questions to ask to find an area that you can do to build a profile upon and expand your network.

| Topic | Questions |
|:-|:-|
| Blog Posts | What topics do you want to write about? What topics do you enjoy reading about? |
| Meetups | What meetups are there in your area? |
| Contribute to open source | What open source projects are there that you can contribute to? |
| Record a video | What topics do you want to talk about? |
| Starting side projects | What side projects could be fun to build? |