The harder your work is, the more material you have to promote yourself. Don’t see finishing a project as your last step. Take what you created and tell the world. If you wrote code, and you took days to figure out the problem and you think you have something others can use, then take it the distance. Don’t just stop right there. Make your hard work have legs.
I once spent a few weeks on a project I was proud of. For a time, there wasn’t anything like it for free or even for pay. I worked on a 3d network graph that was more performed better than any other thing like it. It could generate a graph with over a million nodes in the browser. And I had to write C++ for the first time to do it. It got me props at work. I saved the day and saved a project from being dead in the water. I knew I could take it farther. WebGL or 3d graphics in the browser was a specialized thing at the time. It was not up very many people’s alley.
So I mentioned that on my LinkedIn profile. I listed the project under that job and I added node and THREE.js to my skills list. But I didn’t stop there. I changed the library so it could be of more general use and put it up on Github so that other developers could use it. If I was thinking more about it, I could have written the project up on my blog or on Medium and then promoted the article through various social networks. But it paid off anyway.
A couple years after that, a company that used 3d graphics as an interface for network engineers contacted me. They wanted me to work there bad. It was a remote job, meaning I could work from anywhere in the world at any part of the day. And they would offer me 15k more than the current job I had.
I had a skill they needed which few people had or listed anyone online for them to find. And they found me. I didn’t end up taking the job, because my current employer wanted me to stick around even more and offered me more to stay.
You should document everything you can. Even common things, like how to install a Wordpress plugin. It shows you can communicate with others and can explain the basics in words. But the hard things, even technologies rarely used, make it a priority. They stand out. The more diverse they are, the better.
I had done 3d graphics, machine learning and blockchain development which are complex subjects. Because I documented those accomplishments, they were proof I could do “hard things”.
Most of the things you learn in programming, you will have a hard time explaining to the average person. And some things you learn, you will have a hard time explaining to other developers, like WebGL. At some point, they get lumped into “hard things”. And you will reap the benefits of knowing these “hard things” by being handed other hard things. In fact, I got my shot at machine learning because of what I accomplished with WebGL. These technologies are not related at all. But the powers that be, that maybe only knew these things were “hard” thought if I could do one thing the average developer couldn’t do, I could do other things that were hard to understand. And it paid off for both them and me.