gregbo (gregbo) wrote,
gregbo
gregbo

  • Mood:

Tellabs interview

I had an onsite interview today at Tellabs for a contract position developing and testing IPv6 over 3G (wireless) protocols. Three people interviewed me separately; two developers and one manager. I don't have time to write all of the details, so here are some Q&A:

"When is an ARP packet sent?"

I said when the ARP cache doesn't supply an answer; he seemed to be ok with it.

"Which language do you feel most comfortable in? Write a small program, anything you want, in that language."

I wrote a small Perl routine to return the nth fibonacci number. At first, I wrote some notes to myself on the whiteboard about the algorithm, then I started coding it. I initially forgot to put dollar signs on the variables, but when he asked how the routine would be called from another program, I remembered to do that.

"Given an array of integers, and an integer, as arguments, return an index, and partition the array elements in such a way that everything to the left of the index is less than the integer, and everything to the right of the index is greater than the integer."

I asked a couple of questions: whether I was allowed to use temporary variables, and should the array elements be sorted as well as partitioned. This is similar to how quicksort works, so I wrote code to find a pivot element. I made a small mistake which he caught, then we had a discussion about whether pivots were necessary. He seemed to think they weren't. But at least I was able to answer that the runtime complexity for any comparison-based sorting is O(n log n).

"Explain how traceroute works."

I didn't give the best answer, because I was trying to remember how each individual router is determined. I said that it sent out UDP probes, looking to elicit an ICMP time exceeded packet from each router on the path. Then I remembered that the TTL field of the IP packet (containing the UDP packet) needed to be adjusted on each probe so that when it arrives at a router, it is zero, causing an ICMP time exceeded packet to be sent back.

I was asked some other questions about the projects that I had worked on. I was a little sketchy about the Nominum stuff this time; chalk it up to nervousness. The manager asked me what I thought about my skill set would best serve the project; I said my development and testing experience combined with lab experience and customer-facing support. The manager told me that the project would include some wireless protocol conformance testing, which would require me to learn some things about wireless protocol standards.

In summary, I think I could have done worse, but could have done better. I was a little nervous, but fortunately, I didn't get stuck.
Tags: career, job search
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments