Road Trip

May 21st, 2005

The longest flight ever. I’d decided that it was best not to sleep on the plane as i figured if i got a couple of hours sleep there i wouldn’t be able to sleep once i got to the hotel. My plane landed around 10:00 PST and i walked out of the chute and looked around. SeaTac is probably the nicest airport i’ve ever been in, probably a big part of which is that it’s all recently been (re)done. I made my way to the ground transport area and looked around. There were shuttles that went downtown, but i was tired and i really didn’t feel like trying to figure out which one went where so i grabbed a cab and we were on our way, with a short stop at the natural gas filling station. Apparently all of the cabs and busses run on natural gas there, or so says the driver.

I we made it to the W Hotel around 10:45 and i checked in and went up to the room. I didn’t spent much time looking around at the hotel or room, i was too tired, but i did need to iron my shirts and pants for in the moring so i did that as i made a few phone calls and headed to bed. I managed to fall striaght to sleep which was great. The next morning i woke up at my normal time, which wasn’t great considering it was still 4:00 seattle time. I managed to lay around for an hour or so before giving up and getting going. I decided room service was my best bet for breakfast, which was ok, but way way way overpriced at altogether $23 for pancakes and fruit. Looking back i had plenty of time to have gone down to a coffee shop or something, but oh well. I don’t really know what all i did to pass the time, mostly half watch tv i suppose. I was supposed to be there a little before 10:15 to sign some paper work so i killed time until around 9:45. The only time in there that i got nervous was about 20 mins before i was supposed to be leaving. I wasn’t in the mood to watch tv anymore and didn’t have anything to distract me.

As soon as 9:45 rolled around i got my stuff together and headed down to catch a cab. After a long winding pathway up and down the hills i saw the pacmed building come in to view. The cab dropped me off at the south entrance and i made my way in to the visitors desk and spoke with the person there. He gave me a badge and some paperwork. A tip if you’re interviewing with amazon.com, you’ll probably want to show up a little earlier than i did. I was slightly rushed to get all of the paperwork read and filled out in the time i had (~15 mins.) Also make sure to bring a copy of your resume and references as they’ll come in handy with filling out the application. After i finished the paperwork i sat for a few mins and looked through the magazines in the waiting area and was retreived by someone from HR. She took me to get some water and then to the interview room in which i would be spending much of my day.

We talked for a few minutes doing some of the standard behavioral interview stuff and then my first interviewer came. We introduced ourselves and she asked a general question or two as she wrote the first technical question up on the board. I got off to an ok start and was doing things pretty much how i was supposed to, talking through the problem, diagraming, etc. I started to code up the solution i had come up with and got off to an ok start there as well. As i continued to fill out the code there was something about it which i didn’t like. It was getting a bit bigger than i thought it should be and i knew there had to be a better solution, but it wasn’t coming to me. That was well and fine, and i was able to continue writing out code that was pretty close to a solution, but i kept getting tripped up because i really wasn’t liking my solution. I came up with a solution to the more code and work that it should be problem in the cab on the way home, not that it did me any good at that point. After we wrapped up that question we went on to some more general, non-code, questions and i was able to kind get things rolling and felt like i did a better with the rest of the questions, technical and non, from that point on.

My second interview went smoother, or at least i felt that way. We got through 5 or so questions half of which involved code, two of which were object/design, and one of which was a scoping/estimation problem. There was some non-technical stuff interlieved in there. I guess i would say the two differences between the phone interviews and the on-site were much harder questions and the non-code stuff interleaved.

My third interview was a lunch interview with the hiring manager. I got to eat at the PacMed Cafe. The food was pretty good, we were in a pretty decent hurry so i didn’t really get to look around too much. The lunch interview went really well the manager seemed really interested in me. He had an interesting style, which made me think back to the first phone screening (which was also with him.) There’s something about the way he asks follow up questions and for clairfication of what you’re saying that gave me the impression that what i was saying was wrong. It took a few minutes to kinda realize what was going on and after i did it was much easier for the rest of the time, i guess by easier i mean i felt that i was doing better more than it was less difficult.

The fouth interviewer was from the same area, but a different group. We walked through a code question, to which i got off to a false start mis-understanding what he was looking for. After a couple of mins working through things the wrong way i started to realize there was a misunderstanding and stepped back and asked several more questions about the problem that clairfied it for me. I then went to work on a solutino and was able to come up with something that would work, but wasn’t all that efficient. He then supplied me with a piece of information about the problem that i could take advantage of to drastically optimize my solution. I was able to understand what he was suggesting after a little bit of discusion and then we started to work through coding that up. His next question was a pretty quick and simple one about serilizing a tree and then we went on to a couple technical questions about security of digitial media and authentication.

