The technical interview is a measure of your understanding of object-oriented programming, coachability, communication, debugging, error handling, and proficiency with tools like VSCode and the terminal. During the interview, you will be given a technical question and have approximately 20 minutes to work through it.
Here are key aspects to focus on:
- Object-Oriented Programming: Understanding the core principles such as classes, methods, and data types.
- Debugging and Error Handling: Be prepared to identify and fix errors as they arise.
- Tool Proficiency: Familiarize yourself with tools like VSCode and the terminal.
- Communication: Be prepared to communicate your thought process as you work through the exercises.
It can be nerve-wracking to code while someone observes you. To combat this, practice extensively!
You can use the following repository to simulate a technical interview:
Sample Technical Interview GitHub Repo
- Fork the repository.
- Open it in a GitHub codespace or locally.
- Time yourself for 20 minutes to solve the problem.
- Familiarize yourself with commands like:
ruby app.rb
(or specific file names likebirthday_cake.rb
)- Terminal commands:
ls
,cd
, etc.
- Read error messages carefully and debug step by step.
- Talk through your thought process aloud. If you feel awkward, talk to a rubber duck, your cat, or even your dog!
Remember, you are encouraged to ask questions during the interview. We operate under a "lock before key" principle, which means:
- You must ask a question to unlock the solution (key).
- We may guide you but won’t always directly provide the answer unless you engage with us!
- Book time with a TA for additional practice questions.
- Explore Exercism for Ruby exercises.
-
Have you read and understood the technical interview rubric?
-
Yes
- Great! Understanding the rubric is key to focusing your preparation.
-
No
- Please review the rubric again before proceeding. {: .choose_best #read_rubric title="Have you read the rubric?" points="1" answer="1" }
-
Have you forked and practiced the sample technical question?
-
Yes
- Great! Practicing ahead of time builds confidence and familiarity.
-
No
- Not so fast. Make sure to fork the repository and go through the exercise to prepare. {: .choose_best #forked_practice title="Have you practiced the sample question?" points="1" answer="1" }
-
Have you created an Exercism account and completed at least 1 exercise?
-
Yes
- Great! Practicing ahead of time builds confidence and familiarity.
-
No
- Not so fast. Make sure to sign up and go through at least 1 exercise to prepare. {: .choose_best #exercism_practice title="Have you signed up for Exercism?" points="1" answer="1" }
- Approximately how long (in minutes) did this lesson take you to complete? {: .free_text_number #time_taken title="Time taken" points="1" answer="any" }