Hacker News new | comments | show | ask | jobs | submit login
Ask HN: Self-taught developers, what repo helped land your first job?
116 points by simplicitea 35 days ago | hide | past | web | 114 comments | favorite
If you're willing to share, which portfolio project do you think contributed most to you landing your first FT dev job, and what kind of job did you land?

I got my first job in a company that was desperate, because their only other developer was leaving in days. Got my second job under similar circumstances. And a third one. I did well at all of those companies and left on my own accord. I should also mention that none of those companies were even on a map as far as serious software development is concerned.

Reality is that companies that are not desperate will be picky, take their time, drag you through a bunch of bullshit interviews, etc. Just like every other developer I get pestered by recruiters on regular basis and I often see identical job descriptions that I saw two years ago, so after short interrogation of the recruiter it becomes obvious that those are the kind of companies that are forever looking and never really giving anyone a chance.

I suppose my advice would be: start with the desperate ones, build up your experience and credibility that way and climb higher.

Maybe there should be job boards for desperate company?

That's your standard cheap job board. I recommended one of my previous companies post on SO jobs, they're like "we can't afford any of the programmers there".

Desperate companies may be hiring through tech recruiters also. A lot of small companies don't have anyone on staff that can effectively interview and hire a programmer, so they hire someone to do it for them.

> forever looking and never really giving anyone a chance

Or they have some bad attrition.

DrChrono is looking for a Django developer to transform healthcare! Every. Day.

Also, Strikingly is hiring in their Shanghai office. The advertising works in that I remember the names, but it doesn't make me want to work there.

I know a few folks who've interviewed with them and they all independently said that it was the biggest joke of a non-interview that they ever had. None of them got past a phone screen and most of them I"d consider pretty good, sociable developers.

And how do you consistently find said companies?

I'm afraid I have no good recipe for that, I would suggest to "brute force" it - cast a wide net and filter approach. In my case it was mostly dumb luck really. You will now a desperate one when you see it - normally they will try to close the deal ASAP instead of jerking you around.

Another clue may be an interview that doesn't hit too hard technically.

It's a good starting point to be proficient with a very new/niche technology. For example I got my first full-time job at a similarly desperate company, because next to no one knew how to develop Windows Phone applications back then in my country and they were in dire need of such a developer. So actually I didn't have to find them, they found me. :)

It sucks, but networking. Desperate companies usually don't have to means to go through a formal interview process and they'll often hire someone solely based on recommendations.

I got my current job simply because a friend worked there. I had practically zero experience in the field.

Yes, it was recommendation from personal network for me as well.

Somehow I managed to land my first programming job in the most stereotypical means possible.

I had connected with this young startup through my budding network. I was young, they were young, and we were both involved in TeensInTech (formerly a community of teens interested in startups). I had done a couple rounds of UI/UX feedback for them, that they had requested via TinT. The company made a password & bookmark manager (not one of the ones that is available today. They want out of business).

One day they launched a major website overhaul. Excitedly, I went to their website to play around with it. Purely by chance, I fat fingered my password as I was entering it in. The login failed, obviously, but I was surprised to see that the password input on the failed login page was now filled with a mysterious looking hash. My assumption was that was my hashed password.

This spurred me to open my dev tools and look at the network requests to figure out what was going on. It turned out that their new website was powered by a new API which hadn't really been hardened at all. Within about an hour I was able to find an endpoint that allowed me to enumerate all of the users on their site, and another endpoint that returned a user's stored authentication details (hashed passwords, full usernames & URLs). I wrote a few lines of javascript that looped through all of the users, and fearfully received a dump of their entire credentials table. Obviously that is bad bad bad.

I sent them an email explaining the issue. Their website was promptly taken offline, hardened, and then I received a job offer.

tl;dr; I hacked my first employer's website, and they offered me a job for it.

Are you saying that the password field returned a password hash of the correct password when you mistyped it?

That's extremely bizarre.

The specifics of it escape me at this point. My guess is that it was a hash of the incorrect password. That wasn't necessarily the security risk, but it did spark my curiosity that led to the rest.

Seems like some misused form framework. They were potentially striving for Facebook-like functionality ("Hi Tom, welcome back") and got it wrong.

Tom never used Facebook. He preferred a different social networking platform.

