Skip to content

Instantly share code, notes, and snippets.

@harshraj22
Last active October 9, 2021 20:12
Show Gist options
  • Save harshraj22/bcf650b16d772d8bef0ddd044f76833d to your computer and use it in GitHub Desktop.
Save harshraj22/bcf650b16d772d8bef0ddd044f76833d to your computer and use it in GitHub Desktop.
For preparation of discussion of projects in the interview

Tell me about Yourself.

Hi. I am Harsh, a third year computer science undergraduate at IIT Dharwad. I like coding, and have achieved good ranks in various competitions ranging from algorithmic contests like ACM ICPC, codechef challenges to development based hackathons like Smart India Hackathon.

Let me give you a short summary about my past two years at the college. I was introduced to coding by my seniors in first year, and I enjoyed it. I participated in various contests, and secured many good ranks. In second year, I was introduced to web-development, and It felt interseting as well. I spent my second year doing various team projects and participating in various hackathons.

Recently our 5th sem has started (from 1st sept) and I am being introduced to Deep learning through my Research And Development Project, which seem a great field. The type of problems it is solving is really fascinating. Apart from coding and working on collaborative projects, I like playing table tennis.

Screenshot from 2019-11-10 21-33-56

Challenges
Mistakes/Failures
Enjoyed
Leadership
Conflicts
What You'd Do Differently 
- The problem statement was shared by our professor (Siba sir) as a course project, and we were expected to build a demonstrable working product satisfying specific tasks (including tracking of user's location frequently, capturing of image at the time of login/ logout, a great UI).
  • Challenges:

    • Reading through documentation of APIs to be used was quite challenging as it was the first time for us.
    • Thinking about various form validations and peek throughs
  • Mistakes:

    • We planned the implementation but we did not plan the structure of file system resulting in many independently used files being in same directory.
    • Having too many checks for forms/ validations/ authentications. While this may sound good, we might have used some framework which comes with these features by default.
    • SQL design flaws. Though, at that time it seemed good enough, as we didn't had too much knowledge about databases and normalization.
  • Enjoyed:

    • It was our first big project, so enjoyed a lot discussing various ideas/ implementations.
    • Implementing various features through APIs.
  • Leadership:

  • Conflicts:

    • About choosing the project. It was assumed to be the toughest of all proposed.
    • We sat and discussed about the various pros and cons of all the projects.
    • Finally they agreed that It would get us a lot to learn and be challenging enough.
  • What you'd do differently:

    • Learn some framework and use that rather than implementing in plane PHP
    • Make it more structured and write some unit tests.
    • Try to get it hosted. Add more documentation.
  • Explain in detailed about last project.
  • tell me about a conflict with senior developers ? How did you solve it ?
  • tell me about a challenge you faced ?
  • tell me about a time with deadline to submit ?

Situational questions from “Cracking the Coding Interview”:

  • Most Challenging Thing
  • Biggest Learnings
  • Most Interesting Thing
  • Hardest Bug
  • Enjoyed Most
  • Conflicts with Teammates

solve all from here

Read this section from Cracking the coding Interview

Amazon leadership principles   Problems   Must Read   Great Leetcode Post

youtube videos

see this website by ex-googler

Position of Responsibility, workshops, mentoring, etc shows you have good communication skills.

What are your strengths ?

  • Good at working in team
  • Leans quickly technology related stuff

What are your weakness ?

  • Not good at working in teams if team members don't communicate ? (Give example of SIH, how first no one communicatd and the project went on a hault, then you initiated the conversation to remove the communication gap, and the project was worked on with more pace to complete it on time.)

Why Microsoft? Link

  • I said Microsoft have everything of its own, from languages to servers. They have their own tech stack. I will have high chances of working at something developing from scratch here then at any other place.

Tell me about a time when you had to persuade a group of people ?

  • Sure, let me tell you about the selection of software system lab project where I persuaded my team members to choose the toughest projects. So, during the mid of our 3rd sem, we were offered to choose a project out of few projects. Automated Payroll, was the toughest among all as we were expected to track details like location, image and update database while the course had covered only basics of html, js and mysql. Both of my team-mates were initially aginst the idea of of selecting it, but I knew, this project would enhance my learning much more than other simple projects like python based chatbots. We sat together and discussed in details about the various pros and cons of different projects. We searched about the learning experience that each project can provide and various tradeoffs of them. Finally, both my team-mates agreed that though it would require extra efforts of learning concepts from external sources, in long run, the concepts would be helpful to understan about web development. We worked hard to learn the relevant stuff and completed the project on time. Our effort was appriciated by our professor.

what is your proudest achievement ?

  • Qualifying to ACM ICPC is my proudest achievement so far. Let me give you a little background about it. We had planned team for the icpc in March of previous year, but when dates for registration were announced, 2 of my team mates withdrew as they had to prepare for upcoming placements. Thus with only 1.5 months left for onine preliminary round, I had no team, while many students had already formed teams among themselves. I reached out to my friends who hadn't formed teams yet, and formed a new team. We practiced together everyday for rest 1.5 months and qualified for the ICPC Reginals by being the top scoring team from out institute.

How would you priotize your task ?

  • I would give more priority to the task that affects more people in direct or indirect way.

Deal with conflicts ?

  • Discuss along with various tradeoffs and converge on the solution that is best for the team/users.

Screenshot from 2020-04-10 19-44-16

Challenges
Mistakes/Failures
Enjoyed
Leadership
Conflicts
What You'd Do Differently 
* Biggest Learnings: - Django & python - How frameworks differ from normal website written using just PHP - Features of Django like template inheritance, model-views, ORM - Significane of multiprocessing for speeding up evaluation process. - Using different APIs reading documentations (ACE for text editor, django-cleanup for automatically cleaning files of user who has been deleted, chart.js for displaying AC/WA/TLE as a chart).
  • Hardest Bug:

    • Majority of bugs encountered due to not having unit tests.
    • Team-mate updated code without testing it
    • While multiprocessing, only last testcase was being considered
    • Left a loophole through which users could see other's submissions during contest.
  • Challenging Tasks:

    • Learning Django: my first framework, when your holiday was already occupied with ICPC preparation and Inter IIT Tech meet preparation.
    • Reading and understanding not so well documented api for embedding text editor.
  • Enjoyed the most:

    • Having prior experience in PHP, I was amazed to see how many features Django provides out of the box.
    • As these were shipped out of the box, I could easily trust them and focus more on the implementation aspects (rather than security aspects).
    • I love the ORM and template inheritance feature.
    • Writing codes in general is really enjoyable due to its awesome readable syntax.
  • Conflict with teammates:

    • Though there were no teammates to have conflict with, in case I get into such a situation, I think talking about it and discussing pros and cons about the ideas can help resolving the conflict.
    • Obviously everyone wants to see their product/ project as good as possible.
  • What would you do differently:

    • Start writing unit tests right from the first commit.
    • Maintain documentation from the start (as I was only working on this project, I never needed it, but now even if anyone wants to contribute one needs some time to understand the codebase)
    • Probably learn a little more as how applications are developed in real world, for example, instead of the server doing evaluation of task, while the user waits for the response, I could have used message queues (like rabbitMQ) and respond to user immediately.
  • Show customer obsession by giving the following example:

    • first evaluation was taking too long due to linear evaluation
    • used multiprocessing to speed up the evaluation

Various Questions related to the data science portion mentioned in your resume

  • Explain about each research papers you read and the novelity they proposed. The loss function, optimizer, dataset etc used in them.
  • Evaluation Metrics used in these problems.
  • What is weighted cross-entropy loss ?
  • What is attention ?

Questions:

  • Describe the architecture

  • What loss function did you use as it has variable number of entities ?

    Used crossEntropyLoss [1]. say we had 15 brands, the ground truth shape was (batch_size, num_brands), where each element in num_brands vector belonged to [0,4], corresponding to positive, negative, neutral, non-existent. The output from the model, was of shape (batch_size, num_brands, 5), as the crossEntropyLoss takes softmax. nn.permute would have been used before caculating the loss.

  • How were embeddings of companies extracted ? Does bert vocab contain those words ?

  • Know everything well that you write in your resume

  • Learn some probability and statics (helps in companies like DE Shaw, Tower Research, American Express)

  • Write code on paper. Will be helpful for companies like Microsoft.

  • See this website by IIT Kanpur for preparation.

  • ##Must read link

  • how to make a tree from the combination of any two, also write the full function code. why cant we make binary tree from post and preorder? Explained well. source
  • Find the intersection point of two linked lists with full code. : Start with 2 pointers, when one reaches to the end, shift it to another. If they meet, it is the intersection point.
  • Boyer Moore voting algorithm   practice
  • Read oops questions by Edureka
  • Detect cycle in linked list and node from where it starts (use tortoise and hare method).
  • Do give a few mock tests from geeksforgeeks
  • Try this tough question.
  • Read about Activity selection and its variants using greedy and DP
  • For OOPs concept.
  • to be on safe side, read about self balanced binary trees
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment