Sunday, August 19, 2007

The Field is Almost Set

Week five of the current job search proved to be busy, with lots of interviews and examinations. Rather than go chronologically, I'll recap them by lead, grouped by their quality.

Crappy Contracts

Everybody Wants You: In this affordable city of mine, there is a beleaguered manufacturer of big ticket auto parts that recently got purchased by a couple of private equity organizations. Apparently, IT operations are outsourced to a well known services organization.

The company has its own custom software for doing engineering calculations, and they need someone to work on it. Rather than looking for someone themselves, the outsourcer has apparently enlisted the aid of staffing agencies far and wide to fill this role. It's easy to sniff this out, because the in-house application is mentioned by name, so you can search the job boards using that name as a keyword.

On dice.com, I count eight different postings for the same job. Monster has one posting, and that one is by a yet another agency. I have received seven e-mails and a couple of phone calls from yet even more agencies pimping the same role.

It's pretty clear where the codename for this lead comes from.

Last Friday, I went ahead and let one of the agencies put my name in. I received a followup call from someone at that agency on Wednesday verifying that I was a local candidate and eligible to work in the U.S. I haven't heard anything since then.

Incredible Shrinking Electronics Company: Just north of this city, there is a big ugly building that once housed the U.S. headquarters for a major consumer electronics manufacturer. You probably have seen their TV ads in years past because they had the doggie and his puppy in them.

Over the last few years, they have come to the realization that they can't compete in the commoditized markets, like MP3 players, DVD players, and HDTVs. They've sold off those divisions and downsized a lot... so much so that the big ugly building has been vacated and taken over by one of the big hospitals in town (remember: eat, shop, and die).

The ragtag, fugitive fleet of engineers that remain are focused on trying to make inroads into higher value added markets, which include set top boxes for cable companies and TV over IP. This development is being performed by contingency labor, hired on in 6-month contract cycles through a staffing agency. Although they really want embedded system developers, my prior experience with the PenguinOS and multithreaded software made me a possible convert.

On Monday, I did interviews with the set top and IPTV groups. One interview was in the early afternoon, and the other was in the mid-evening, after the kids had gone to bed. The early afternoon interview was supposed to involve two guys -- one a manager and another a staff engineer. After waiting a few minutes, the manager started the interview and kept on noting how his staff engineer was supposed to be there. The interview went for about 40 minutes, and the guy never showed. Later on, I would find out that the missing engineer was busy calling my home phone and acting puzzled when my wife told him that I wasn't there. The evening interview was a reschedule of the Friday no-show, and it went pretty well.

I would later get e-mails from the staff engineer asking me to set up a time for him and me to talk. I also got an e-mail from the recruiter saying that they wanted me to come in and interview on site for another four hours. I called the recruiter and told him that the noshow on Friday and the mixup with the other engineer didn't do much to inspire confidence in their organizational skills. He assured me that the disorganization was temporary because they were so busy with hiring new people. I did wind up having the additional interview with the engineer on Tuesday.

They wanted me to do the interview either over the course of a half day or over two days. Given that my time is at a premium, I decided to bug the recruiter on the details of the contract. I wanted to know some specifics, like benefits, time off, duration of contract, chances of going to permanent, etc. The time off was minimal, 6 days of paid leave for the first year. Chances are, it would be a long term contract unless my performance was inadequate. He had to put me in touch with a third party administrator for the cost of health insurance. The cost for family coverage was $210.69/weekly pay period, or just south of $11,000/year. With that information and the project contract rate, the job looked pretty sucky, so I let him know that I was no longer interested in pursuing the lead.

Shitboat: The agency representing the Incredible Shrinking Consumer Electronics Company must have been running a buy one, get one free sale, because they set me up with an interview for a consumer electronics company that had engineering offices in the Music City. I had agreed to the interview, provided that relocation assistance was possible. He didn't reply with any specifics, but went ahead and set me up to talk with them.

I interviewed with them on Tuesday. This interview involved a manager and two engineers. The first 20 minutes were squandered on technical difficulties. The manager wasn't able to call in on the speaker phone the two engineers were using. They blamed it on a VOIP phone system crash the night before. They then had me dial into a third party conference call system. That worked for a few minutes, but then the person deemed as the "host" of the meeting pushed a button an exited the call, causing the conference call to be terminated.

They eventually called me back, offering me the opportunity to give up there. I was gracious and said that I would continue on. The manager didn't get to listen in after all. They told me that they are responsible for developing the software that drives their employer's TV sets, from the tuner to the screen. After going through my resume, they started a set of questions at the pace of the lightning round of a quiz show.

Later on in the day, I received word that they would be making me an offer and they'd need a fast response because they were on a busy schedule. I brought up the question of relocation with the recruiter. He said they would probably cover up to $500 to get my stuff moved down there, a plane ticket to get me there, and a week in a hotel to find a place to live. I said, "No thanks."

In case you're curious about the origins of the code name for this company. It is an anagram (OK, OK, I cheated and added a second "t") of the company's name, discovered via some doodling while waiting for the guys to get a working conference call.