I reported a similar issue in GitLab a while back where an incorrect password, entered in the login form, was echoed back to the user in the registration form! IIRC the registration form was picking up on the validation failure in the login form and filling itself in with the submitted form details.

I hope we fixed that.

Yes, I reported it as https://gitlab.com/gitlab-org/gitlab-ce/issues/14552 (confidential so you need permission to see) and it was fixed in https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3691

Cool, I removed the confidentiality from the issue. Thanks for reporting this.

I wish this incident was really an elaborate hiring scheme.

My first freelancing job (previous jobs were internships) came from this project getting to the HN front page: https://umbrellajs.com/

It basically skyrocketed from there to what you can see in https://francisco.io/resume/ , with basically all experiences afterwards building on top of that (either directly, by reference or just as credentials for the next ones). People (including Google) also seem to love https://picnicss.com/ and I normally use it for showing my front-end skills.

Something I found surprising is that I got a really high quality contacts from my public projects. I would say about 50% of the job offers I get through my developer persona are high quality which I consider (even if many don't work in the end) vs what I used to get through Linkedin or even Facebook (both closed now) which were exactly 100% low quality/SPAM.

Really like your resume layout. What did you build it with? Is that an open-source layout? Would love to use it.

I didn't think it'd be so interesting as to publish it separately, thanks! It's built on top of my own Picnic CSS (in above comment) but with many px/em/cm-specific adjustments as seen in https://francisco.io/resume/cv.css

Feel free to reuse any of the code under the MIT.

That is a really nice looking CV. I might take advantage of your generosity and do mine in a similar fashion, thanks!

Umbrella JS is a well deserving project. You won me over with the little animated illustrations. I feel like people have attached those to "quality" and "legitness"; at least I do.

I am going to play with that lib this weekend. Could be good for small Eletron/NW.JS apps.

Thanks! Nowadays I am leaning on my own https://superdom.site/ for simpler/over the weekend projects. I almost made it into a next iteration of Umbrella JS but thought it'd be too big of a change and decided to separate it.

I prefer superdom syntax and I consider it the last and best iteration I could make following jQuery's philosophy (there are a bunch of dead jsfiddles from Umbrella to Superdom). It feels a bit hacky but it's quite legible and intuitive. It is not so compatible (no IE/old Android) and the main thing missing from Umbrella is the whole AJAX side, but for that I mostly use the new standard fetch().

I keep telling myself I gotta make superdom's website worth of the code, but I never get around to do it :)

Just 'cause I'm a grammar nazi: you misspelled "Andreessen Horowitz" in your resume. Unless there's a company with a name awfully close to Andreessen Horowitz, of course.

I triple checked it and still got it wrong, thanks for the tip :(

Edit: fixed + added the favicon

Nice resume page. The umbrellajs link actually points to ubrellajs.com (missing the M)

Aside from looking really nice, that's a seriously impressive CV. Well done!

Hola de Madrid ;)

Hola, veo que estas en el slack de Madrid Devs (;

Nobody ever looks at my repos :(.

Software hiring is stupidly broken. Google has done much research on hiring and a code sample+cognitive ability are the two most important predictors of job performance.

Tell that to anyone that hired me ever.... The first time you'll even talk to another dev is your on-site.

When I was in charge of hiring once we made a huge deal of user repos and probably spent more time looking at them than resumes. Got some damn good engineers from that. But almost nobody does it that way

What about people that don't have much on their github? I like the idea of judging people based on their code, but I would say the majority of people don't feel like coding at home after doing it for 8+ hours day.

As far as I can see, there isn't really much of an alternative to coding in your free time. It's the only way to stay current unless your employer gives you time to improve your skills on the job. Which usually means you are using unproven tools in production.

Your choices are: only stay at jobs that let you greenfield the most cutting edge, experimental technology in production, constantly develop yourself by working on your own on the side, or expect to be outmatched the next time you look for a job (when those experimental technologies have had the kinks worked out and are now suitable for production. Then the cycle starts again).

Or you can do what my father's generation of programmers did: stay with the same company doing the same thing for so long that you are no longer in the game.

Currently working with a bunch of guys out of the game. Spending about 4 hours of free time a day for over a month was the only way to break into new tech and absolutely vital to my recent job search.

Learned some cool stuff, but also how terribly behind my company was

There's another issue - most of my code is stuff I've done for clients to make money (I can't show that on github), or stuff that I've done for myself to make money (I don't want to show that either).

That's happened in my field. I've helped a couple of C-suiters to recreate/edit their resumes. No one will advertise my services because they have to keep up the BS facade they've done everything by themselves. I wish the industry would call BS on excellent resumes, public speaking prep, EQ workshops, etc. We can't be good at all things but the smart exec knows how to find people with the right services and answers. Burns me up a bit.

Vince Fulco, CFA, CAIA vfulco[@]weisisheng.cn

I've been in the industry for a little while and none of my senior or experienced coworkers have impressive profiles or open source contributions. Unless you're junior, it's really not that big a deal compared to your actual experience and skills.

I always look at Github profiles when candidates have them. Problem is I'd say < 20% of candidates I've interviewed have it on their resume.

This is highly dependent on the company, small companies with a strong technical focus generally do better since the developers have more say over hiring.

No job I ever applied to they even took a look at my GitHub profile - and I own or contributed to 34 repos and have 81 followers. Not even when the interview process was guided by technicians my GitHub account mattered. And I actively point out the various repos in my CV. It's honestly a bit frustrating.

I'm involved in interview processes and hiring decisions at my current company - and rest assured that any code versioning accounts will be checked out.

In 2007 I was working on an open source dock for Linux called AWN (https://launchpad.net/awn).

It helped me get my first job at OpenedHand, working on free and open source software full time. I didn't have any previous experience nor a degree in CS.

What a blast from the past! Thanks for AWN, used it back in the day.. :-)

Stack Overflow's "most dreaded X" in the developer survey is a good place to look. I work on Salesforce.com, the #2 most dreaded platform after Sharepoint.

Getting a job in that sector was as simple as having some general development experience and being moderately familiar with the platform.

I've worked on Salesforce, SharePoint, and Lotus Notes, integrating them and migrating between them. Maybe I should just specialize in all the platforms nobody else wants. (Or maybe I accidentally already did.)

Ha! That's what I've done at work. I handle the custom code integrations - a Jenkins plugin, some gradle glue, a VSCode plugin and some custom git server side hooks. Everybody loves me for taking on the undesirable things.

I used to scan potential candidates Github repos but a recent job changed all that for me. A coworker was struggling at standup to handle a "deep get" in a JS object. I wrote a small function in five minutes and sent it over chat, thinking it'd unblock him and he could continue his tasks. He preceded to create a repo and added tests to the code and claimed it.

I imagine that in time, someone will look at that code and use it as a consideration for his employment and be just as disappointed in his output as I was. You may hate it but I love white-boarding with candidates. It's not a binary pass/fail exercise but a look into how a person approaches solving a problem and handling on-the-spot pressure. Sometimes things break in prod and the pressure is on, I want to work people that do well under that pressure.

Before I landed my first job:

- I found AngularJS a few weeks before AngularJS 1.0 came out in 2012. I started using it for pet projects and became a serial user and answerer on the AngularJS google group for a few months. I spent 1-2 hours every day answering questions.

- A few people from that group started a library making AngularJS UI components for Bootstrap CSS, and I helped: https://angular-ui.github.io/bootstrap/. This was what really got me "slightly known" in open source.

- I moved on to making other AngularJS libraries: most known were angular-promise-tracker and angular-mobile-nav (slide transitions for mobile AngularJS apps). And then eventually, because of my experience, I landed my first job on the Ionic Framework team.

I was 20. The year was 1994. I landed a job as an internal maintenance dev with a simple Visual Basic project on diskette. I was happy because it was a salaried position with benefits.

I quickly moved up to consultant (since I was with a consulting firm) within a year and ended up getting some real experience on my resume. :-)

Despite having completed much more interesting and impressive projects, my first CTO took me based on a few Ti-BASIC programs I wrote because I was bored in high-school.


Landed me a job in a small game studio. I'll never understand.

Maybe I should upload my TI-BASIC programs...

In 1984, I wrote a BBS for the Commodore Vic-20 which had up to 63 public and private rooms (message areas), private email and an online game, all in 9.6K of BASIC. Users could start their own rooms and make them public or private. The topics covered everything from general chitchat to string theory. The board was very popular with each user spending an average of 70 minutes on it.

One of my users said "Anyone who can write a BBS for a Vic-20 can program!" and hired me to write code for MSI portable data terminals. That same guy now wants me to work with him at Google.

"Anyone who can write a BBS for a Vic-20 can program!"

Truth. Out of curiosity, have you watched any "Halt and Catch Fire" (the tv show)? I'm curious to know if it's similar to what you remember in the mid-80's. Info from Wikipedia: https://en.wikipedia.org/wiki/Halt_and_Catch_Fire_(TV_series...


A Dark Age of Camelot (MMORPG) chat log file analyzer written in Perl in 2003-2005 helped me land my first dev job.

I switched careers (due to lack of job openings) from becoming a protestant pastor to being a full time developer. I had almost no proof of having programmed in Perl for close to 6 years as a hobby, but the company desperately needed another coder and their senior programmer at that time had taken a look at my SF page. The boss was impressed when I said that my code had been downloaded by over a 1000 users, and so I got my first job, rewriting an SMS-messaging platform.

Now, over 10 years later, my GitHub profile only rarely comes up when recruiters try to reach me - some, I think, use web scraping to match profiles with LinkedIn / Xing to say nice things as a conversation starter in generic emails.

It's a private project, but basically:

A PHP endpoint that received a POST request of some sort, and then I would return something based on that, a very primitive REST service and a C# application would act accordingly, and it would log the data to a MySQL database. It was meant to allow us at my old job to keep track of who used our computer lab, it wasn't meant to be overly secure on the front-end, if they figure out how to break behind the application we weren't worried about those cases, only the case where our database was compromised.

I think the more important bits of my interview were just our overall conversation, the code just showed I wasn't all talk really. He liked the answers I gave and the rest is history. That was 1 year and 1 day ago. Still working at my "first real job" as most people call it. My previous job was part time and at a school so I didn't do many programming projects.

Back in 2012-2013 I was learning about javascript and nodejs was the new kid in town. I started learning about express and mongodb and within a few weeks I manage to create a scraper for torrentz.eu to index a bunch of movie torrents and fetch their metadata from imdb/omdb and trailers from youtube. I built a pretty UI and publish the website in the chrome store as an app. It quickly began to grow and was averaging around 600-700 visits a day and even made it as a featured app in the store.

One local blog from my city in argentina picked it up and wrote an article about it and got a call from a big local company that they wanted to talk to me. Thats how I landed my first job as a javascript developer.

A year later my app got removed from the store because "it did not comply with their policies or terms of service".

That's a great story! How long after you started learning JS did you start making the movie app?

Maybe a year give or take, and I ended up building it to scratch my own itch of wanting to find a nice movie to watch over the weekend.

I had done a few Wordpress frontends for friends and family and this Ad Agency really needed a "User Interface Developer" for the backlog of projects.

After a few long discussions technically of Wordpress development they deemed me capable enough to handle the workload. I persisted with my intentions to help and break into web development, and it blossomed wildly from there.

By the time I started my second job, I had a real portfolio of Fortune 500 brands live and in the flesh and never looked back from there.

Honestly, it was stupid how easy it was to break into this niche. It took a lot of sleepless nights and long work weeks, but seriously anyone could do this. I'm a big proponent of that. I was a meat cutter before this.

In my own time, I built a data-logger PoC that would help us fault-find some issues we were having with a generator (in an aircraft). After the PoC, I did it as an official project (designed the hardware, wrote the embedded software, and wrote some interface software that ran on a PC in c++).

That (and a few other factors) got me a role at Headquarters, on a networking team. But I kept writing tools in software and ended up getting snaffled for a web-development team. And have been doing web-applications ever since.

Didn't actually know how to use git when I landed my first FT dev job. Had no Github Account, no portfolio site.

Been coding since I was 12 though, had a good grasp of HTML/CSS, jQuery (but not really of javascript), VBScript, C#, SQL. All stuff I picked up either while making plugins/themes for a BBS I operated, or writing scripts for bots for MMORPGs. My code quality sucked, but I made stuff that people (other BBS operators or bot users) kinda liked and got hooked on the accolades. Sadly that was all in middle school and I didn't know enough to keep backups.

A few weeks after exams ended, and a few months before I would graduate with my Bachelor of Commerce degree (Finance Specialist), I went to my first interview for a developer position at my University. After talking with the manager/team-lead, I was handed a page of 12 questions ranging from logic, sorting, jQuery and databases, and given 30 minutes to complete them. I aced most of it (hiccuped on the sorting). Got the job. Made this: http://m.map.utoronto.ca (just the mobile version, which was a ground-up rewrite SPA)

Been 5 years now. Have worked on projects for Facebook and Google (although not employed by them, but via agency vendors), went through Intermediate Developer, Developer, Senior Developer, now an Architect at a cancer research place.

Still no portfolio (never got around to it), but here's my Github: http://github.com/cheapsteak/

How do you get promoted so quickly? I've worked my ass off at several companies and been in high positions at early startups but when I ask for a promotion everyone so far has said no"sorry, you only have X years experience". Maybe I'm not working for the right places...

Hard to say for sure, I think being in the right places has a lot to do with it, luck too.

My "break" was when I was at the time freelancing for an agency/ production studio (about 3 years ago). All the project managers and other developers I've worked with said really nice things about me to the tech director and the person in charge of staffing projects, and when they had a project that they didn't have a tech lead for, they decided to take a chance on me, even though I'd never really lead a project before, wasn't even sure myself if I could, and I've only worked with them for about 3-4 months at the time.

That first project came dangerously close to flustercluck territory (partially my fault, partially because we were understaffed), but everything actually turned out pretty great. The projects afterwards went much smoother - always delivered on time, usually ahead of schedule without having to crunch, and they liked how I mentored the other devs; so when a a client pulled a project (through no fault of ours, they had some internal restructuring) and I started looking for contracts elsewhere, they offered me a senior developer position instead.

It's a really cool place with amazing people (still hang out with them), atmosphere, and some breathtaking projects. Leaving it was one of the hardest things I've done, but I couldn't say no when a cancer research place asked me to be the architect for their front end projects. The story about how I got that offer is actually even more random. Maybe I'll write a post about it one day :p

Titles beget Titles at some places.

Most recent job boss asked what I wanted written in on my contract, I was tempted to have "<code-monkey>" but I had that on my business cards at the previous place so I just went for "Senior Software Engineer".

I'm the only software engineer so I am simultaneously the most senior and most junior software engineer ;).

Thing is if I go for a new job in the future I can legitimately put "Senior Software Engineer" on my CV (and Systems Administrator and Systems Architect (previous jobs)).

The reality is that if you work for a small tech company as the sole/part of small team developer you'll effectively do multiple roles (sometimes less than brilliantly) that would earn you most of the way towards those titles in large orgs.

I've worked with big companies where their 'senior' programmers where less capable than me (and I'm by no means fantastic, just experienced, diligent and patient), outsourced IT firms with "years of linux experience" where the solution to permissions issues was chmod 777 everything etc etc.

Some of it I wouldn't believe if I hadn't actually seen it (I'm actually preparing a tech talk on the subject since all the talks I go to locally are "Look at this fabulous tech/architecture" and never "Putting out the dumpster fire").

To paraphrase Louis CK "Think the most average developer you know, half of them are worse than that".

Also soft-skills, they matter, I know it's tempting to think that technology/software is a meritocracy and parts of it might be, hiring/promotions near universally aren't.

I started working on and with Drupal 2004 May 29 (it was a Saturday but who keeps count). At the Amsterdam DrupalCon in 2005 I got three offers for 60K USD which was an unheard amount for a struggling but very enthusiastic developer for Hungary. I accepted NowPublic's offer and started with them 2005 December 1, I immigrated to Vancouver (NowPublic was based there) 2008 September 1... To answer the question fully, Drupal and I landed a Drupal developer job :)

None. I applied for internship at a local tech company, I mentioned on my CV that I was working on a WhatsApp desktop client (which didn't exist at the time) by reverse engineering the Android app. That caught their interest. I got the internship. After 6 months they offered me a permanent contract.

The next job I just applied and did exceptionally well on the interview. The one after that was through a friend that I worked with before, he was starting a company and hired me.

I got my foot in the door via a front-end job/internship in England. What I did was I would find free website design templates (this was in 2014) and turn them into live websites. Then I quickly created a portfolio, hosted it on GH pages, linked to my github account at the time and started applying. It was easier for me because it was a paid internship through an EU funded program. They made me an offer and later on retracted. But thankfully right before the end they were nice enough to hook me up with a couple of other companies who were desperately looking for a Junior Dev (whatever that means). I must say I'm really greatful for the oppotunities because it exposed me to much much more talented devs and I got to learn tonnes of things (vim, back-end dev, basic devops, linux) I barely do front end anymore.

So to answer your question I guess, it depends on your area of expertise. It's easier in my opinion if you're a front-end guy because you'll have "something to show". If you're a backend developer you can always cook up a library in whatever language you use and share it with the community, that along with a blog can go a long way in helping you landing a job.

Hope this helps

It wasn't my first FT dev job, but it helped A LOT for me to get in the past 2 jobs I've had. The combo of creativity and applied (?) optimization algorithm was very appealing to the people that interviewed me. It helped that it generated pretty pictures. https://github.com/clayheaton/blomster

A really simple VB.NET desktop application landed me a job writing C# code which still handles millions of dollars in banking transactions in Latin America.

I just started working on a simple Django cms called Amy[0] and that has also gotte me work. Weird.

[0] https://github.com/yelluw/amy

See Amy live at yelluw.com (https incoming!)

Not so much self-taught as i was after 2nd year of CS. But i've landed my internship and ultimately first full time job with a game written in c++ and opengl. It was guitar hero style music game with much simpler graphics. Job was at small game studio. It ultimately led to drop out from uni so I never got my degree.

I spent several years working in research support roles at uni, and used code to automate the very boring parts of my job. Then thanks to open source activity I got into as part of that, I wrote a book. This was a bit under 10 years ago, I'm not sure there's the market in book writing these days.

What book did you write?

a perl book. (and yes, modern perl[1] is still a good, viable candidate for up-to-date-best-practices development. the only downside is it takes a certain amount of discipline to get it right. The other possible downside is that perl is currently not trendy, on the other hand it's proven to be a very good performer in the long game).

[1] http://modernperlbooks.com/books/modern_perl_2016/ - not my book, mine was more specialised, and I'm not going to transparently disclose my identity here :).

I had an idea for a simple iOS game I wanted to make so followed the Stanford course and then rented a desk at a startup with too much space. After a month or so they felt they needed more developers and since they saw me there with xcode every day they figured they'd hire me.

I released this game on iOS (back in 2010), and it was the main thing that got me get a job as lead developer for a startup that made iOS games and apps: https://www.youtube.com/watch?v=uy08ohBLGhE

Technically I had one other dev job before that (not in games, making websites and apps in ASP and VBA), although I got that job from a friend who knew I could code due to indie game dev meetups, convinced me to move upstate to the Chicago suburbs and be his roommate, then bugged his boss until he hired me. I barely knew him, but it ended up being a good decision because I ended up really fitting in here and I'm still in the area 12 years later.

It's different for me, since my company uses a relatively obscure language (Rust, it might not seem obscure if you hang around on HN but most people just look at you quizzically if you bring it up), but contributing to the compiler and having a library that was being used by a reasonably well-known project was very helpful. I think the single biggest factor in me getting hired was a couple of blog posts I made, however. Nothing proves your aptitude for software to a company than having an extended, long-form writeup of your thought process. Even if you're not that great a writer it's extremely useful to have a technically-focussed blog that a prospective employer can read through.

I learned web development while volunteering at a charity, where I did a lot of work on open source software. I worked on some Rails apps called FatFreeCRM [1] and Errbit [2]. I got my first contract with a YC startup that was providing hosting for open source apps, including FatFreeCRM (unfortunately they shut down.) My open source contributions were also included in my O1 visa application, so that I could come to the US and work for a startup.

[1] https://github.com/fatfreecrm/fat_free_crm

[2] https://github.com/errbit/errbit

Started learning to code 9 months ago, ~2 months ago landed my first job as junior web frontend developer.

I did a code challenge as application, so I believe this was the most important code. But this is my portfolio page (untouched since I got the job): http://rodrigo-pontes.glitch.me

I believe the most important project in it was this To Do app because it shows I can ship things that work:

http://www.dediddo.com/ https://github.com/deltasoneca/Dediddo-to-do-list

code challenge as application? Where do you find things like that?

I participated in Mozilla dev derby and created - https://github.com/palerdot/hotcold, which landed me my first full time developer job as a full stack developer. At that time, Mozilla used to have demo studio which hosted both the code and the live static app. After Mozilla pulled the plug on the demo studio, I hosted the static app on github pages with a custom domain - http://hotcoldtyping.com

This project is closer to my heart and I would still be happy if I had not gotten a job because of this.

The repo that helped me learn to developer is JSLint. This influenced my thinking on code organization more than all other facets combined. Please note though that JSLint has changed directions on a couple things since I started learning programming in 2008.

* https://github.com/douglascrockford/jslint

The repository that taught me about parsers, code style, and algorithms was writing PrettyDiff.

* https://github.com/prettydiff/prettydiff

It was a screensaver that I wrote between tech support calls. The CEO asked me about it, I told him I wrote it, and he put me on the dev team that afternoon. It was C and C++, drivers and apps on Windows.

Well, I started before repos were a thing and even before source revision control was invented. I pestered a professor with questions about the assembly language that I got the CDC 3500 fortran compiler to cough up. Annoyed, he pawned me off to a professor who ultimately became my advisor and gave me my first job the summer after my freshman year. That job involved writing an input module for a program that he wrote that was finding Eigenvalues and Eigenvectors in a 500x500 matrix on a computer with 35k of memory. With no disk.

I applied for an internship at a local-ish company (I'm from a very rural area, so local means within 100 miles). They did check out my GitHub, and all I had on it was my blog (Rails app I had made when first learning). One of the interviewers checked out my blog, which had only posts about really basic topics on it, and I was worried I'd be outed as an idiot. He said "Oh, you're keeping a blog. That's really cool." I got the job on the spot. That was a little over two years ago.

Analysis/Comparison of Different Twitter Channels using R https://github.com/amrrs/TwitterAnalysis-in-R

Highlighted some insights based on the way Tweets were made. Got an offer from one of those brands' Data Science team and finally found out that my Analysis became benchmark in the company for Social Media Analytics of Twitter.

Edit: Though the job wasn't my first one!

None of them - repo and portfolios weren't even mentioned. I was working as a game designer in the company that had a developer opening, and got burnt out. Since the company knew me, landing an interview was easy. I was teaching myself programming since I was 8, and, as I retroactively understand, was at steady junior level in high school already. The interview turned out to be a walk in the park. I wish I was more self-confident and switched over sooner.

You were burnt out and switched to game development? Frying pan, fire, surely?

I switched from game design to engineering. I was burned out by Excel sheets and meetings.


It was kind mix of Repo+ blog posts that helped me to land a few freelance gigs, contracts and then ultimately a job.

Mostly people contact me for web scraping and automation related work after viewing my site[0] or blog posts[1]

[0] - http://adnansiddiqi.me [1] - http://blog.adnansiddiqi.me/tag/scraping

I got a job working at boohoo and I think this repo did a lot for me - http://github.com/DrRoach/Dynamicimage.

It showed I could create a proper project which follows best practices like CI ect. It also helped that it was pretty relevant to the type of business and something that they themselves could potentially find useful.

Animated gif puzzle game (iOS). https://github.com/danielhhooper/Gifsaw

very short video: https://i.imgur.com/4zDAQe7.mp4

Was hoping to publish this app but could not find an appropriate service provider for the images.

I completed this coding challenge, an ajax game of cards: https://github.com/awongh/cards funny to look back- no documentation and terrible commit messages :)

This was for a junior full stack dev position in SF

I wrote a disk bootloader that could intercept BIOS disk writes, and then continued loading DOS. And then there was a DOS TSR that monitored... (don't remember). Needless to say, this was the late 80's/early 90's. It impressed some interviewers back in the day.

First job: Nothing, knew someone at the company, started part-time.

Second job: Knew some people from IRC, still had to show some code. I chose a signature generator (for use in MMO forums) that showed your characters. (PHP, MySQL, gd, reading APIs)

I had some shitty CGI code that would extract search terms from HTTP referrer fields, back before everyone only used Google. Someone emailed me asking me for help with it, and as it turned out, I was 16 and needed a week of work experience. Circa 1998.

For me it wasn't actually a repo but doing a lot of https://www.codewars.com challenges until I was proficient enough in js to pass the technical interviews

I made my name known in the Perl community through answering questions on perlmonks.org, IRC and a few mailing lists.

Somebody drove me home when I attended a local event, and a few years later, that person hired me (and is now my direct supervisor).

I wrote my own ORM. It helped because the person interviewing me actually looked at my projects, looked at my code and had a conversation with me about it.

It was the only interview I've ever had where someone actually did that.

It was my involvement and contributions to the KohanaPHP[1] web framework, then on SVN, that landed me my first dev job.

[1]: http://kohanaframework.org

Nobody ever looked at my code. I was working your standard IT support job, and just started writing tools to help the team. I learned, the tools worked, the job evolved into a coding job.

I landed my first job with a semi-popular CSS grid system. Funny enough they didn't want to use it they just liked the branding and design of the docs.

Repos weren't considered when I got my first job. I did do well in a technical interview where I pair programmed with someone and solved problems.

It's not what you know, it's who you know.

Junior developer at Tickex, but I showed them a web app that is long gone, and this was summer 2007, before github.

First real job was granted not on portfolio (no GitHub in 2006) but based on pure sympathy and luck. It was a job board project.

I had done a few website before, but nothing significant.

I think it does not matter what's in your portfolio as long as you've released a few things and did everything to make to them look good. Not necessarily design but presentation, documentation, testing and function.

It was something I wrote in 2003, before git was a thing.

I'd grown up futzing with code in the 80's (AppleBASIC, a bit of assembler). Turbo Pascal, ANSI C, in the early 90's. I'd started crunching through Ivor Horton's book on Visual C++ in 2000.

My girlfriend's (now my wife's) employer had an ecommerce website that was written in this thing called PHP and it kept throwing errors, something about MySQL. Figure out it was hosted on this "Apache" thing.

Bought a SAM's Teach Yourself in 24 Hours on LAMP, spent a month digesting it, fixing the issues with the site in the meantime. When I was done with the book I wrote my own ecommerce platform to replace the one they had (I did all this for no compensation, I just wanted to learn).

Took programming gigs off of what was then called "rentacoder.com" working for almost nothing to get experience and built a portfolio.

The next year, 2004, a big auto parts company in town was looking for a "webmaster." I leveraged having built an ecommerce platform from scratch into that job. I was all things internet for them (except graphic design). Wrote code for their ecomm website (old school ASP.NET), did SEO/PPC marketing, came up with email campaigns, integrated with their ancient PICK-based inventory system, used NLP to detect tone in customer support emails before that was something you could farm out to Google, etc.

So...the replicable aspects of that path, excepting luck and right place right time:

1) Dive deeply into a challenging language. C++ wasn't for the faint of heart then and although it's been years since I wrote any I'm sure that hasn't changed. I'm a much better coder for having had to deal with the obtuseness of C++. Pointer pointers, anyone?

2) Do work until your skillset and portfolio represents enough value to someone that they're willing to pay for it. So much of my early work was garbage anyway...hell my SAMS book on LAMP hadn't covered SQL JOINs, so I was doing queries and iterating through the results and running more queries!

3) Build something that non-developer can understand and connect to. I was able to talk about the ecommerce site I'd built, how I'd integrated with PayPal, demonstrate the UI, etc, to the people that hired me. Had I been presenting something more esoteric, like the time I had to figure out endianness to decode a data file and get it into a MySQL database, I'd have completely lost them and likely not have gotten the job.

Nobody looks at my repos. The closest I've gotten was recruiters finding me through keyword searches of github.

Honestly as a self taught dev with no professional experience your repos aren't going to impress anyone, but github activity will.

Put together working projects and deploy them, make it easy for someone to see what you've built. Provide evidence that you are capable of working with external APIs and common frameworks.

I am self taught and landed my first job pretty easy with just a basic portfolio site, and a few FreeCodeCamp projects that were deployed on digital ocean.

I am now involved in hiring with my company and very rarely do I see an impressive repo let alone an active github, but whenever I see someone consistently committing they always end up with an interview and more often than not end up with a position.

Exact same situation here.

Was rejected for an interview until a senior Dev found my github account.

I had a bunch of app tutorials that I had built and then extended quite a bit, as well as some pet projects that I built from scratch.

It told a story of my progress (and the speed of that progress) in learning and the development of my capabilities as a programmer.

Just build stuff, follow good coding practices, and put your github on your resume.

Applications are open for YC Winter 2018

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact