PersonalPortfolio - Scripts

How to Do Career Signaling for Yourself

Jet
5min

Opening

Personal portfolio and resume are both helping us do Career Signaling. But a personal portfolio’s help for career development far exceeds that of a resume.

What is Career Signaling

Simply put, Career Signaling is using a method that can be verified by others to prove to potential employers or partners your “invisible abilities” — such as intelligence, execution ability, responsibility, and problem-solving skills.

The most common way to do Career Signaling is: On social media, blogs, videos, and GitHub, continuously and publicly output:

  • What you’re doing
  • What you’re thinking about
  • How you solve problems

Its essence is not showing off, but making others start to trust you before they actually meet you. And this thing, for ordinary people, may be one of the most cost-effective ways to “increase good luck”.

Resume v.s. Personal Portfolio

In today’s job market:

  • Resumes are becoming less valuable
  • Personal portfolios are becoming more important

Because resumes can usually only tell others:

  • Your education
  • Which companies you’ve worked for
  • What positions you’ve held
  • What projects you’ve participated in

But the problem is:

  • Does graduating from a prestigious school necessarily mean you can get things done well?
  • Does working at a big tech company necessarily mean you’re excellent?
  • Are the projects written on your resume really ones you led?

Resumes can’t answer these questions.

But a public, verifiable Portfolio is different.

It’s a collection of your long-term output, such as:

  • Technical articles
  • Real project experience
  • GitHub
  • Videos, etc.

Others don’t need to hear your explanation, they can tell what kind of person you are at a glance.


My First Career Signaling

The first time I truly experienced the value of Career Signaling was during my Master’s program. During my studies, I would organize the abstract content from courses like algorithms and data structures into reproducible Google Colab code, and then continuously share it on the teaching system’s Forum. Later, the professor noticed my long-term, stable output and invited me to participate in some projects, and these projects even helped me earn back part of my tuition.

At that moment I realized: sharing is not just recording, it can really bring me opportunities. So I started thinking: could I create a platform with a broader audience to amplify employment opportunities before graduation? My choice was to create a blog.

There are many blog options:

  • WordPress
  • VuePress
  • Various ready-made platforms, etc.

At that time, I set two core requirements for myself:

  • Completely free, including creation and publishing
  • Content and presentation format must be fully controllable

After some time of selection, I finally decided to use VuePress-Theme-Hope to create blog content and publish it to GitHub Pages.

I really liked this system, but as the number of articles and components grew, I discovered a fatal problem:

The memory consumption during build was almost exponentially increasing. It always failed during build in GitHub Actions. After investigation, I found this was determined by VuePress’s operating principle: during build, all articles, routes, components, and plugin states must reside in memory simultaneously. This is a fundamental design issue that I couldn’t fix.

Show Problem

Open blog and the GitHub project.

Looking for Alternatives: Astro

Later I found the Astro tech stack. During build, it treats each page as an independent output to render, rather than treating the entire website as an application. This makes its memory consumption naturally linear.

At the same time, it can integrate with Vue, React and other ecosystems, which very much meets my expectations. Then I searched for alternatives in the Astro ecosystem, the core requirement being that existing blog content could be smoothly migrated. But I didn’t find a ready-made solution that fully met my needs.

Since there wasn’t one, I decided to make one myself.

For the new blog, I set three core requirements:

  • Can seamlessly use the Vue ecosystem
  • Existing blog content can be smoothly migrated
  • The system itself is highly extensible

Now this system already has a prototype.

Show Existing Blog

Currently it’s still under development, and many features are still not complete.

I set myself a Flag:

  • Before subscriber count exceeds 1000, organize this blog system into a reusable package and open source it.

By then, anyone can use it to build their own portfolio and do Career Signaling for themselves.