We receive frequent requests to join the Bespoke Silicon Group. We have had many collaborators
over the years and it has been a rewarding experience for all. Typically, after you have been approved,
you are assigned a graduate student mentor and will join us on weekly (or twice weekly) Zoom calls, and interact with the team over slack.

Here is some guidance for what we are looking for.

A. If you want to do computer architecture or hardware design work:

- If you are an undergrad at UW, you must have gotten very strong grade in an undergraduate architecture class (e.g., ECE 469) 
which includes implementing a 5-stage pipelined processor in SystemVerilog/Verilog or another HDL, with bypassing. 
If you are not sure what this is, then you definitely have not taken the material. =)

- If you are a MS student at UW, you should have gotten an A in the equivalent of ECE 469 at your prior institution.
Additionally, you should have strong performance in CSE 548, 549 or ECE 525 (= CSE 567). From there you
you need a strong performance in CSE 599, and then you can be considered for an RA, funding permitting.

- If you are an undergrad from another institution and wish to collaborate remotely, you need to have 
a strong transcript that shows strong grades in logic design, computer architecture, etc. You should have taken the equivalent of ECE 469.
Experience in HW design internships is a major plus. 

- If you are considering applying for MS or PhD program at UW under our guidance, generally we advise that you apply to both
CSE and ECE departments for PhD, or ECE department for MS (there is no CSE MS program.) Please do drop a friendly note with your
CV attached and highlight any relevant background to our group. Because of the sheer volume of applications, we do not generally
talk to candidates until after the application has gone through a more formal evaluation process.

All of your code must be contributed as open source to our repositories on github.com.

If you do well working with us, then we can typically write a strong letter to help you get into graduate school
or get your first position in industry.

Because a significant amount of your time will involve learning, we require a minimum time commitment to ensure that
you have the bandwidth to complete a project with us:

- For school year collaborations, we require at least 20 hours per week of time commitment for at least a period of 6 months
- For summer time collaborations, we require 40 hours per week during the summer for at least 3 months.

B. If you want to do compiler work:

- Prior experience in LLVM or GCC.