“Why don’t companies ever hire me?”

Ramit Sethi

Because you’re no different than the other applicants.

Here’s how to stand out. Note: This doesn’t only apply to programmers. Everyone should have a portfolio.

I am in college, but have lots of free time, so I can work fulltime at a startup plus add in a lot of extra hours (I know how startups are) on site or by telecommuting.

I applied to a few, sent my resume, etc.. but the same thing always happens. They want a portfolio.. links to things I’ve worked on. I am a programmer, PHP/Rails/C/Ruby/etc.. but I don’t have a degree in anything related to CS, and no professional portfolio.

I’m thinking the only option I have is to get a regular $8/hr job, while working on more and more projects in my free time. Enough projects to get a startup interested in me.

My response:

You’re a programmer, so why don’t you create a portfolio for yourself? Find interesting things that you wish software did — and build it for yourself.

Maybe you want a new way to integrate your iPhone with Outlook, or you wish there was a way to scrape all the images off a web page with 1 click. Whatever. Then build it. There — you have a portfolio.

Do you contribute to open-source projects?

Have you started a blog?

Or have you found someone who has an idea and helped them to build it?

Without some/all of those things, you’re just another programmer. Ask yourself how you can stand out.

There are a couple books that had a huge impact on my career. Rather than the typical how-to-get-a-job books, they’re a little different:

Staying Street Smart in the Internet Age: What Hasn’t Changed About the Way We Do Business (it has nothing to do with the Internet age, and everything to do with a kickass mindset in your current job).

Purple Cow: Transform Your Business by Being Remarkable. (It’s not just for businesses. I used the ideas in this book to convince Seth Godin to hire me as his first-ever intern and work on a bestselling book with him.)

For more book recommendations, see a list of what I read.

Do you know your actual earning potential?

Get started with the Earning Potential quiz. Get a custom report based on your unique strengths, and discover how to start making extra money — in as little as an hour.

Start The Quiz

