I&#x27;m a physics student at Stanford applying for full-time programming jobs. I worry that I don&#x27;t possess the attributes that many job postings seem to require. For example, Facebook&#x27;s first new grad job states that I must have 3+ years of solving analytical problems using quantitative approaches and that I must be a &#x27;strong programmer.&#x27;<p>But I don&#x27;t consider myself a strong programmer. As a young soon-to-be graduate, I have big gaps in my software know-how. I&#x27;ve never worked on large-scale projects. I&#x27;ve never programmed on a team. I&#x27;ve never done unit testing. I&#x27;ve never used version control except a tiny bit of GitHub. I&#x27;m not experienced in a UNIX shell. I can&#x27;t explain how TCP&#x2F;IP works. And I&#x27;m not an expert in any language.<p>All I have going for me is that I&#x27;m smart, I&#x27;ve done well in my programming classes (algorithms, assembly, C, machine learning), I&#x27;ve placed highly in a couple of programming competitions, and I&#x27;ve built a few small projects for fun.<p>I guess I&#x27;m wondering:<p>(1) If companies like Facebook only want strong programmers with years of problem solving experience, should I just admit they&#x27;re out of my reach for now and shoot lower?<p>(2) Or am I taking their job requirements too seriously and disqualifying myself unnecessarily? I&#x27;ve heard the possibly untrue claim that men tend to apply when they meet just 60% of the requirements.<p>(3) Also, how can I get a better sense of whether I&#x27;m a &#x27;strong programmer&#x27; or not? I&#x27;m surrounded by a non-representative community of programmers, so I&#x27;m aware my self-evaluation may be way off.<p>(4) I thought that starting a software internship might teach me some of the skills I lack, but from looking at Google and other companies, they only accept students who are returning to school in the fall. Are there other opportunities where I could get exposure to working on large projects with large teams? I feel this is my biggest weakness as a candidate.<p>Thanks for listening to the ignorance and insecurities of a fledgling programmer. I will appreciate any advice you can spare.
How seriously should I interpret requirements for programming jobs?