Skip to content

Instantly share code, notes, and snippets.

@anushshukla
Last active March 13, 2024 17:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anushshukla/1451a7fef9dad621b37fcc1e5497bff5 to your computer and use it in GitHub Desktop.
Save anushshukla/1451a7fef9dad621b37fcc1e5497bff5 to your computer and use it in GitHub Desktop.
Interview related documents

Prep

Resume review

Don't glance through the resume but read through it to understand about the candidates skills and thoughts from the information provided on it.

Interview questions

  • Write down interview questions in such a way that it can re-worded when asking to different candidates
  • Make sure that the questions are application based which not only checks for knowledge but also for its application.

Interview

Greet

  • Say Hi while taking their name (ask for their name pronunciation if unsure)
  • Greet me by saying good morning, good afternoon or so.
  • Ask them how they're or how they're feeling as at times, the candidates may be interviewing under circumstanial suitations and you can ask them if they would like to reschedule the interview if that's a possibility.
  • Ask candidate to turn on their camera in case of virtual meeting

Intro

  • Introduce yourself as the interviewer by sharing your name and association with the organisation.
  • [Optional] Introduce the organization by sharing an overview about its products/services. This should happen only in first round or before.
  • [Optional] Share the job's expecation if it's the first round or if they aren't aware. This should happen only in first round or before.
  • Set the interview expecation like what they're being assessed for, example you can mention that this round is for LLD/HLD, DSA, JS basics or so.

Assessment

(Make sure there that you've the points in your mind to ask in way which is unique and written somewhere on your machine and pulled up on your screen. Always remember that knowledge and its application are 2 separate things completely. Always try to look for candidates who have better application skills and the ability to learn quickly)

  • Ask candidate to share their entire screen if required to before asking the question.
  • Share the interview question over chat in case of virtual meeting instead of dictation
  • Ask the candidate if they've understood the interview questions.
  • Aks the canidate if they've queries about the interview quesitons.

Outro

  • Ask the candidate if they've any queries. Ex: "Do you've any questions for me?"
  • Appreicate the candidate for putting their effort for the interview. Ex: "Thanks for taking out the time for this interview".
  • Inform the candidate that the interview's feedback would be shared to the HR team who will get back to them. Ex: "This interview feedback would be shared with the HR team who would get back to you!"

DONT'S

  • Do not share actual interview feedback with the candidate
  • Do not get provoked by candidate.
  • Do not share any confidential information about yourself or organization

DO'S

  • Try to smartly end the interview as soon as possible if the candidates isn't suitable without hurting their sentiments.
  • Do end the interview immediately if its getting too adverse.
  • Practice shadow interviewing if not ready.

Interview as a Service platform evaluation

Queries

  • Are there screen recording available of the candidate's machine?
  • Are there webcam (with audio) recording available of the candidate's machine?
  • Can we prevent copy paste or at the very least view the list of copy pasted texts without alerting the candidate?
  • Can the candidate write the code in cloud (like CodeSandbox) where we can monitor them?
  • Can the candidate write code in the programming language / framework they are comfortable with?
  • Can we view reports showcasing code quality & code coverage?
  • Can the interviewer set the different time limit (including no time limit) on questionaries?
  • Can we prevent or detect tab switching?
  • Can we provide Google search with control over what is being searched or restrict to documentation search only when the candidate is writing the code live on cloud editor?
  • Can we have the interview questions in image format so that candidate can't Google it easily by copy pasting it?

Recommendations

Interview Etiquette

Virtual Interview Etiquette

  • Keep the camera turned on
  • Add a office like background filter
  • Dress decent
  • Avoid background noise
  • Lighting should be proper
  • Joining the meeting 10-15 minutes before
  • Keep track of time.

Interview details

  • Recording:
  • Chat:
  • Transcript:

Basic assessment

  • Punctual
  • Passionate
  • Etiquettes

Soft skills assessment

  • Communication: Above average/Good
  • Attitude: Good
  • Collaboration: Good
  • Critical thinking:
  • Decision making:

Hard skills assessment

  • Programming basics: Good
  • JS Basics: Good
  • Advance JS: Poor
  • JS: Better than expectation
  • JS concepts understanding: Average
  • Problem-solving: Good

Skills Assessment Report

Fundamentals

  • Basics: ?/10
  • Control Structure: ?/10
  • Data Structures: ?/10

Algos

  • Sort: ?/10
  • Search: ?/10

Concepts / Principles

  • OOPS: ?/10
  • FP: ?/10

Data Source

  • SQL: ?/10 (?)
  • NoSql: ?/10 (?)
  • Cache: ?/10 (?)

Programming Languages

  • JS: ?/10
  • ES: ?/10
  • TS: ?/10

Misc

  • Cloud: ?
  • SVN: ?/10 (?)
  • Project Tools: Jira
  • Development Methodology: Agile Scrum
  • Soft: Quick learner

Status

Shortlisted / Rejected

Note

Remarks

64:ff9b::b9c7:6e85

Interview Scope for Freshers / Experienced

Basics

  • Programming Languages: Levels, Translators, Paradigms
  • Programming Languages Concepts / Principles: OOPS V/S FP
  • Implementation check for Algo & DS with Complexity calculation (Sort + Search basically but high complexity)
  • Software: Architecture, Design V/S Analysis Patterns.
  • Heap V/S Stack Memory
  • Programming: Asynchronous V/S Synchronous
  • Process V/S Threads (ThreadPool as well)
  • HA V/S Scalable Servers: Replication V/S Clusters
  • Replication: Master-Master V/S Master-Slave
  • Operation: Failover V/S Failback
  • NoSQL V/S SQL
  • Sharding V/S Partitioning
  • DB Properties: ACID V/S BASE
  • Errors: Types and RCA: Detection -> Localise -> Patch -> Prevent

Stack Specific

JS

  • Design Pattern: Reactor (Event loop), Module
  • Concepts: Hoisting, IFFE, ProtoType, Closures
  • Scope: Global V/S Local (including ES6)
  • Object Properties: Call V/S Apply V/S Bind
  • Callback V/S Promises V/S async await
  • Process: Fork V/S Spawn V/S Exec

MogoDB

  • Collection V/S Document
  • Operations: CRUD and Aggregators
  • Date Modelling Concepts
  • Transactions
  • Change Streams
  • Security Checklist

MySQL

  • Keys V/S Index
  • Triggers V/S Events
  • DDL V/S DML V/S DCL V/S TCL
  • Full Text Search
  • Problem Statements: Duplicates removal, nth highest, etc.
  • Administration: Server, User, Commands, Backup-Restore and Maintenance
  • Stored Procedure V/S Function V/S View

Cloud / Misc Technologies

  • Storage Service
  • Queue Service
  • Email Service
  • Messaging Service
  • Publish-Subscribe

Working Style Fit

  • SVN
  • Development Methodology
  • Project Management Tools

Note

  • Interview questions should vary or differ as impromptu questions must arises as per resume or candidate's answers.
  • Covering all questions is not possible always but as an interviewer we all get an idea about candidate's knowledge
  • Most questions should be with a problem statement to check analytic skills with pseudo code 64:ff9b::b9c7:6e85

Basic Programming Skills Check

  • FP Concepts: ?/5
    • Immutability
    • First Class Functions (Currying, Closures, HOF, Callback)
    • Pure functions
    • Referential transparency
  • OOPS Concepts: ?/5
    • Access specifiers (public, protected, private)
    • Inheritance (Single, Multilevel, Multiple, Hybrid, Multipath and Hierarchical)
    • Interface V/S Abstract Class
    • Polymorphism
    • Function Overriding vs Function Overloading
    • Struct
  • Decision making statements & Iteration through loops: ?/5
  • SQL: ?/5
    • Limit
    • Offset
    • Indexing
    • Joins
    • Group By
    • Triggers
    • View
    • Procedure
    • Function
  • NoSQL: ?/5
    • Limit
    • Offset
    • Sort
  • ORM: ?/5
  • ODM: ?/5

Company Tech Stack (JS) Skills Check

  • JS Concepts (Hoisting, Parsing, IIFE, Event loop, Prototype): 3/5
  • Advanced Javascript Concepts (Promises, Async Await, Closures ES, TS): 3/5
  • JS Framework (Express, Loopback, etc): No experience

Miscellaneous Skills

  • Cache (like Redis): ?/5
  • Queues (like RabbitMQ, Kafka, AWS SQS): ?/5
  • Process Managers (like Docker, PM2, Nodemon, Forever etc): ?/5
  • Cloud Messaging (like FCM, AWS SNS): ?/5
  • Serverless Hosting (like AWS Lambda): ?/5
  • Server Hosting (like AWS EC2): ?/5
  • Cloud Storage (like AWS S3, GCS): ?/5
  • VCS (like Git): ?/5
  • Development Methodology (like Scrum, Agile, Kanban): ?/5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment