Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 56 additions & 13 deletions interviewing/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,17 @@ At the end of this workshop, participants can:

- [] Introduce themselves in 2 minutes
- [] Answer soft skill interview questions using the STAR method
- [] Prepare a strategy to get ready for technical interviews
- [] Prepare a strategy to get ready for technical interviews

## Setup 🌼

- Pair up into groups of 2-3
- Pair up into groups of 2.

## Stage 1: Introduce Yourself, 15 minutes 🙆

In almost every interview, the interviewer will ask you to introduce yourself. The goal is to give the interviewer a snapshot of who you are, your professional background, and why you're a good fit for the role. Take 5 mins to craft a compelling narrative.
In almost every interview, the interviewer will ask you to introduce yourself. The goal is to give the interviewer a snapshot of who you are, your professional background, and why you're a good fit for the role. The [CYF guide to introducing yourself](https://curriculum.codeyourfuture.io/guides/employability/interview/introducing-yourself) is a good reference that was included in this weeks prep.

#### Take 5 mins to craft a compelling narrative.

Some tips:
- Your response should be 1-2 minutes
Expand All @@ -28,11 +30,19 @@ Some tips:
- Do not overwhelm your interviewer with too much information
- Allow 1-2 minutes for follow-up questions

After the 5 minutes are up take turns practicing your introductions. While the other person is introducing themselves, put yourself in an interviewer's shoes. Share what the other person did well and what they could improve.
After the 5 minutes are up take turns practicing your introductions.

#### Spend 10 minutes introducing yourself to each other, 5 minutes each

Set a stop watch whilst the other person gives the introduction to see how close they are to 2 minutes. While the other person is introducing themselves, put yourself in an interviewer's shoes and ask them one or two follow up questions. Afterwards share how long their introduction took, what the other person did well and what they could improve.

### Stage 1b: Reflect as a group, 5 minutes

## Stage 2: The Soft Skills Interview 🥎
Come back to the main group and reflect together. Have a show of hands whose introduction was below 1 minute, below 2 minutes, below 5 minutes, or above 5 minutes. Discuss any challenges in keeping to a good time frame and delivering a compelling introduction.

Soft-skill interview questions are typically asked at some point during the interview process.
## Stage 2a: The Soft Skills Interview 🥎, 25 minutes

Soft-skill interview questions are typically asked at some point during the interview process, often in the a competency based interview question style. For an in depth guide read the [CYF competency based interview guide](https://curriculum.codeyourfuture.io/guides/employability/interview/competency-interview/) that was in this weeks prep.

Answer these questions with the [STAR method](https://ca.indeed.com/career-advice/interviewing/star-interview-method) which stands for Situation, Task, Action and Result. Here is an example of using the STAR method to answer a question:

Expand All @@ -43,11 +53,11 @@ Answer these questions with the [STAR method](https://ca.indeed.com/career-advic
- <strong> Action </strong>: “I organized a meeting to discuss the pros and cons of both frameworks, focusing on performance and our project requirements. After evaluating, I suggested using React Native because it allowed us to quickly integrate with the backend we’d already built. The teammate supporting Flutter agreed once we reviewed the long-term benefits.”
- <strong> Result </strong>: “We moved forward with React Native, completed the app on time, and received positive feedback from our teachers for both functionality and performance. It also helped the team work more smoothly on future features.”

Remember, when asked about failures or mistakes to say what you learned from them.
Remember, when asked about failures or mistakes to say what you learned from them.

### Discussion, 15 minutes
#### Prepare your questions, 5 minutes

Discuss how you might answer the following questions in a real interview. Take turns asking each other questions from the following list. Spend no more than 2 minutes on each.
Read through the following questions and choose a 3-5 that you are going to ask your partner. You can also make up your own questions or ask follow up questions to your partners responses.

- Tell us about a time you missed a deadline.
- What was your favorite project you have worked on so far.
Expand All @@ -59,10 +69,32 @@ Discuss how you might answer the following questions in a real interview. Take t
- Tell me about a time when things didn't go according to plan. How did you deal with it?
- What is your response when a colleague disagrees with you?
- Share a time you set a goal and achieved it.
- Tell me about a time you were working with someone on something and you disagreed about the approach
- What would you do if someone asked you to develop a feature that you thought would be detrimental to the product?
- How do you stay up to date with the latest developments in tech?
- What’s the last time you made a mistake? Talk me through how you discovered it and what you learnt from it.

#### Spend 20 minutes asking each other questions, 10 minutes each

### Stage 2b: Reflect as a group, 5 minutes

Come back to the main group and reflect together on what you found easy and challenging about this exercise. Did your partner stick to the STAR method? When you are preparing for a job interview it is good to prepare some example answers to these types of questions so you have examples that come to mind easily. You don't want to be reading prepared answers word for word but if you have some examples on hand you won't have to be thinking so much during the interview.

## Stage 3: The Technical Interview, 15 minutes 📞
## Stage 3: The Technical Interview, 25 minutes 📞

Pick any technical topic such as Javascript, Python, SQL, databases, etc., and search for the Top 50 beginner interview questions for that topic. Read through the list together. Discuss if there are any surprises in there. Which questions did you find easy and which ones did you find difficult? Try asking each other a couple of questions and see if you can answer them. Practice what you will say if you do not know an answer.
There are different types of technical interviews that may be used, read the [full CYF guide to technical interviews](https://curriculum.codeyourfuture.io/guides/employability/interview/technical-interview-prep/) and [CYF guide to take home tests](https://curriculum.codeyourfuture.io/guides/employability/interview/take-home-tests/) for an in depth guide.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When are we expecting them to read this? There's a lot of material here, so presumably not in the workshop itself? Is this:

  1. Pre-reading they should have done, which we need to assign in backlog/prep?
  2. A suggestion for something to do after the workshop?

Let's be explicit about it


For the purpose of today's workshop we will be covering 2 types of technical interview question.

1. **Knowledge based technical interview questions** - The purpose of these questions is to assess your knowledge of technical concepts, where there will typically be a right and a wrong answer. It is in part a test of your memory. [This](https://www.interviewbit.com/javascript-interview-questions/) is a good list of starter Javascript questions.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid using "this" as a link, it isn't very friendly to screen readers:

Suggested change
1. **Knowledge based technical interview questions** - The purpose of these questions is to assess your knowledge of technical concepts, where there will typically be a right and a wrong answer. It is in part a test of your memory. [This](https://www.interviewbit.com/javascript-interview-questions/) is a good list of starter Javascript questions.
1. **Knowledge based technical interview questions** - The purpose of these questions is to assess your knowledge of technical concepts, where there will typically be a right and a wrong answer. It is in part a test of your memory. Choose from [this list of good starter Javascript interview questions](https://www.interviewbit.com/javascript-interview-questions/).

2. **Opinion based technical interview questions** - The purpose of these questions is to understand your technical preferences and style. There is rarely a single correct answer, the interviewers will typically be looking to see if your views align with theirs and whether you can justify an opinion with clear reasoning.

Some examples are
- what does good code look like for you?
- what do you look for when you are reviewing a PR?
- what is your favourite language and why?
- what sort of tests do you write and when do you write them?
- what is your favourite technical book, blog post or podcast?

### Some tips for technical interviews:

Expand All @@ -71,16 +103,27 @@ Pick any technical topic such as Javascript, Python, SQL, databases, etc., and s
- If you do not understand something, ask questions!
- Practice, practice, practice

## Reflection 🧘‍♂️
#### Spend 5 minutes deciding 3-4 questions to ask your partner
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think ideally "picking some questions" would be done before class... WDYT?


You should mostly have questions that you have covered in your course so far that they are likely to know the answer to. You may want to add in just one trickier question so they can practice handling the situation where they don't know the answer.

#### Spend 20 minutes asking each other questions, 10 minutes each

Pick any technical topic you are familiar with such as Javascript, Python, SQL, databases, etc., and search for the Top 50 beginner interview questions for that topic. Read through the list together. Discuss if there are any surprises in there. Which questions did you find easy and which ones did you find difficult? Try asking each other a couple of questions and see if you can answer them. Practice what you will say if you do not know an answer.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we point at the above link for JS questions specifically, rather than suggesting searching separately?


## Reflection as a group, 15 minutes 🧘‍♂️

With the remaining time, come together as a group and discuss:
- Which of the types of questions did you find hardest and why? Were soft skills or technical questions harder?
- How did you feel introducing yourself? How could you tailor your introduction according to a job interview.
- Did you find it difficult or easy to use the STAR method to answer the soft skill questions? Why?
- Did you find the technical interview questions challenging? What are some strategies to stay calm when you do not know the answer to a question?
- Did you naturally find a good length for your answer to be, or did you start rambling or not give enough information?
- What could you do to prepare yourself better next time?

## Summary & Homework

Interviewing is a skill that takes lots of practice. Your introduction should be thought out and well-polished by the time you are at your first interview. You cannot prepare answers for every soft skill question, but having 3-4 prepared in advance makes thinking on your feet easier. Prepare for technical interviews by reading through the most commonly asked questions for that topic. For questions you do not know, ask clarifying questions, say what you do know about the topic, and admit when you do not know. Your interviewer does not expect you to know everything!
Interviewing is a skill that takes lots of practice. Your introduction should be thought out and well-polished by the time you are at your first interview. You cannot prepare answers for every soft skill question, but having 3-4 prepared in advance makes thinking on your feet easier. Prepare for technical interviews by reading through the most commonly asked questions for that topic. For questions you do not know, ask clarifying questions, say what you do know about the topic, and admit when you do not know. Your interviewer does not expect you to know everything! Interviewing is also very opinion based, even technical experts who are seasoned at interviewing will have occasions where interviews don't go to plan.

### Homework
- set up a practice interview by the end of this week with either a volunteer or another CYF participant.