Skip to content

Commit

Permalink
Fix issues (#12)
Browse files Browse the repository at this point in the history
* Fix issues from the last translations
* Update json translations
  • Loading branch information
akotadi committed Jan 9, 2024
2 parents b55bbbd + 0cb18b7 commit 1b267ec
Show file tree
Hide file tree
Showing 8 changed files with 201 additions and 41 deletions.
10 changes: 5 additions & 5 deletions docs/interview/interviewer/about.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ As an interviewer, your main task is to assess the interviewee's performance. Ho

#### Symbol

✅ = Do
❌ = Do Not
⚠️ = Situational
- ✅ = Do
- ❌ = Do Not
- ⚠️ = Situational

### Before the Interview

Expand All @@ -30,7 +30,7 @@ As an interviewer, your main task is to assess the interviewee's performance. Ho
|| Ask if you can be heard and seen correctly. |
| ⚠️ | Use other platforms if there are connection problems. |
|| Introduce yourself briefly to the candidate and give them time to do the same. |
| ⚠️ | In the presentation, if you are not part of any company (or were only for an internship), you can omit this part in the introduction if you are uncomfortable with it. |
| ⚠️ | In the presentation, if you are not part of any company (or were only for an *internship*), you can omit this part in the introduction if you are uncomfortable with it. |
|| Give a quick explanation of the interview format (stages, duration, tools, etc.). |
|| Allow them to start asking questions about their introduction. |
|| Allow the candidate to take too much time in their introduction.|
Expand All @@ -50,7 +50,7 @@ As an interviewer, your main task is to assess the interviewee's performance. Ho

| | Situation |
| --- | --- |
| ⚠️ | Skip this section of final questions (if you do not have real experience or are not comfortable, although you can role-play by giving "vague" answers based on those received by others). |
| ⚠️ | Skip this section of final questions (if you do not have real experience or are not comfortable, although you can *role-play* by giving "vague" answers based on those received by others). |
|| Allow questions about yourself, your career, your experience, or your company. |
| ⚠️ | Skip questions (in case it is a sensitive topic or you do not know the answer). |
|| Break NDAs (Non-Disclosure Agreements) on sensitive company matters. |
Expand Down
103 changes: 76 additions & 27 deletions docs/interview/interviewer/coding-interview-guide.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,28 @@ title: Coding Interview

1. ✅ Create a list with various exercises.

In the worst case, your interviewee will have already solved the problem you had prepared, so having a repertoire of problems is ideal to face this situation. You can start with 3 problems and increase them over time. This will also save you time looking for another problem, allowing you to start the interview as quickly as possible. You can create your list using different platforms. We highly recommend using leetcode as a platform for solving and searching for problems. Additionally, if you want to quickly filter the problems you can use, you can access the discord server [cscareers.dev](https://cscareers.dev/discord) and enter the #leetcode-bot channel, where you can get a list of problems filtered by the company by typing !problems <company>.
In the worst case, your interviewee will have already solved the problem you had prepared, so
having a repertoire of problems is ideal to face this situation. You can start with 3 problems
and increase them over time. This will also save you time looking for another problem, allowing
you to start the interview as quickly as possible. You can create your list using different
platforms. We highly recommend using [leetcode](https://leetcode.com/) as a platform for solving
and searching for problems. Additionally, if you want to quickly filter the problems you can use,
you can access the discord server [cscareers.dev](https://cscareers.dev/discord) and enter the
`#leetcode-bot` channel, where you can get a list of problems filtered by the company by typing
`!problems <company>`.

2. ✅ Look for different solutions to the problems you have gathered.

Remember, there's an infinity of possible solutions for a problem. If you are using leetcode, it is advisable to check the discussion section where you can review solutions from different people. It's highly likely you'll find an algorithm, data structure, etc., completely different from what you had thought or how you solved the problem. Knowing a variety of solutions will allow you to guide your interviewee to the correct solution.
Remember, there's an infinity of possible solutions for a problem. If you are using leetcode, it
is advisable to check the discussion section where you can review solutions from different people.
It's highly likely you'll find an algorithm, data structure, etc., completely different from what
you had thought or how you solved the problem. Knowing a variety of solutions will allow you to
guide your interviewee to the correct solution.

3. ✅ Choose problems from different topics.

If you are using leetcode, you can review the topics related to the problems by simply clicking on the "Related Topics" tab. This way, you can avoid unintentionally repeating topics.
If you are using leetcode, you can review the topics related to the problems by simply clicking on
the "Related Topics" tab. This way, you can avoid unintentionally repeating topics.

### About you

Expand All @@ -41,45 +54,56 @@ You don't need to prepare something very complex; you could mention:

5. ✅ Review the CV/resume.

Request the interviewee's CV/resume in advance; this will allow you to know a little about what they have done, what they know, and what they don't. It will also help you choose the most appropriate problem for them to solve.
Request the interviewee's CV/resume in advance; this will allow you to know a little about what
they have done, what they know, and what they don't. It will also help you choose the most
appropriate problem for them to solve.

6. ⚠️ Check if there is feedback from previous interviews.

If the interviewee has had previous interviews, feedback will let you know which points to pay more attention to, aiming to see if the interviewee has improved compared to previous interviews.
If the interviewee has had previous interviews, feedback will let you know which points to pay
more attention to, aiming to see if the interviewee has improved compared to previous interviews.

### Preparing for the interview

7. ✅ Prepare everything you need.

If you will use a collaborative code editor, an online text document, or some other tool, have all the links and tools you will use handy. If you need an online code editor, we recommend using:
If you will use a collaborative code editor, an online text document, or some other tool, have
all the links and tools you will use handy. If you need an online code editor, we recommend using:

- [codeshare](https://codeshare.io/)
- [collabedit](http://collabedit.com/)

8. ⚠️ Wait a reasonable amount of time for the interviewee to arrive.

Consider that something unexpected might happen to your interviewee, and they might be late or even miss their trial interview. We recommend waiting 10 minutes in case something spontaneous has occurred.
Consider that something unexpected might happen to your interviewee, and they might be late or
even miss their trial interview. We recommend waiting 10 minutes in case something spontaneous
has occurred.

9. ⚠️ Notify if something happens to you.

Just as something unexpected might happen to the interviewee, the same could happen to you. If this happens, notify your interviewee that it won't be possible to conduct the trial interview. If necessary, rescheduling the interview is a good idea.
Just as something unexpected might happen to the interviewee, the same could happen to you. If
this happens, notify your interviewee that it won't be possible to conduct the trial interview.
If necessary, rescheduling the interview is a good idea.

10. ⚠️ Specific tools

If you want the mock interview experience to be as similar as possible to a real interview, you can use the tools and/or platforms that companies typically use when conducting technical interviews.
If you want the mock interview experience to be as similar as possible to a real interview, you
can use the tools and/or platforms that companies typically use when conducting technical interviews.

## Durang the interview

### All the time

11. ✅ Feedback

You should write notes about the interviewee's performance. For this, you can use feedback-helper or another tool of your choice. [feedback-helper](https://proyecto-nutria.github.io/feedback-helper/ )
o or another tool of your choice.
You should write notes about the interviewee's performance. For this, you can use
[feedback-helper](https://proyecto-nutria.github.io/feedback-helper/ ) o or another tool of your choice.

12. ⚠️ Communication

If necessary, you should encourage communication between you and the interviewee since you need to know what they are thinking. If necessary, you could give them a hint about solving part of the problem or help them think about different aspects they overlooked during the analysis.
If necessary, you should encourage communication between you and the interviewee since you need to
know what they are thinking. If necessary, you could give them a hint about solving part of the
problem or help them think about different aspects they overlooked during the analysis.

### Introduction

Expand All @@ -89,74 +113,99 @@ Remember that you previously prepared a brief presentation about yourself; this

14. ✅ Ask the interviewee to introduce themselves

Evaluate what your interviewee mentions, paying special attention if they mention projects, what they did in their projects, what they resolved if they optimized something, which technologies they used, etc.
Evaluate what your interviewee mentions, paying special attention if they mention projects, what
they did in their projects, what they resolved if they optimized something, which technologies
they used, etc.

### Technical interview

15. ✅ Setting the stage

Now it's time for your interviewee to solve a technical problem. First, send the link to the tool/platform they will use to write the code.
Now it's time for your interviewee to solve a technical problem. First, send the link to the
tool/platform they will use to write the code.

16. ✅ Problem introduction

Briefly introduce the problem to the interviewee by mentioning generally what needs to be done.

17. ❌ Constraints

Don't give the problem constraints in the introduction. The purpose of the interview is to understand the interviewee's thought process. The interviewee should ask you about the problem to get a general idea of how to solve it.
Don't give the problem constraints in the introduction. The purpose of the interview is to
understand the interviewee's thought process. The interviewee should ask you about the problem
to get a general idea of how to solve it.

18. ⚠️ Examples

If the problem is quite complex, you can provide the interviewee with a simple example of what the problem should do, i.e., if you receive certain input information, what should be the expected output?
If the problem is quite complex, you can provide the interviewee with a simple example of what
the problem should do, i.e., if you receive certain input information, what should be the
expected output?


19. ⚠️ Solutions

If the interviewee gives you one or several solutions, you can ask if there's something better or which solution they think is the most suitable for the problem and why.
If the interviewee gives you one or several solutions, you can ask if there's something better
or which solution they think is the most suitable for the problem and why.

20. ⚠️ Hints

If your interviewee gets stuck or has no idea how to solve the problem, you can give them a hint about what to analyze or if they overlooked something essential in the problem.
If your interviewee gets stuck or has no idea how to solve the problem, you can give them a
hint about what to analyze or if they overlooked something essential in the problem.

### Time to code

21. ⚠️ Programming language

If the tool you will use to evaluate the written code for the technical problem allows you to choose the syntax, ask your interviewee which programming language they are comfortable with to represent their algorithm.
If the tool you will use to evaluate the written code for the technical problem allows you to
choose the syntax, ask your interviewee which programming language they are comfortable with
to represent their algorithm.

22. ✅ Code

Your interviewee should program the idea with which they intend to solve the problem. Consider whether the interviewee uses good programming practices. Consider things like indentation, variable/function names, if the code is well-modulated (if necessary), etc. If you want to learn more about good programming practices, you can check the content of the following links:
Your interviewee should program the idea with which they intend to solve the problem. Consider
whether the interviewee uses good programming practices. Consider things like indentation,
variable/function names, if the code is well-modulated (if necessary), etc. If you want to
learn more about good programming practices, you can check the content of the following links:

- [coding-best-practices](https://www.sleeek.io/blog/15-coding-best-practices-to-follow)

23. ✅ Complexity

Ask your interviewee about the spatial (in memory) and temporal complexity of their algorithm. Optionally, you can ask if it's possible to improve the solution.
Ask your interviewee about the spatial (in memory) and temporal complexity of their algorithm.
Optionally, you can ask if it's possible to improve the solution.

24. ⚠️ Review

Ask your interviewee to review their code, especially if you spot a mistake, this can give them an understanding that something is wrong. Additionally, there is a concept called guide me through your code, which involves reviewing the code but looking closely at each line, explaining what it does, and inspecting that what is written actually achieves what it is intended to do.
Ask your interviewee to review their code, especially if you spot a mistake, this can give them
an understanding that something is wrong. Additionally, there is a concept called **guide me
through your code**, which involves reviewing the code but looking closely at each line, explaining
what it does, and inspecting that what is written actually achieves what it is intended to do.

25. ✅ Tests

Ask your interviewee to test the code, with the purpose of verifying that what is captured in the code matches the algorithm they previously thought of. Remember, testing does not imply running the code, it can simply exemplify how it works in the shared editor.
Ask your interviewee to test the code, with the purpose of verifying that what is captured in the
code matches the algorithm they previously thought of. Remember, testing does not imply running
the code, it can simply exemplify how it works in the shared editor.

26. ⚠️ Bugs

If you find that there is a bug in their code, you should let your interviewee know, you should evaluate if they solve the problem and how they do it.
If you find that there is a bug in their code, you should let your interviewee know, you should
evaluate if they solve the problem and how they do it.

### Questions and answers

In this section, the interviewee can ask things about you, about the company, or anything else, with the first two being the most important to evaluate as they demonstrate the interviewee's interest in working somewhere specific.
In this section, the interviewee can ask things about you, about the company, or anything else,
with the first two being the most important to evaluate as they demonstrate the interviewee's
interest in working somewhere specific.

27. ⚠️ Answers

Depending on you, you can choose to answer their questions simulating a real interview, or you can just give them feedback on how good or bad their questions are.
Depending on you, you can choose to answer their questions simulating a real interview, or you can
just give them feedback on how good or bad their questions are.

### Summary

Below is a brief summary of what you should broadly assess during the technical interview. This summary is based on [coding-signals](https://techinterviewhandbook.org/coding-signals)
Below is a brief summary of what you should broadly assess during the technical interview. This
summary is based on [coding-signals](https://techinterviewhandbook.org/coding-signals)

- Understanding of the problem
- Clarifications
Expand Down
Loading

0 comments on commit 1b267ec

Please sign in to comment.