Start by contributing to some other peoples open source.
One day you’ll notice something you need (and possible other people need) that is not readily available out there.
Then create your own open source and share it to all.
A product at a smaller scaleAn open source library is mini product, but unlike actual products, its audience is developers.
So there are less concerns around marketing, user design and so on.
You only need to focus on the coding side of it, so it has a far lower cost.
Compared to building actual products, open source cost is relatively smaller.
If your open source becomes popular, you’ll get other contributors wanting to add in features to it, they will make a Pull Request.
Your job is to review the Pull Request (PR) and decide whether to approve it.
I have an open source which I created 3 years ago.
Since then I haven’t updated it much.
Yet it still gets updated, even to the latest Android X version, without me doing anything.
I just need to review, test it, and re-upload.
Focus on technical learningAs it’s named open source, provide all your source code to others.
So if any bugs (hopefully not stupid ones) are found, other contributors will notify you and even make a PR to fix it.
From there you get free testing, as well as fixes — nice!All these are technical inputs and discussion.
The focus is on the technical side.
You will get less input on marketing, product and usability concern.
If there’s some usability lacking in your open source, contributors will add it themselves — you don’t even need to worry about it.
Some real casesCan open source make a person’s career?Among Android developers, everyone knows Jake Wharton.
He started off with open source and now his work is known by almost all serious Android developers.
He now works for Google.
The RefLog — Jake Wharton in Action — The GitHub BlogThe GitHub Training Team recently caught up with Jake Wharton, legendary Android developer, OSS contributor, and…github.
blogIt’s not that simpleAlthough writing open source is easier to maintain, has less initial cost, and is focused on technical, it still has its own challenges.
The likelihood of creating an open source that will be adopted by many is not high.
To create each open source takes time, effort, thought, and coding architecture considerations.
To review PR, test and upload take time as well.
I don’t think just anyone could create a lot of popular open source.
There aren’t many people as talented as Jake Wharton!If this doesn’t challenge you, and you think you could stretch even further, and want to do something more real life and related to everyone, check out the next possibility.
Build a real software productIn the 70s, engineering was the hot course many wanted to study.
However, these fields could hardly teach you produce something useful on your own.
Even if you could produce it, you would then have to to market it to everyone or no one would know your product.
Fast forward to today.
Creating a Webpage or an App on your own is so much simpler.
Marketing it to the whole wide world on your own might not be easy, but to have it reach 10,000 users is not an impossible feat anymore.
So having an actual product (not just a school or uni assignment), publicly available with good user feedback, on your resume has a great deal of value.
A holistic experience of learningHaving an actual product gives you the complete experience in building an App — from the ground up to publishing it for the public to use.
Every technical aspect needed in building your product will be learned during the process.
Besides technical learning, you’ll also gain valuable insights into marketing your product.
Suddenly you realize that every single nuance of design is important and that your work flow can make or break your design.
It’s not just the technical aspects of it — to make it better, you have to know your user behavior, and which features work and which don’t.
Analytics is another topic you’ll get into.
You will gain such valuable experiences!Then you realize you can no longer do a great job as just a single person.
Nevertheless, you’ve done at least one to know what is it to put a product out there.
A real caseI know of a Korean friend, who did not speak good English, looking for a designer job in an English speaking country.
Despite her language issues, by having her profile ready on the web she could easily show the interviewer her work.
She got the job without even speaking much English!.(Now her English has improved tremendously.
)As everyone knows, the founders of Google, Microsoft, Facebook and others started building their products while pursuing their degree and they have not looked back since.
It’s not that simpleWhile having a successful product will give lots of weight to your profile — in fact could be a career and business in itself — it is a very difficult job to maintain it, let alone grow it.
More time and investment will be needed over time.
As technology changes, you’ll need to update your product.
If you’ve already ended up with a full time job, perhaps have got married and had children, maintaining your personal product on a regular basis would be a challenge.
Well, that’s my excuse!.Look at Bill Gates, Steve Job, Mark Zuckerberg, Larry Page, Sergey Brin — if they can do it, why not you?.You might be the next one!RecapJust to recap, the 5 things you should do to color up your Resume:Technical Social MediaScoring on StackOverflowBlogging on technical topicsCreate an open source libraryBuild a real software productIn term of the effort and impact (if effort done properly), I present this chart:These things, if done right, could weight more than your Computer Science Degree.
So don’t wait till you finish your education!Life learning is a journey, it’s reflects you better than just your degree.
.. More details