-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Interview Questions and Structure #393
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
layout: page | ||
title: Mock Interviews | ||
--- | ||
|
||
During Mod 6, your weekly assessments will be in the form of Mock Interviews. | ||
|
||
Each interview will be 30 minutes long and consist of both technical and non-technical questions. Instead of receiving a score, you will be "offered a job" or "invited to re-apply" . Regardless of outcome, you will be provided with feedback for improving your interviewing skills! | ||
|
||
Each week, we will be focusing on a particular PD theme, and we want to see you demonstrate that theme in your interview: | ||
* Week 1: Asking Questions | ||
* Week 2: Graceful Exit | ||
* Week 3: STAR and Concrete Examples | ||
* Week 4: Talking While Coding | ||
* Week 5: Planning | ||
|
||
In order to be "offered a job" you must demostrate the following: | ||
* Strong technical knowledge - answer most of the technical questions correctly. | ||
* Ability to exit tough questions - you must demostrate graceful exiting of any question that you don't know the answer to. | ||
* Ability to use examples to illustrate your answers - examples should be relevent and **specific**. | ||
|
||
<section class='instructor-notes' markdown='1'> | ||
The questions for each week can be found [HERE](./questions-4545) | ||
</section> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
--- | ||
layout: page | ||
title: Interview Questions | ||
--- | ||
|
||
You can ask these questions in any order. There are some questions each week that we know students will not be able to answer - this is by design to see how they exit a tough situation. Keep track on notes on [this tracker](https://docs.google.com/spreadsheets/d/1eMtwW-06Wv0YAdAnZVm5k8_VFNKEKzQeq24kGxMTHbQ/edit?usp=sharing), please! | ||
|
||
|
||
## Week 1 | ||
* Describe the 4 Pillars of OOP | ||
* What is HTTP and give a brief definition? | ||
* Explain Routing in .NET Core MVC? | ||
* What happens if implemented interfaces have conflicting method names? For example, what would happen if class A implements from IB and IC, and each class has a method `DoThing()`. | ||
* What is an enum in C#? | ||
* Difference between the Equality Operator (==) and Equals() Method in C# | ||
* Describe your background. How did you get to where you are now? Why coding? | ||
* Describe your strengths. How have you seen these in practice as a developer? | ||
* Describe a time when you received feedback that you were surprised by. What did you do with that feedback? | ||
* Tell me about a successful presentation you gave and why you think it was a hit. | ||
* What questions do you have for me? | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Because of the week's focus, I suggest we add "What questions do you have for me?" |
||
|
||
## Week 2 | ||
* What is MVC? | ||
* Explain as much as you can about RESTful APIs | ||
* What are properties in C#? | ||
* What are the different data types in JavaScript? | ||
* What are the Different Ways a Method can be Overloaded? | ||
* What is Bundling and Minification in MVC? | ||
* Describe your background. How did you get to where you are now? Why coding? | ||
* Tell me about a time you had a disagreement with a colleague and how you resolved it. | ||
* Tell me how you solve a problem. | ||
* Describe your time at Turing. What worked for you? What didn’t work for you? What was the structure of the program? | ||
|
||
## Week 3 | ||
* What are three tools or strategies you use to prevent shipping unstable code to production? | ||
* What experience do you have working with SQL? | ||
* What are the types of Joins in SQL? | ||
* What is LINQ in C#? | ||
* What is Database First Approach in MVC using Entity Framework? | ||
* What are Cast() and Convert() Functions in SQL Server? | ||
* Describe your background. How did you get to where you are now? Why coding? | ||
* What aspects of software development do you find the most challenging? | ||
* Describe an example of how you have handled a stressful situation | ||
* Tell me about a time you failed. How did you deal with the situation? | ||
|
||
|
||
TODO: Update so that students can demonstrate Talking While Coding | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I had originally thought that these interviews would be more leetcode style interviews vs questions. But in hindsight, I think it's good to have both. What do you think about maybe doing the first two weeks question style, and then the last 3 weeks more focused on Leetcode? And we can let folks know that as they are working on freethrows and pair interview practice in the early weeks. We could even set up a structure where they ask each other these questions during weeks 3-5 in addition to doing a leetcode style interview with an instructor? I like these questions, but I think coding while someone is watching is also an area we could give a lot of helpful feedback in. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Definitely - after I put all these questions together, I remembered that we wanted to focus Week 4 on talking while coding 🙃 So, that week I think will definitely be a code challenge. Week 3, our focus was going to be 'using concrete examples', so I think that having questions will be give students more chance to show that skill. What if we switch weeks 3/4 so that we do question, question, code, question, code? That breaks it up some, and let's us do a mix of both on either side of the holiday break? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I like that plan! So switching talking while coding and using concrete examples. |
||
## Week 4 | ||
* Describe Object Oriented Programming. | ||
* What are the benefits of using a version control system like Git? | ||
* What is IEnumerable<> in C#? | ||
* What are tags and attributes in HTML? | ||
* What is the difference between a struct and a class in C#? | ||
* What is the difference between a statically typed or a dynamically typed language? | ||
* Describe your background. How did you get to where you are now? Why coding? | ||
* Describe your coding experience and why you wish to continue? | ||
* What is your approach to working on a team? | ||
* What is one weakness you're trying to improve? | ||
|
||
TODO: Update so that students can demonstrate Planning | ||
## Week 5 | ||
* What does it mean to compile code? | ||
* What does API stand for and how do you define it? | ||
* What are the common HTTP Verbs? | ||
* What are the Filters in MVC? | ||
* What is recursion? | ||
* What is the difference between Interface and Abstract Class in C#? | ||
* Describe your background. How did you get to where you are now? Why coding? | ||
* Give me an example of a time you were able to be creative with your work. What was exciting or difficult about it? | ||
* How do you familiarize yourself with a codebase you haven’t worked in before? | ||
* Explain one of the most difficult code problems you’ve had to solve, either on your own authored code, or in contributing to someone else’s. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should probably set a passing bar for these. Maybe 6/10?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe there is also a half point structure or something for not knowing the answer, but gracefully exiting and sharing something related that you do know?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm a little cautious of setting a minimum score - what if students give really thorough answers that take up more time? I don't want to penalize someone who doesn't get through all of the questions, if their given answers are good. Maybe we reduce the number of questions?
I do think there are points on the table for graceful exits. I think a good graceful exit might even earn full points - there are definitely questions included that I do not expect students will be able to answer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmmm, that's a good point. That is tricky, I agree with you that we want to make sure students have time to answer thoroughly.
I do think it's helpful to have a rubric before so students know they don't have to get every answer correct to pass, and that graceful exits get points.
But we could also say something along the lines of "You don't need to get all questions correct to pass and you can get credit for a graceful exit" then keep track of the scores and come up with a passing score after.