HOME Calendar Join / Renew PC Alamode About Us HELP Sponsors
Reviews Columns Features Theme Issues   Archives Other  


 Ponderings

Interview tips with Microsoft
November 2003

Meredith Poor started programming in high school on 8K Datapoint 2200s around 1971. Most of his work now is focused on business applications software, typically using SQL-Server, MS Office, and IIS.


A book I picked up recently, titled “How Would You Move Mt. Fuji”, describes Microsoft’s employment candidate interviewing techniques. Software companies are often hiring developers right out of school, and the cost of a bad decision can be huge. Among their interviewing tactics is to present the candidate with puzzles. This helps identify a candidate’s ‘depth of context’: their ability to see beyond the ‘obvious’ or most immediately recallable answer, and recognize what might be more a significant meaning or outcome.

They would also asked to ‘design’ something, such as a spice rack for blind people, or a microwave oven controlled by computer. The hapless candidate might remark that they weren’t going to leave frozen food in a microwave all day, simply to have it wake up at 5:15 and make dinner for whomever arrives home at 5:30. Often such interviews ended on a sour note, even though the candidate was probably correct in identifying this product idea, as described, as pretty pointless.

If you are applying for work at Microsoft, you might have more success with the following response:

A microwave oven is a component in a suite of appliances in a kitchen, so the relevant question is not how do you interconnect a microwave, but how do you automate a kitchen. Clearly the microwave does nothing for salads or fresh fruit. Presumably, we intend to improve on the commercial equivalent of MREs, food that could be left in an Egyptian tomb for 3000 years and still be ‘edible’.

The kitchen components begin with various stores, which are a combination of cold storage, dry storage, and one or more freezers (we’ll leave the lobster tank out of the scenario for the moment). These ‘feed’ a collection of cutters, mixers, peelers, skinners, and so forth that handle the ‘first round’ of processing. These are often labor intensive components of food preparation.

Some foods, such a bread, marinating meat, and pinto beans, may need to sit for awhile before anything more is done. Typically this is done in pans or bowls, with or without covers.

After another round of mixing, separating, sprinkling, etc. some components are cooked, primarily meats, vegetables, and some cereals. Tea and coffee also go through high-temperature cycles, even though the eventual result may be a cold beverage.

Following the cooking, there is again a round of cutting, and then migration from preparation vessels to serving vessels. These are then circulated to the family and/or guests.

After dinner, the appliances need to be self cleaning, so much of the ‘work’ in the system is still to be done. The various appliances, tools, pans, trays, etc. are treated with specific cleaning regimens that are targeted to their makeup, function, and residue.

In certain respects this system looks like a model train set, where supplies are dispensed from ‘warehouses’, deposited in various stations, processed, moved to other stations and processed again. In some cases, the tools are what move around; those that are needed are visible, the remainder remain ‘retracted’.

This system would obviously need to be run by computer. There would be several layers to the user interface, most of which would be accessed through a browser. One layer is menu composition, where the day’s dishes are specified, along with their serving sizes. In some cases the menu is prepared in advance and ‘triggered’ by a command, in other cases once the menu is defined the user activates the processing cycle immediately.

Another layer is the inventory, which includes the usual staples such as flour, cooking oil, and potatoes, but also the fresh produce and meat that have limited shelf lives. The user combines the expected menu with the existing inventories, whatever is missing makes up the shopping list, which may be expanded to handle snacks, household items, etc.

Then there is the recipe set, containing the procedures for cooking each of the separate dishes. Some of these ‘cross-feed’, if the pan drippings are used to make gravy, for example.

And there will be a ‘diagnostics’ screen set, both for configuration the collection of appliances within the particular household and procedures for exercising and testing each unit. The results from these may dictate repair or replacement of certain units.

Any number of people would look on this entire creation in horror, thinking that the kitchen is the place where the family congregates for daily doses of hugs, cookies, parental bonding, and message exchange. The idea of it becoming a robotic factory is blasphemy.

As such, it probably makes more sense build something like this for commercial kitchens, such as mess halls, student unions, and restaurants. A homeowner might spend as much on such a kitchen as they would on the rest of the house, which is a shame when half of all meals in the US now are eaten outside the home.

Since a drive down any major thoroughfare shows ‘help wanted’ signs on many restaurants, this idea is ripe for exploitation.

Our ‘burger flippers’ could become robot techs, with (perhaps) a corresponding rise in effective pay.

And so on....

Now lets say that you interview with Microsoft and they hire you based on this design session. Lets say that you get stock options after working there for a length of time, and you are actually able to cash them in for $1 million. If all those things happen based on what you read here :

YOU OWE ME, BIG TIME! 


Copyright© 1996-2008
Alamo PC Organization, Inc.
San Antonio, TX USA