coffeenut
-Do you know basic computer science concepts
-How are your problem-solving skills
-Can you move beyond "obvious, yet flawed" answers
-Do you exhibit passion (passion to get to the right answer, enjoyment of problem solving, etc)
-Can you present and justify solutions
-Integrity (If you've seen the problem before, tell the interviewer, don't 'fake solve' it!)
-Are you thorough (probing to understand problem, handling error cases, boundary cases, etc)
-Can you communicate/collaborate with the interviewer
Anyway, that's the theory. In reality, many interviewers use whiteboard questions as a crutch to an easy interview loop and don't really understand why they're asking what they're asking.My biggest piece of advice is to remember the technical interview isn't just (or even mostly) about the technical aspect. Communicate constantly, verbalize your thoughts, ask questions, show passion. I've hired plenty of people who have done not-so-well at the technical portion, and I've given a 'no hire' to plenty who have aced the technical portion.
However, I did gain one lasting benefit. I taught myself how to reliably fall asleep within 2 minutes. That's a pretty awesome skill.
If you want more of a social thing, then an apartment may be better. There's a building that's pretty popular called Rollin Street Flats that has a good scene.
Stuff's expensive around here, especially with Amazon moving in. Unfortunately you're not going to find a great place for under $2k.
Belltown is also pretty close and has good night life. Easy bicycling distance. There's a relatively decent complex called 2900 on First that should be in your price range.
Craigslist is a good place to look if you decide to go the condo rental route.
Good luck, and welcome to Seattle!
Most of us may not agree with his philosophy, and have questions about his basic technical and leadership competencies. But right or wrong, he's being very transparent about their hiring and development philosophies.
This is a good thing. It helps his company attract the kind of person that will work well in that environment, and gives clear warning to the rest of us that this is not the place for us, and that we are better of not wasting our time seeking a career there.
Oh, and anything by Neil Stephenson (except Zodiac).
His advice on how to answer questions, however, fell short. Just saying "I don't know" to questions is a sure-fire way to terminate the interview loop early. Interviewers at Microsoft aren't primarily looking for knowledge, but rather problem-solving skills and the ability to think about issues. If you don't know something, it's fine to explain that you don't know, but you had better follow up with a discussion on what you think and why you think it.
Why would you want to work for them? If they believe this is ok, it's only a matter of time before you're screwed over too. If it is an oversight on their part, you breaching the subject is much better than them eventually realizing they have an employee who is fine with dishonest business practices.
You should be able to broach the subject in a professional way; if you're dismissed because of it you have grounds for a lawsuit.
Incidentally Microsoft (and probably other companies) has a great program called BizSpark to help startups get over initially prohibitive software costs. You might want to bring this up to the founders as a solution for them to make sure they're legal.
When I was doing PM work, I spent about 30+ hours a week in meetings which could generally have been dealt with in 30-45 minutes of focused discussion with a much smaller group of people.
It currently sits at around $20 million USD.
My wife had it done about 5 years ago. She went in to do Lasik, but due to thin corneal tissue had to go with PKR. She could barely recognize my face from a few feet away. Now she has 20/20 vision. She has slight issues with hazing sometimes at night, but overall the best money we've ever spent.
1) Assume for the sake of argument that your friction through the air is the same as your friction of sliding on the ground (this isn't very accurate, and is variable, but shouldn't invalidate the basic thought experiment).
2) instead of the two mediums being air and land, consider them to be two parallel conveyer belts, going in opposite directions (i.e. moving relative to each other).
3) Your vehicle is straddling the two conveyer belts, a set of wheels on each belt.
4) Couple the set of wheels on one belt with the set of wheels on the other belt, along with a transmission to engage/disengage the wheels from each other.
5) Lock the wheels on one belt. This is effectively "going the same speed as the wind".
6) The wheels on the other belt will be spinning furiously. Engage the gears appropriately so that you make headway on the belt that you're relatively stationary on. You're now going 'faster than the wind'!
Ok, it was easier to understand in my head :)
As a mind experiment to explain why this seems impossible, think about what happens when the vehicle gets up to exactly the speed of the wind. At that point, there's no net wind pressure on the vehicle (if you were on the vehicle, there would be no apparent wind on your back or on your front), yet the vehicle still continues to accelerate!
However, there are a couple of points that aren't real blockers: 1) employees handling your smartphone - In reality, the couple of times I've tried this, I scan the phone myself; the barista never touches it. 2) typing in password each time - Don't separately password the app. It's no less secure than a physical card, and most folks already have a primary password to access their smartphone anyway.
I do agree that it's more hassle than it's worth. I have a 3g iPhone which doesn't support multi-tasking, but perhaps a multitasking smartphone would be less painful to use (just keep the Starbucks app running in the background for a quick switch). Not very scalable though.
The long delay to access apps is endemic to most smartphone apps today (especially so in devices like the iPhone which doesn't support a 'dashboard'). This needs to change in the future to enable a whole slew of new usage behaviors.
As far as scalability goes, hopefully an industry standard will emerge so that a single app can manage a wallet of multiple virtual cards. Once you can go from carrying a dozen loyalty cards to a single app, using a smartphone for this functionality starts to make a lot more sense.
It's simple enough to understand the basics, yet powerful enough to be engaging enough to keep a child's interest, providing them a direct visual output to their 'code'.
I would stay away from the higher level stuff like Visual Basic; there is so much magic going on under the hood that it becomes difficult to really internalize the basic concepts of programming.
There doesn't seem to be a lot of consistency with process between Starbucks stores, so I don't think this will last. Stores will just ignore the directive.
Although a huge chain, Starbucks doesn't seem to enforce standards very well. For instance, some stores are very clean and efficient, while others have obnoxious teens behind the counter making rude noises while filth piles up in the customer areas without being cleaned for hours.