Qualcomm Interview Question for Software Engineer / Developers


Country: United States
Interview Type: In-Person




Comment hidden because of low score. Click to expand.
2
of 2 vote

I think this is a good solution:

Your channel can TX 1Gbps that is about 1*10^9 bits.
The guy is talking about turnaround time (or round-trip time RTT) so I guess he wants a protocol where sent data must be acknowledged.

So how much data does a server need to store while waiting for and ACK? all the data that has been sent before the arrival of an ACK!

buff = 1Gbps * 500usec. = 1024*Mbps * 5*10^-4 sec = 0.05Mb = 51.2KB

Now we need one buff to store the data that we sent and one to store the data that
we are sending so probably we need tot_buff = 2*buff

The protocol would require a packet ID, so that:

Send_packet: { void* data }
Response_packet: {bool ack }

The protocol should not use and ID because the ACK arrives always on time to be sure
that the ACK refers to the previously sent data frame.

- NC January 18, 2012 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 vote

I think this is a good solution:

Your channel can TX 1Gbps that is about 1*10^9 bits.
The guy is talking about turnaround time (or round-trip time RTT) so I guess he wants a protocol where sent data must be acknowledged.

So how much data does a server need to store while waiting for and ACK? all the data that has been sent before the arrival of an ACK!

buff = 1Gbps * 500usec. = 1024*Mbps * 5*10^-4 sec = 0.05Mb = 51.2KB

Now we need one buff to store the data that we sent and one to store the data that
we are sending so probably we need tot_buff = 2*buff

The protocol would require a packet ID, so that:

Send_packet: { void* data }
Response_packet: {bool ack }

The protocol should not use and ID because the ACK arrives always on time to be sure
that the ACK refers to the previously sent data frame.

- NC January 18, 2012 | Flag Reply
Comment hidden because of low score. Click to expand.
0
of 0 votes

Shouldn't it be 512Kb? 5*10^-1 = .5 Mbps = 512Kb/8 = 64KBps

- Anonymous January 25, 2012 | Flag


Add a Comment
Name:

Writing Code? Surround your code with {{{ and }}} to preserve whitespace.

Books

is a comprehensive book on getting a job at a top tech company, while focuses on dev interviews and does this for PMs.

Learn More

Videos

CareerCup's interview videos give you a real-life look at technical interviews. In these unscripted videos, watch how other candidates handle tough questions and how the interviewer thinks about their performance.

Learn More

Resume Review

Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. And, we use fellow engineers as our resume reviewers, so you can be sure that we "get" what you're saying.

Learn More

Mock Interviews

Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. All our interviewers have worked for Microsoft, Google or Amazon, you know you'll get a true-to-life experience.

Learn More