Applying to RC
We’re glad you’re interested in applying to RC! This page explains our admissions process from start to finish.
Our admissions process has three steps:
- a written application
- a conversational interview
- a pair programming interview
After each step, we decide whether to invite you to the next one. The entire process generally takes between one and three weeks.
The written application
The first step of the process is filling out a written application. To help you write the best application possible, you can read about what we look for in Recursers. If you are eligible for a grant, you can request one on your application. We don’t consider whether or not you requested a grant in making admissions decisions.
On average, we review applications about a week and a half after they’re submitted. We try to prioritize reviewing applications for the nearest batch. When we make a decision, you’ll either receive an invitation to interview, or an email notifying you that we don’t think RC is a fit at this time.
The conversational interview
If you’re invited to interview, you’ll be sent a link to book a time to meet. We try to have slots available at a variety of times on both weekdays and weekends. If none of the available times work for you, please email us at firstname.lastname@example.org.
This interview is intended to be a general conversation. We want to learn more about your interests as a programmer, what you’re working on, why you want to attend RC, and what you hope to get out of your time here. Conversational interviews typically last between 7 and 20 minutes and are usually conducted over a Skype video call. There are no trick questions, and you won’t be expected to program anything. We may ask some technical questions about the code you submitted in your application or projects you’re working on. You’ll also have an opportunity to ask us questions to help you figure out if the Recurse Center is a good fit.
After the conversational interview, your interviewer will decide whether or not to invite you to a second interview. Once they decide, they’ll send you an email to let you know. We’ll try to get a decision to you within four days of your interview, but it’s usually sooner.
The pairing interview
For your pairing interview, you’ll share your screen and pair program with an interviewer on some code you’ve written. We typically use Skype for screen-sharing. However, Skype is not always reliable, especially on Linux, so we ask that you also have a Google Hangouts account. This way you and your interviewer can switch to Hangouts if you have technical difficulties.
Before your interview, you’ll write a program that fulfills one of our pairing interview programming tasks or a program of your own creation, and put your code in a Gist. Use a programming language you are comfortable with.
Our goal in this interview is not to get the task done. What we really want is to see what it’s like to work with you. This is easiest if you select a task which is within your abilities but not trivial for you. A few things to keep in mind while choosing a task:
- Walking us through a problem you know cold tells us nothing about how you debug, test, take suggestions, think about design, or act when you’re confused.
- Conversely, attempting an overly large or complicated task might mean that we don’t get very much code written, which also makes it hard for us to evaluate the interview.
- Preparing for the interview is not cheating! We expect you to come in with an idea of how to proceed. If you want to choose an interesting task and read up on it first, that’s totally fine, but...
- Please don’t “practice” by implementing or memorizing the solution in advance – we’ve seen people walk through pre-written code before. While it’s not a deal-breaker in itself, it greatly reduces your odds of success because it makes it much harder to get the information we need to admit you.
- Read through the tasks even if you intend to submit your own project; they’re good examples of what’s feasible to tackle in 20 minutes. Remember you will need some extra time to acquaint your interviewer with your code, so please think about how to do this in advance.
After the pairing interview, your interviewers will get together and decide whether or not to admit you. You’ll either receive an invitation to confirm your batch, or an email notifying you that we don’t think RC is a fit at this time. As with the conversational interview, we’ll try to get a decision to you within four days of your interview.
When to apply
Applications are always open, and a new batch begins every six weeks. Applications for a batch typically open about six months before the batch starts, and close about two weeks before the batch begins, or when the batch is full, depending on which happens first. Here is the schedule of upcoming batches:
Please don’t apply to multiple batches if you’re not sure when you want to attend. Just submit one application for the batch you’re most likely to attend. If you’re admitted, you’ll have the option to choose a different one.
We don’t give individualized admissions feedback when we reject someone. This page explains why.
You’re welcome to reapply, but you must wait at least three months after the decision on your previous application. It’s not uncommon for us to admit people who we had previously rejected. In fact, 6% of all Recursers applied at least twice before being admitted. If you do reapply, we care most about seeing what’s changed since the last time you applied.
If you have any questions about the admissions process that aren’t answered on this page, please email us at email@example.com.