I'd like to share some of my experiences with what you're going through. Bear with me, it might get a little long.
I've been planning to move to SF for since 2 years ago and came here to look for jobs in January 2015. I was hit with a brick when I realised that the interview process is so different to what I have come across.
I have 15 years of website programming as a full stack developer and each time I had an interview in the early stages I would feel useless and inadequate of my skills. I wasn't prepared for all the questions they asked. Overseas it would be asking about my experiences and checking my past work but never puzzles, coding challenges, coding assessments and the likes. I have experienced the full range of coding challenges from your cryptic short ones, matrices, algorithms, data structures and week long real world challenges.
Some of my worst experiences include:
1. a technical interview from a recruitment firm asking me questions about type juggling (http://php.net/manual/en/language.types.type-juggling.php), when I didn't know them asking me 'are you even a programmer?' and then hanging up on me.
2. being cut short at an onsite interview because I didn't know how to whiteboard a solution and them telling me that 'there's no point in continuing the interview'.
3. being treated like shit, given the run around, getting ignored or never getting replies after I did their coding challenges and assessments (seriously it's not that hard to just give a reply if you don't want to continue with the recruitment process). Hey, I took the time to do your coding assessment the least you can do is provide me some professional courtesy.
4. doing a coding challenge with a time limit and the company giving me the run around and finally telling me that they couldn't get the program to run even though I have a live version of it and sent them instructions. They then told me that they would've preferred for me to ask questions rather than take it upon myself to try to solve the problem.
My skill set is quite diverse and isn't just in programming and I normally avoid applying for the 'big 4' because I know that I will never be able to do their coding assessments and challenges. I have failed more interviews that you can think of. I have roughly spent the last 1.5 years trying to get a job here in SF and I have had some of my lowest moments in my professional career.
Being rejected, not knowing how to answer interview coding questions and not being able to whiteboard will hit your confidence hard. I will admit to that. There were lots of times when I questioned myself whether I was a good programmer or not, whether if and when I get a job that I would be able to perform the tasks that were given to me or not.
From some people I have talked to, the interview process has changed dramatically in the US, especially in SF. This wasn't the case a few years back. (correct me if I'm wrong)
I have always thought that the coders in SF and Silicon Valley would be of a higher calibre as this is the mecca of the tech world, just like if you want to be a movie star you would have to go to LA to make it big.
Think of it as your audition, sometimes you pass, sometimes you get a callback but more often than not you fail and won't get a callback. It's just how the game is played. Remember the saying, don't hate the player, hate the game. And these type of interviews aren't going to change anytime soon, so I have learnt to accept it and roll with the punches.
1. Be prepared, but understand that you only know what you know.
2. You can't prepare for every coding challenge (but the ones I have experienced most are matrices, data structures (hash tables, trie, etc), fetch JSON payloads and array/string manipulations.
3. It is just an interview and nothing else.
4. Think of the positive in each failure, what can you learn from it, what you can improve from it and hopefully use it next time.
One thing I have learnt is that just because you don't know how to answer these coding questions does not mean you don't know how to do your job. You have to find a company which is willing to see past that and hope that a company will see you for who you are to the company and not what the company wants you to be.
------
As for your mental side. I also suffered from mild depression because of an unrelated issue a while ago.
Please, please, please talk to someone. Your family, friends and support network is the best way for you to get over it. When I had my problems, some of my friends stayed with me for 1 week without leaving my side to make sure I was ok. I had my mum and girlfriend then, now wife fly back to see me and make sure I was ok after just leaving the week before (I was living in Japan at the time and they were in Australia).
There are people out there who can help. Hotlines and the such where people will talk to you and help you out. (I'm not too sure of them in the US, but other comments have got numbers for you).
Your wife will understand the situation, talk to her, make sure she knows how you feel. Don't keep it closed and bottled up. My wife supported me trying to find a job in the US for the last few years. I have been back and forth from US to Australia 4x in the last 1.5 years trying to get a job here in SF and yet she still supports me. Even through arguments, I know she still loves me. Your wife will do the same for you. That's why she is with you right now.
------
Good luck.
Please DM me on HN and I can give you my email address or phone number and we can catch up if you're in SF.
PS. I'm still looking for jobs just in case anyone is wondering.
I'd like to share some of my experiences with what you're going through. Bear with me, it might get a little long.
I've been planning to move to SF for since 2 years ago and came here to look for jobs in January 2015. I was hit with a brick when I realised that the interview process is so different to what I have come across.
I have 15 years of website programming as a full stack developer and each time I had an interview in the early stages I would feel useless and inadequate of my skills. I wasn't prepared for all the questions they asked. Overseas it would be asking about my experiences and checking my past work but never puzzles, coding challenges, coding assessments and the likes. I have experienced the full range of coding challenges from your cryptic short ones, matrices, algorithms, data structures and week long real world challenges.
Some of my worst experiences include:
1. a technical interview from a recruitment firm asking me questions about type juggling (http://php.net/manual/en/language.types.type-juggling.php), when I didn't know them asking me 'are you even a programmer?' and then hanging up on me.
2. being cut short at an onsite interview because I didn't know how to whiteboard a solution and them telling me that 'there's no point in continuing the interview'.
3. being treated like shit, given the run around, getting ignored or never getting replies after I did their coding challenges and assessments (seriously it's not that hard to just give a reply if you don't want to continue with the recruitment process). Hey, I took the time to do your coding assessment the least you can do is provide me some professional courtesy.
4. doing a coding challenge with a time limit and the company giving me the run around and finally telling me that they couldn't get the program to run even though I have a live version of it and sent them instructions. They then told me that they would've preferred for me to ask questions rather than take it upon myself to try to solve the problem.
My skill set is quite diverse and isn't just in programming and I normally avoid applying for the 'big 4' because I know that I will never be able to do their coding assessments and challenges. I have failed more interviews that you can think of. I have roughly spent the last 1.5 years trying to get a job here in SF and I have had some of my lowest moments in my professional career.
Being rejected, not knowing how to answer interview coding questions and not being able to whiteboard will hit your confidence hard. I will admit to that. There were lots of times when I questioned myself whether I was a good programmer or not, whether if and when I get a job that I would be able to perform the tasks that were given to me or not.
From some people I have talked to, the interview process has changed dramatically in the US, especially in SF. This wasn't the case a few years back. (correct me if I'm wrong)
I have always thought that the coders in SF and Silicon Valley would be of a higher calibre as this is the mecca of the tech world, just like if you want to be a movie star you would have to go to LA to make it big.
Think of it as your audition, sometimes you pass, sometimes you get a callback but more often than not you fail and won't get a callback. It's just how the game is played. Remember the saying, don't hate the player, hate the game. And these type of interviews aren't going to change anytime soon, so I have learnt to accept it and roll with the punches.
1. Be prepared, but understand that you only know what you know.
2. You can't prepare for every coding challenge (but the ones I have experienced most are matrices, data structures (hash tables, trie, etc), fetch JSON payloads and array/string manipulations.
3. It is just an interview and nothing else.
4. Think of the positive in each failure, what can you learn from it, what you can improve from it and hopefully use it next time.
One thing I have learnt is that just because you don't know how to answer these coding questions does not mean you don't know how to do your job. You have to find a company which is willing to see past that and hope that a company will see you for who you are to the company and not what the company wants you to be.
------
As for your mental side. I also suffered from mild depression because of an unrelated issue a while ago.
Please, please, please talk to someone. Your family, friends and support network is the best way for you to get over it. When I had my problems, some of my friends stayed with me for 1 week without leaving my side to make sure I was ok. I had my mum and girlfriend then, now wife fly back to see me and make sure I was ok after just leaving the week before (I was living in Japan at the time and they were in Australia).
There are people out there who can help. Hotlines and the such where people will talk to you and help you out. (I'm not too sure of them in the US, but other comments have got numbers for you).
Your wife will understand the situation, talk to her, make sure she knows how you feel. Don't keep it closed and bottled up. My wife supported me trying to find a job in the US for the last few years. I have been back and forth from US to Australia 4x in the last 1.5 years trying to get a job here in SF and yet she still supports me. Even through arguments, I know she still loves me. Your wife will do the same for you. That's why she is with you right now.
------
Good luck.
Please DM me on HN and I can give you my email address or phone number and we can catch up if you're in SF.
PS. I'm still looking for jobs just in case anyone is wondering.