As we finished up my final technical interviewer arrived. We introduced ourselves and talked for a few mins and he was from a different area of the company. We started out with a database design question modeled on a real system they have in place. From there we moved on to questions about scalibility and redundancy as well as coding questions that involed set operations. As we were finishing up he was asking non-technical questions and we were talking about the company, the things they do, and the interviewing process as a whole. He said he was my “bar-raiser,” someone who’s job it is to make sure that the interviewer is better than the average amazon.com employee, or so i’ve since read somewhere. His interview was a bit different from the others, i wouldn’t say too much harder, but much much greater in scope.

After talking a bit longer, we got a call from the technical recuiter person who was supposed to wrap things up saying she wasn’t able to make it so he walked me back to the reception area and we concluded the interview process. They called a cab for me and i looked around at the amazon.com product launch stuff framed on the walls until it arrived. All in all i was very impressed with amazon.com and the people there. I felt that i did pretty well with the interviews and had a good rapore with all of my interviewers. As i walked back in to my hotel room, i sat in the desk chair and decided that i wanted an offer from them, i wanted to work for amazon.com in seattle.

(to be continued…)

Round Two

May 19th, 2005

… So a day or so later i get another call from the technical recuiter at amazon to set up round two of the interview process the technical interview. It’s set up for the following day. Fast forward to the next day and the phone call. This one starts out with a request to describe myself, my expirence, and why i’m looking for a new job. Uh-oh, that one hadn’t even crossed my mind. I mean i know that i’m looking for a new job and i know why, but i don’t know that i can give a good interview answer on the subject, i guess we’ll see. So i start in talking about some of the things i’ve done at work and how much i’ve learned doing this and that, throwing in lots of buzz words (but only when we’ve actually used the concepts behind them and they actually mean something. I do pretty good job and even get a good laugh or two when i talk about the name we picked for our image processing toolkit.

I finally get to the part where i’m going in to why i’m looking for a new job and say something close to. “I’ve been in my current job for 5 years and 6 months before that as a co-op. Along with my team mate(s) i created everything from the ground up building an expansive toolkit and libraries (refering back to the stuff i’d mentioned previously in the question) and have applied them to problems many times over. I have reached a point where i’ve run out of room to grow in my current position and am less interested in the other avenues afforded to me in main-line printer code development. It’s not that i can’t do what i am a day longer, but i felt it was best for me to start exploring other opertunities.”

I took a breath and was like, damn, so that’s why i’m looking around at other jobs. I’d probably put it better there in the interview than i’d ever even thought it in my head. Sure there are other smaller reasons that have affect my decision, but that’s what has brought me to the point of doing something about it. That’s why i put my resume up on monster.com. He seemed pleased with my answers and explained how the remainder of the interview would work. We then started in on the questions. “How would you find the nth node from the end of a linked list?” I respond with the same short and sweet answer i gave in the previous screening. He moves on to the second question, the same as the second in the first interview. I let him finish asking and state that i recieved both of these questions in the previous round and that i was more than happy to answer them, but i didn’t think that would show him much. He then realized he was mistakenly told he was the first round interviewer rather than second. He shuffles things around for a min and then starts in on the the second round process. This one differs in that it involes coding, albeit over the phone. If you’re doing this i highly suggest pencil and paper, don’t use a computer the clicking and clacking the background would be annoying.

The process goes something like this. You’re asked a question, you think about it and get clarification as necessary. You then start to brain storm out loud showing that you’re thinking through before coding etc. You then can begin to code. I suggest that you kinda lay out the structure of things and go back and work through the deatils, at least that’s usually the way i worked with these. While your at it don’t forget to consider the edge cases and talk about the fact that you’re considering them. This interview progressed with two more questions, one of which required more coding. These questions were probably a step harder than the previous round, but workable now that i know how thins are supposed to go. Another short interview, 25 mins or so, this time i wasn’t worried though. I’d done pretty well and for the most part knew it. At the end of the interview i asked a few questions diving in to their work environment and team sizes and project size/duration. At the end i was still a little surprised when he said “the next step will be to get you our here for an on site interview.” I replied with something to the effect that it would be great and i was looking forward to it. I hung up the phone and said to myself, “holy shit, i’m going to seattle.” heh…

(to be continued…)

Westward Ho! (part one of many)

May 18th, 2005

If you know me you’ve probably already heard, but just in case you haven’t I’ll catch you up to this point.

I’ve worked at Lexmark Intl. for 5 years and 5 days (not counting the time i co-oped there. I had been building up to the process of looking around to see what else is out there for somewhere between a year and six months. About a month and a half ago i finished updating my resume and put a copy up on monster.com, not expecting to every hear anything back from that. Fast forward a week or two and i get a call from a lady at amazon.com asking if i would be interested in interviewing with them for a posistion with their digital media group. She mentions the job is in Seattle, which causes me to do a double-take. Seattle, the though of it had never crossed my mind, but now that it had it sounded intruging so i said sure. We set up a time for the first phone screening, a few days later.

Round One: So i don’t really do any prep for the interview other than a bit of research on amazon.com, the technologies they use, and seattle in general. Very little that will actually help me in the interview. So Monday rolls around and i get the call right on time and we start right in to things. “How would you find the nth element from the end of a linked list?” This one is easy so i rattle off the simplest solution and follow that up with the optimal solution making not of why the optimal is better etc. No problem there. So question to comes along (at this point i won’t post their questions, but if you ask me personally I’d be more than happy to discuss the types of questions and their purpose. This question threw me for a loop. I could think of a simple solution that would work in theory, but not in practice because of memory useage. I discussed it and then added a second pass that got rid of the memory requirements, discussing it’s merits and disadvantages as i went. The interview continued from there with more and more questions i didn’t _know_ the answer to. Finally culminating in a really hard, but really interesting question. We went back and forth about it for a few minutes. He would ask a question, i would propose a response and he’d question it, or expand the scope/throw more kinks in to the problem.

All through this interview i’m thinking to myself, i’m toally blowing this. I don’t even know the answers to the questions they’re asking in the first screening interview. As we draw to a close on the final question (after about 20 minutes of what i was told would be a 45 minute interview.) I’m thinking oh well. Which was werid b/c my initial thoughts when getting the call was why the hell not what can it hurt, but somewhere between there (when i started to read about amazon.com, learn about the job they were interviewing me for, and look in to seattle my “what the hell” turned in to “this would be really cool.”) So it’s at this point that i realize i apparently want this job. So the interviewer says, “well, i think that’s about all i have. Do you have any questions?” I asked a few got decent answers and left it at that. It’s at this point that he shocks me and says that i should be expecting a call in the next day or so about scheduling round two. Huh, i must of missed something. Anyway i keep my composure and say something to the effect of “i’m looking forward to it,” tell him bye, and hang up the phone in disbelief.

So i’m thinking i must be missing something and decide to look around on the internet about this interview process that i knew existed, but have never before underwent. I pretty quickly ran across a blog about a guys experience of interviewing with amazon.com and microsoft. After reading through it and some of the stuff it linked to i started to realize that i’d actually done exactly what i was supposed to i the interviews. I wasn’t supposed to know the answers, i was supposed to demonstright the ability to work through difficult problems (problem solving) and understand general software programming concepts and discuss them as i went. So i feel much better about it now and place an order for a copy of Programming Interviews Exposed. I bet you can’t guess where i ordered it from, heh…

(to be continued…)

Cars that can’t crash

May 3rd, 2005

A recent post on /. discussed a collaboration between Ford and Microsoft to create the next generation of cars.Articles are here and here. I point this out not because i find the subject all that interesting, but because of the extremely high level of irony.

Some choice quotes:

  • Interstate Explorer
  • Officer: Can I see your software license and registration please?
  • “Format Or Reboot Daily” …. seriously, do you imagine having to reinstall Windows on a %#$@ car???
  • You won’t need to re-install, just update the driver. Hmmmm….
  • “You can have your BSOD in any color, as long as it’s black.”
  • unfortunately due to a restrictive EULA you will not be permitted to sell it once you’ve used it, and you can be arrested for opening the hood.
  • Will I have to pay yearly license fees to drive my car, or will it just one day swerve off the road if I let my licenses lapse? Can they catch a virus from neighboring cars at the parking lot? Will it come with Clippy? “Hello! you seem to be flying off the roadaaaahhhhhhhhhhhhh” (car flies off road, rolls, and catches on fire).

That’s just a couple. You should really read the comments.

Amazon Music Downloads

May 1st, 2005

While looking around today i ran across a blog entry mentioning that amazon.com has full song music downloads for quite a few artists with good songs on most albums. There’s also a top downloads page.

My finds thus far:

And i’ve only listened to about 1/3 of what i found in a 15 min period. There’s also a lot of Allison Krauss on there as well.