I'll mention a related question I've been pondering on lately: how does one assess his own skill level?
When one has people around who are clearly more able programmers, one can take the chance to learn from them and try to achieve their skill. But when you believe you might be the top programmer around your office, how do you determine whether you're really good, or you're just in a not-so-great environment?
A lot of entrepreneurial advice mentions trying harder: if you aren't failing, you aren't trying hard enough. Applying at a very competitive company like Google, Facebook or Apple is, IMO, a good way to assess how you "rank" next to very talented peers. Failure there is failing at a very competitive level, and the interviews will give you a sense of how far you might be from them, and perhaps energize you to try harder.
I guess a method to determine your current "level" could be to keep trying to be hired by harder- and harder- to get-into companies, until you fail; that's the level you should strive to get to in the future. If you were never rejected, how do you know whether your current "level" is your highest?
Another common advice for entrepreneurs: "you only fail if you fail to learn the lesson." The reason for failing to be hired is invaluable feedback on your shortcomings, which are much harder to self-assess.
In short: don't self-reject yourself.
(note: I don't have any startup experience, and just 4 years of professional experience as an employee. I guess the more entrepreneurial people around here would propose shipping something and see what happens to make your self-assessment :-)
(2nd note: I was recently hired by Google in Munich, and can't wait to start! :-)
EDIT: this was longer than expected. I totally forgot to address your question: I was afraid of rejection, but I also thought I could do it. I never thought of it as trying my luck in a lottery, and wouldn't apply if I didn't believe I could deliver once on the job.
I applied for internships at both companies. Google actually mentioned in their rejection email that I should feel free to ask questions - so I did. No answer.
With Facebook, I at least had a phone interview and could run post-mortem on what I might've messed up there. Google appeared to just toss my resume down a black hole.
I later decided that really, I didn't want to be a programmer, I wanted to found a startup. I was still in school and not 100% sure of myself at this point, so I applied to 1 programming job at a small place in Connecticut. I got a phone interview and then a rejection. I blamed my "failure" then on my lack of interest probably showing through.
Sadly, I had the same null feedback experience with many seed funders that spring. Most of the time it was a black hole. 2 (Lightspeed and IO Ventures) of them gave a brief explanation, which matches some (but not all) of my own post-mortem analysis. I think that given the high probability of rejection, rejection feedback significantly increases the value of applying.
While I don't think rejection from a place like Google is necessarily "random," I would certainly agree that it rarely provides actionable info.
I applied for internships at both companies. Google actually mentioned in their rejection email that I should feel free to ask questions - so I did. No answer.
I would love to hear about this being brought up by someone else in the interview itself. "What are some reasons Google would fail to answer questions that they themselves asked for?" In fact, I would make this one of the first questions asked. "I don't want to waste anybody's time, so..." I'm sure it would disarm any interviewer who entered the room readied with a "GOOG IS GOD" attitude.
Why just Google or Facebook? I've been rejected more times than I care to remember and usually there was not even a rejection letter, let alone direct feedback of any shape or form.
Spot on. I actually know a couple of people who have been rejected and they don't have a very clear reason for the rejection.
However, I could tell during the conversation on the interviews whether I was doing well on a particular topic or not so well. I got the impression the questions just keep coming while you keep answering; when you say "I don't know this, I actually never saw similar problems before", I guess this is when the interview begins: how do you solve new problems and try to tackle them? This is also the feedback you can take away: where did you stop, and what would it take to go on?
This. This is why I've been applying to top-notch companies for summer internships. I feel head and shoulders above most people at my school but have no idea how I stack up in the market at large. (it's a public university that would have devolved into little more than a Java certification course were it not for the few curious students who pass through each year and demand more)
When one has people around who are clearly more able programmers, one can take the chance to learn from them and try to achieve their skill. But when you believe you might be the top programmer around your office, how do you determine whether you're really good, or you're just in a not-so-great environment?
A lot of entrepreneurial advice mentions trying harder: if you aren't failing, you aren't trying hard enough. Applying at a very competitive company like Google, Facebook or Apple is, IMO, a good way to assess how you "rank" next to very talented peers. Failure there is failing at a very competitive level, and the interviews will give you a sense of how far you might be from them, and perhaps energize you to try harder.
I guess a method to determine your current "level" could be to keep trying to be hired by harder- and harder- to get-into companies, until you fail; that's the level you should strive to get to in the future. If you were never rejected, how do you know whether your current "level" is your highest?
Another common advice for entrepreneurs: "you only fail if you fail to learn the lesson." The reason for failing to be hired is invaluable feedback on your shortcomings, which are much harder to self-assess.
In short: don't self-reject yourself.
(note: I don't have any startup experience, and just 4 years of professional experience as an employee. I guess the more entrepreneurial people around here would propose shipping something and see what happens to make your self-assessment :-)
(2nd note: I was recently hired by Google in Munich, and can't wait to start! :-)
EDIT: this was longer than expected. I totally forgot to address your question: I was afraid of rejection, but I also thought I could do it. I never thought of it as trying my luck in a lottery, and wouldn't apply if I didn't believe I could deliver once on the job.