- Be honest about your experience, and tell them what you are really comfortable with. If you got 3 months experience in Objective-C, don't say 1 year, and tell them what parts/concepts of Objective-C you have used. Don't get too hung up if your skills aren't what they're looking for. Good employers know that someone with a strong technical background can learn anything given enough time.
- If they are giving you a puzzle, try your best to solve it. Do not be too worried if you can't solve it. Most of them will give you hints. I have been offered jobs when I couldn't solve their puzzles.
- If they're asking about opinionated questions (OSX/Linux/Windows, Git/Hg, Java/C, iOS/Android, etc), they are probably just testing your reasoning. It doesn't matter what you answer as long as you have your reasoning. Telling them you use Hg because your boss told you so is not good. It's always good to have a good lookout on new technologies.
- Go to meetups and talk to people. You will probably find a lot of jobs there. Be open, tell them you are looking for a job.
- Wear a t shirt and jeans. Drink lots of water and maybe a cup of coffee.
I do almost all of that stuff (except going to meetups because...) but location matters the most. I live in a small town in India, and I would like to work, but we don't have the kind of job I would like to do here. No one writes good software, there is no startup culture. People here need someone to maintain old java code or write some mundane portfolio website. I need a startup or a proper tech company with products, market, that has exciting cool stuff to work on, I would be more of an intern, but location is I believe the most important factor. I even got a couple of emails back but they declined because they were not supporting visas. But's that's alright, I am not too keen on leaving the country either.
Either it makes sense to have the kind of company you speak of in your area or it doesn't. If it does, start one and you have found yourself a nice niche.
I don't know, I think it's different if you are applying for a job in a big corporation or for a smaller firm/startup. Bigger firms will usually have a more strict dress code (the place where I currently work short pants are frowned upon, except in case of system integrators)
In both cases I usually go for jeans/shirt combo (but not a t-shirt, bigger firms/older people find it unprofessional in my experience), but that's just me.
When people say "dress one level above the job you're applying for", I can't help to imagine what the levels are. I came up with something like this, from high to low:
- 3 piece suit
- 2 piece suit with tie
- 2 piece suit, no tie
- suit pants and dress shirt
- khaki's and dress shirt
- jeans and dress shirt
- jeans and t-shirt
- shorts and t-shirt
- stained shorts and wife beater shirt
I always wonder where the bow tie fits in though, or are they just always inappropriate?
Bow ties are generally considered formal evening wear, not business attire, much like tuxedos.
I'd also actually put the 2 piece suit with tie over a 3 piece suit (with or without tie) in terms of formality/business-attire-ness: 3 piece suits are also not traditional business wear, while 2 piece suit+tie is the IBM/'50s iconic business look, and what you'd see most CEOs/etc. wearing.
- If they are giving you a puzzle, try your best to solve it. Do not be too worried if you can't solve it. Most of them will give you hints. I have been offered jobs when I couldn't solve their puzzles.
- If they're asking about opinionated questions (OSX/Linux/Windows, Git/Hg, Java/C, iOS/Android, etc), they are probably just testing your reasoning. It doesn't matter what you answer as long as you have your reasoning. Telling them you use Hg because your boss told you so is not good. It's always good to have a good lookout on new technologies.
- Go to meetups and talk to people. You will probably find a lot of jobs there. Be open, tell them you are looking for a job.
- Wear a t shirt and jeans. Drink lots of water and maybe a cup of coffee.