Hedge Clipping

Waking Up with the House On Fire: It's now been two weeks since I did the initial phone interview with these guys, and I haven't heard anything from the recruiter regarding feedback. I'm presuming either I didn't meet the expectations of Mr. GCC know-it-all. This past week, I saw some news about how the bloodbath on Wall St. had not spared that fund. By Aug. 10, one of their funds was down almost 9 % for the year.

GlobalCrunch: I did a second phone interview with this hedge fund on Wednesday. It was a mixture of standard C++, POSIX threads, and algorithms questions. The gentleman who interviewed me was Chinese, and usually I have a tough time reading the vocal tones, which leaves me feeling nervous that the interview is not going well.

Toward the end, we were talking about some of the hardware they use. Since it is the PenguinOS, I asked him what distribution they ran. He misunderstood the question, and started talking about how many of their 100 or so servers performed certain kinds of functions. Then he mentioned that a large number of the machines were used to do simulations of models, and wondered aloud why they used so much CPU power. And then for a moment, he stepped outside that stoic character and started laughing. He then said, in his heavily accented voice, "We lost a lot of money last week."

Later that day, I received word that they would not be moving forward in the next step, which would have been the completion of a two hour online examination. My recruiter said they didn't say what had influenced their decision. Both interviews had gone well, so I suspect they might have decided to cut back on their hiring plans due to stock market craziness.

SOHO Successful: This hedge fund would have been neat to work at, I think. Indeed some of their recruiting materials sounded like they were influenced by the writings of Csikszentmihalyi. To get considered by them, one had to pass a two hour timed programming test. I scheduled that for Tuesday night.

I got a call that evening from a representative from the fund. She gave me the introductory spiel and asked me some basic interview questions. Then I got an e-mail from her that contained two problems that I needed to write programs to solve in two hour's time. I was to mail in the solutions, and they would be scored as failures if I didn't get them back by the agreed time.

It was sort of like a software development version of Iron Chef. One problem involved identifying which characters of the alphabet didn't appear in a string. The other was an exercise in parsing and simulation involving a one dimensional system of particles.

I managed to come up with solutions to both problems, coding what I thought was a working example to the first and getting most of the way through the second. I turned in my work with a little under two minutes left to go. I didn't think I had done that bad.

A couple days later, I got the word from the recruiter saying that they couldn't get my first solution to run without crashing, and they claimed that my second solution didn't allocate memory, despite at least two calls to malloc() therein. I suspect that the recruiter was relaying something that was told to him through the telephone and that something got lost in the translation. In any event, with that result, the lead officially was dead.

Local Love

So You Think You Can Search?: There is a local search engine startup up in the north suburbs with the vision of one day overtaking Do-No-Evil. I had an on-site interview on Monday night at their new offices up in the same shopping mall that houses the other startup with whom I interviewed in May.

The interview was to involve four people and last a total of two hours. I spoke with one of the Java guys, a guy who is working on their products for mobile phones, a guy who works on the C++ code, and the new systems guy with whom I had done a phone interview on the prior Thursday.

The first three interviews went pretty well. It was reassuring to know that the C++ guy shared the same extreme loathing for multiple inheritance that I did. I also learned that their CTO, who was responsible for most of the original search engine C++, used multiple inheritance in several places. It sorta confirmed a suspicion that I had held last fall... that the CTO was proud of his knowledge of the minutiae of the language, but didn't know jack about how to use it effectively.

The interview with the systems guy had some lousy moments. He decided he wanted to grill me just how much I knew about Java sometime after two and a half hours into the interview. He started to ask me questions about the Java class hierarchies, things that I tend to rely on ready access to the Javadocs rather than committing to memory. He then had me code something involving the manipulation of strings. With my mind in a crispy state, I did something hackishly C++-ish. I was then informed that my knowledge of Java was nowhere near that of a senior level engineer's. From there, he was asking me whether I had it in me to learn the material on their breakneck pace. He was starting to show an attitude and it was really grating on my nerves.

As we were wrapping up the interview, I told him that my timetable included interviewing for some additional locations, not mentioning them by name, but volunteering the locations, one of which was the Windy City. He quipped something about me buying his old residence up there, which is now for sale. I was half tempted to tell him who the lead was (Do-No-Evil), but I didn't. If I do wind up getting a job with Do-No-Evil, I might just give him a call to break the news to him.

A couple days later, I got a call from their recruiter, whose voice will be portrayed by Rick Moranis if my life's story is ever turned into a movie. He said they wanted me to come in for another two hours of interviews with their C++ team. I'm doing that this coming Monday evening.

PrizonFone: I'm almost too embarrassed to admit that I'm actually following this lead. The company, based in the deep south, has been around since the late 80s, but has been on a bit of a growing binge the past two or three years since they got acquired by a private equity fund. They have been acquiring the correctional phone divisions of several major phone companies, including that Mother of All Blueberry Swirl Snowballs, which maintained an engineering office here in the Circle City.

As far as I know, they're looking for someone with both C++ and .NET Framework experience as well as knowledge of hardware used in telephony. My understanding is that they wish to migrate their phone systems to .NET. From the patchwork of other "would be a plus" skills, which included Borland Delphi (think of me saying "Delphi?" using Gene Hackman's portrayal of Lex Luthor saying, "Otisburg?" as a rhetorical template), my guess is that their source code has all the evolutionary grace of a duckbill platypus.

They sent me a trio of programming tests to take: C++, the .NET framework, and data communications fundamentals. The .NET framework test was a new one for me, and it isn't so hard if you have the Microsoft official documents handy. Fortunately I can find my way around those things with the greatest of ease. The data communications fundamentals basically tested you on how well you had memorized the OSI protocol stack diagram and the different kinds of leased lines (T1, T3, etc.).

I did well enough on the tests to get an invitation to interview over the phone. I got e-mail and a cell phone call from the recruiter asking me to do the interview on Monday if possible. I don't know if that's going to happen with a joint therapy session midday and that followup interview with So You Think You Can Search. I think the first day I'll be able to talk to them is Wednesday.

Just for the record, the name of the guy with whom I am supposed to interview is named Shashank. Whether I'm able to redeem myself in the phone interview remains yet to be seen. (cue rimshot)

Long Distance Relationships

Steel City Java Trading Software: I'm taking Tuesday off to spend a morning and afternoon over in the Steel City to see if I'm fit to work for a supplier of software to the finance industry, given that the finance industry hasn't been too impressed with me thus far.

The worst part is that despite all the direct flights between here and there (one of the airlines that serves our airport has a hub there), they couldn't manage to find me a direct flight, so they have me taking a route that has me pass through the southwestern corner of the Buckeye State. The interview itself isn't supposed to take that long, so I suspect I'll have a nice long afternoon of reading at the airport ahead of me.

Broadshoulder Advertising: I'll be off to the Puget Sound for an interview with this company. I fly out the night of Labor Day and interview at 8:30 a.m. on Sep. 4. I get back on Tuesday night, just before midnight.

Pack-the-Pipe: This interview takes me to the Bay area, leaving the afternoon of Sep. 6, interviewing at 10:30 a.m. the next day, and flying out on the redeye that night. No, the name has nothing to do with the city it's located in. It has to do with the function of their network acceleration appliances, which make heavy use of compression.

Powerball

Do-No-Evil: I had the much awaited interview with Do-No-Evil at 6:30 p.m. on Wednesday, and it went pretty well. Just in case you doubt me, here's a photo of the caller ID on our phone.



Although the position is for the Windy City, my interviewer works at the mother ship in the Silicon Valley. He admitted he wasn't sure what they did at the other office, but he added that he worked in the Internal Applications division, which was the same division for which I was interviewing.

He started off asking me about my resume. I got to explain the saga of my evolution from chemical engineer into software engineer. He then asked me my thoughts on Java versus C++.

He then asked me about a project at my current employer, which led to questions about network protocols. He noticed that I said that I designed my own network protocol at this current job, so he asked me to comment on the issues I had to deal with in doing that job. So I expounded extensively on the goals I set for the design, including some things that I found important based on troubles I had run into with writing parsers for other vendors' protocols. He said that he had worked on similar design tasks in his past and that not only did I mention most of the things he had run up against, but I brought up some things that had never occurred to him. I suspect that was a good score.

About 20 minutes or so into the interview, I got the brain teaser. I was to come up with a way for computing the median of a very large set of integers, so big that it couldn't fit in computer memory. I had never run into this problem before, but I didn't freeze. I started thinking about things that were cheap to compute, like the largest and smallest values of the set. I knew that the median had to be between those values, so from there I could set upper and lower bounds.

I could then use the midpoint between those values as a test value and run through the whole data set, comparing against that value. If the count for "less than" was larger than "greater than", I knew that the median had to be less than the current value, and vice versa. So I could adjust the bounds accordingly, do another midpoint estimate, and rerun the calculation. It was a divide and conquer sort of approach. He then asked me to think of a data structure that works in that way. I suggested a binary tree, and from there we were able to come up with a more formalized solution.

Then it came to question time. Since he didn't have any information on the position I was hiring for, I asked him to tell me how he found his way to this company. He told me a tale of how he had moved to the Valley around 2002, after his job in New England had been eliminated. Prior to that, he said that he had worked for VAXes 'R Us. He weathered two failed startups in the Valley prior to hiring on, and he said that he was really happy with his current job.

The things he told me clued me in on his age, putting him at least a decade older than me. It was good to speak with him, because it really put a dagger into that perception that Do-No-Evil only likes 'em young.

At one point during the interview, I said that I was concerned that my lack of formal training in computer science would work against me because there are still some theoretical areas where I find myself lacking. He said that they look for people who are adaptable and are willing to pick up new things. That also gave me reason to hope, because my resume tells a very long story of adaptation.
blog comments powered by Disqus