Takes 3 min


  1. Graham

    That’s good advice, many programming tools are free now and all it takes is time and effort. I’m in a similar situation – I’m a computer professional but not a programmer, so I work on my projects as much as possible so I’ll be able to demonstrate what I can do.

  2. reader


    You’ve stumbled across a missing page.
    Check out the Table of Contents!

    I Will Teach You To Be Rich

    “Really sorry, but I can’t find the page you’re looking for. Instead, you can look at the pretty picture above. If you click refresh, I’ll even show you a different picture. Or check out the table of contents.” -The Computer

  3. Ramit Sethi

    Thx, fixed.

  4. B Smith at Wealth and Wisdom

    If you want a job, don’t apply to job postings. It only gets you thrown into the black hole known as Human Resources. Also, this is a case where you want a sniper rifle, not a shotgun. It may seem counterintuitive, but the fewer jobs you pursue the more successful you will be.

    Here is my 10 step strategy. It has almost always gotten me the job. It may seem like more work, but it isn’t. You put in 10 hours up front and blow away your competition. You impress your future boss. You go in offering a solution to their problems, not asking them to help you with a job.

    1) Identify 10 companies you want to work for.
    2) Do basic research on these companies and the industry. Talk to friends. Ask family what they know. Google them. Your goal is to weed it down to 3-5 that are strong candidates.
    3) Now you start the real work. Dig deep into each company. Go to the library and research them. Look up news articles and press releases. Get their annual reports.
    4) Do the same for the industry. You want to be an industry expert.
    5) Research their competition. Know thy enemy…
    6) Get an informational interview with several people in the company. You want to be known. Do not try and turn this into a job interview. You need to be honest and be doing research. Often this will lead to an interview. They may ask you back for an official interview, but you are not ready yet. Push it out a few days out so you can get ready.
    7) Put together your portfolio focusing on how you and your skills will help the company succeed and grow. Things to include:
    -Letters of recommendation: go to family friends, coaches, professors, ministers, etc…
    -certificates of accomplishment
    -any diplomas
    -a copy of your transcript.
    -an executive summary of the company
    -an executive summary of the industry
    -an executive summary of the competition
    -a summary of the projects you have worked on (listed last because it is the least important thing).
    8) Think of ways you can help the company. Come up with several thoughtful questions about the company and the interviewer. Go through common interview questions and come up with good answers. Practice with friends.
    9) Call your future boss and tell him you love the company. Let him know you have been researching the industry and think you have some ideas to help them ______(fill in the blank with your newfound industry knowledge and info from the informational interviews). Be polite and professional.
    10) Go dressed in a suit. Shine your shoes. Get a hair cut. Look your best.
    10.5) Send everyone you meet at the company a thank you card. Don’t email, write it out by hand.

  5. Matt

    I’m a technical writer and you’d think creating a portfolio would be a piece of cake. However, I work for a medical device company and everything I write/create is proprietary. Any suggestions?

  6. Ramit Sethi

    Matt, I have a few thoughts but what do you think? How could you create something that would make you stand out?

  7. Sara

    Matt, as I understand it, technical writers aren’t subject matter experts, but are supposed to be good at taking hard-to-understand technical stuff and make it readable for a consumer audience. If I were you, I would go look for 3 – 5 examples of terribly written crap online (FAQs, manuals, white papers, whatever), and re-write them. Then in your portfolio, include the original crappy version, and the new, awesome version. If they are all completely unrelated and different items, that’s just better because it shows your diversity and ability to research and understand different subjects.

  8. Matt

    Sara – thank you for the suggestion. There is a fair amount of poorly written documentation for shareware/freeware online I’m sure I could work my magic on. Thankfully I’m not looking for a job at the moment, but this is something I want to stay on top of.

    Ramit – I came across your site several weeks ago and really enjoy it. You’re stories are pretty amusing.

  9. Björn

    As a manager of a couple of smaller computer companies, I can only agree with the original post. When we get a new application of a person we don’t know or a recent college graduate, one of the first questions is what they have to show. School projects are fine, but “own hacks”, open or closed source, are the best. It shows not only the programming qualities but also that the person have the ability to finish tasks / projects.

    The same would probably go for stuff like documentation etc.

    Not having anything to show does not mean that the person is not interesting, but it means potentially more work for the recruiter later in the process.

  10. frank

    i am interested in making a portfolio and trying sometihng new. I am a recently grad with a masters in leadership, and having trouble getting my foot in the door. How would i start a portfolio?

  11. Lazy Man and Money

    Matt, I think having a blog would help you out as well. Ramit touched on this in the original post. I went to not being able to string 7 words together to having the visibility where companies come to me and ask me to write for them.

    As a technical writer this might not translate, but simply having publicly available quality writing on the Internet opens a lot of doors.

    Eighty percent of the time, I think that half the battle is convincing a company that your not one of the 95% of the people that HR considers not worth their time. (Note to self: work on your Yogi Berra-isms.)

  12. JP

    Working on side projects is huge. Not only in getting your first job, but while you are in your job.

    For instance, I wanted to organize a Habitat for Humanity build with co-workers. Once I made sure there was enough interest, I set up a a simple website, where people could sign up for different weekends, sign up for car pools, view photos of past weekends, get directions, check the progress of the build, and so on. Even though I set this up, I didn’t attend each weekend. I found that people love power and responsibility. I asked for volunteer leaders to step up for each weekend and got many responses.

    Within the office this project got a lot of visibility and gave me the opportunity to meet senior managers. But it also gave me a sweet little resume blurb that demonstrated initiative, leadership, technical know-how, and community involvement. Four things that employers and bschool admissions like to see!

    Just an idea to get you thinking..

  13. John Ahrens

    Matt.. I know that just about every open source project out there would love to have someone come along and help with documentation. So look around for an open source project that you’re interested in, and help improve their documentation. For instance, use OpenOffice? They can probably use help, or Firefox.

    Just a thought. Then your work is available on the web and publicly acknowledged by the project. Also good for karma points 🙂

  14. Sheridan Saint-Michel

    When I was in college I did a lot of freelance web programming (at around $30/hr). One of the things I did to help make this happen was to submit code to tutorial sites. Websites like and actively look for code samples, and make it easy to get yours online. This is very visible (if you Google my name you will still see several code samples even though I haven’t done this in years), you can look at categories to see where there is a niche to be filled, and you can refer potential clients and employers to your “online PHP tutorials.”

    It took very little time to write these samples and the return has been amazing. I would definitely recommend you consider trying this.

  15. Kristofer Monisit

    In about a year, I’ll be fresh from undergraduate electrical engineering. In our place EE usually means you’re specializing in power systems. More specialized programming and hardware is reserved for electronics and CS degrees. I’m currently brushing up on my C++ skills, though I’m still much of a noob for now.

    In the job market, I do think we really have to stand out. In my opinion it’s about having skills that are quite unexpected or a little offbeat from your “official” credentials. Say, you’re an EE graduate and you can do 3D animations or excellent photography. It may not be very useful in the industry that you’re entering, but it shows that you have a diverse (not necessarily wide) range of interests that you are willing to learn about. Thus, your future boss would (hopefully) be impressed by your learning potential.

    Ramit, I’m particularly interested in the portfolio you’re talking about. I’m quite familiar with artists’ portfolios (mainly visuals and demo reels). But for technical and engineering portfolios — what is it like? Is it some narrative for each of the individual projects I’ve undertaken?

  16. Sandeep

    Just thought of sharing this about a resume that I came across. When I opened the document, it read –

    Looking for job change in Java & J2EE to work in creative & challenging environment where I can deliver my potential

    That’s it! Couldn’t believe someone could have a resume this short! Must be a mighty confident candidate, what say?

  17. Moneymonk

    Ramit, I see you cashing in our sponsers

  18. Ramit Sethi

    Moneymonk, what do you mean?

    Kristofer: Yes, exactly. Showing what you’ve done, why you made the decisions you made, and any concrete results you achieved. It’s basically designed to show that you went beyond what was “normal” and did something interesting and extraordinary.

    Sheridan: Awesome example.

  19. lee

    When I was in college, I wrote web-based games in my spare time, and that’s what helped me get in the door.

  20. Mark Cummings

    I like to keep a paper copy of my biggest projects. I include it in what I like to call my interview packet. This is used as a evidence to what is stated on my resume. I have never had to use them in a interview for automotive design positions, but I like to be prepared.

  21. Sam

    Great advice. Having a web presence helps too. My son enjoyed reading this post since it’s info he’s needing now. Thanks.

  22. timgrahl

    It’s all about who you know. Don’t bitch about the people that get jobs that you can’t just because they knew somebody at the company.

    Work hard to make contacts and get to know people. It means doing work for free. It means asking for referrals. It means going to events where people you want to meet exist.

    Every major opportunity that has come my way happened through a referral of someone I already knew.

    I don’t have a resume and, if I ever enter the corporate world again, it won’t be by way of resume.

    Now if I can only stop botching the phone interviews I get with kick ass startups…

  23. MJ

    In reading through this thread, I have THREE big takeaways/recommendations:

    1) Know how to write and “cater” your resume to the business… and the job you want.. it’s not just about you
    2) Grow your experience by working on “one-off” or side projects – building your experience and portfolio
    3) Build your contacts — use friends, co-workers, family… suggest using Linked In, too – Networking has always boosted job opportunities

  24. Wealth and Wisdom » 11 Steps to the Job of Your Dreams

    […] was reading a post by Ramit @ I Will Teach You to Be Rich yesterday and the question came up ” I am in college, but have lots of free time, so I can […]

  25. 100 Killer Blog Posts to Help You Achieve Your Dreams | Online

    […] Why Don’t Companies Ever Hire Me?: Follow this advice to find out what’s standing between you and your dream job. […]

  26. Eric Nakagawa

    Getting noticed all comes down to how you network and market yourself. Degrees and a nice resume are boring… I want to see your code, or hear about you from using a killer prototype, app, or side-project turned startup. Think about all your hobbies and interests; are they aligned with driving up interest in not only what you’ve done but also who YOU ARE. Every project you launch gives potential employers a peek into your interests, attention to detail, and style.

    If you’re really lucky (or social) a direct intro from someone already employed/working in the place you want to work greatly increases your likelihood of not just getting your foot in the door… but blowing the door off the hinges. If you have a contact or friend who has already established a solid position in a company they provide a solid “in”.

    We are all fortunate enough to work with really awesome people. During a job search … go for that clutch position! We need you!

  27. Katherine Karnov

    my business partner was searching for FR RLAUCC-1 a few days ago and encountered an online platform that hosts 6 million forms . If others need FR RLAUCC-1 too , here’s a