Home / Get the job! / I want you to get this job Part 7: Homework

I want you to get this job Part 7: Homework

One of the ways major companies interview is to have a homework assignment for you to do. For trading firms, this is often a simple parser or data compression engine. For SpaceX, we came up with problems that would demonstrate clock domain crossing knowledge, packet forwarding and dropping cleanly.

When I first interviewed at SpaceX, the problem was relatively simple:

Design a UART with 13 data bits instead of 7 or 8 bits like a standard UART. Since this is no longer the HW problem, I have uploaded my solution to github: https://github.com/asicguy/spacex_uart

Why I think my solution worked ad got me the job:

1. I chose to base the UART on a standard 16550. If this uart were to be used in a system, it would be trivial to create a driver based upon open source drivers.

2. I point out the good and bad. I spend about 10 or so hours working the problem. I didn’t get to test everything and I hit some problems along the way. Demonstrating issues and how you solved them is important.

3. I chose a synchronous solution and analyzed and presented why I did this. This precluded the need for a CDC fifo. I included an example of one in the appendix.

4. I knew the implementation and the FIFO inside out. I was quizzed. I was grilled. I answered. In my implementation of the CDC FIFO, I could only store n-1 values. The question was presented why can’t you store n. I worked through the problem on the spot and came up with a solution.

Whether you are developing something for show and tell to a potential employer, or you are working on a homework problem, know it inside out. Demonstrate it. And have a clean presentation.

About admin

Check Also

Your own work

I want you to get this job Part 8: Homework part 2: Your own work

One mistake that I have seen regarding the homework assignments has been submitting your own …

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.