Coding Interviews

Passing the course

Check the rubrics page to make sure you understand how the grades are computed.

There are several requirements and assessment instruments, so remember to always check your grades and tasks in the dashboard.

Instructor: Maciel Calebe Vidal [macielcv@insper.edu.br]

Classes:

Office Hours:

Definitions

We will use the following definitions throughout the course:

Learning goals

This course has 3 main learning goals and 1 secondary learning goal.

Assessment instruments

We will use the following assessment instruments:

Conditions to pass the course

The following conditions must be fulfilled to pass the course:

  1. Submit at least 80% of the coding practices (CPs);
  2. Achieve FI greater than or equal to 5 (final interviews - FIs);
  3. Achieve AT greater than or equal to 5 (algorithm analysis tests - ATs);
  4. Achieve Essential Average (EA) greater than o equal to 5;
  5. Achieve mean greater than or equal to 4.5 in MA and learning goals I, II, and III.

Weights

The following partial grades will be considered for the final grade:

The following weights will be used to compute the grades for each learning goal:

Goal CP PI1 PI2 MI1 MI2 MI3 FI AT
I 0.7 0.2 0.1
II 0.7 0.3
III 0.2 0.1 0.7
EXTRA 1

The following weights will be used to compute the Essential Average (EA):

$$EA = 0.3 \cdot I + 0.3 \cdot II + 0.2 \cdot III + 0.2 \cdot MA$$

To encourage students to practice solving more coding interview problems, there is an extra grade based on the amount of problems solved at LeetCode (LC):

$$LC = \min\left(10.0, \frac{\text{# problems solved}}{4}\right)$$

The Bonus Average (BA) is given by:

$$BA = 0.2 \cdot EXTRA + 0.8 \cdot LC$$

The Final Grade (FG) depends on the fulfillment of all conditions for passing the course. If any requirement is not satisfied, the FG is given by:

$$FG = \min(4.0, EA)$$

If all conditions are satisfied, the FG is given by:

$$FG = \min(10.0, EA + 0.1 \cdot BA)$$

I know, this may be a little overwhelming. That's why I created the course dashboard. With it, you can follow your progress, check deadlines, and make sure you are not forgetting anything related to this course. As always, it may contain bugs. Please, let me know if you find any.