
- Software Engineer Product:
- Software Engineer Product
- Data Structures and Algorithms
- Time complexity (Big O)
- Virtual Tech Interview
- The 7 Interview Stages
- Mastering Top 10 JS Algorithms
- So What is a Tech Stack?
- Frontend tech stack
- Backend tech stack
- How to choose/build a tech stack
- So What is git ?
- Git vs GitHub
- Build React App With Java Backend
- Connecting React-Frontend and NodeJS/Express Backend Applications


Virtual Tech Interview [ Metta ]

Skill 1: Communication
Ask clarifying questions.
* Explore the question and make sure you fully understand what has been asked. Ask about possible inputs and edge cases.
* Example:
If asked to sort list, could the list be empty NIl? Too big to fit in memory?
Verbally explain your approach/thought process.
* Consider the 'why' and 'how' before jumping into coding.
* Out loud, explain why you've decided on a certain data structure?
* How are you planning on testing for correctness?
Listen for questions or tips from your interviewer.
* Your interviewer wants you to succeed.
* Help them as they help you to succeed by continuously talking out loud and letting them know your thought process.
* Listening for to them may guide to towards revealing flows in your assumptions or approach.
Skill 2: Problem Solving
* Think of the most optimal solution you can come up with, then iterate.
* Think about worst case time and space complexities (Big notation).
* It is important to try to come up with a semi-optimal solution rather than a brute force solution due to time constraints.
* This is especially important as you proceed beyond the technical screen interview into the 2nd/final round!
* It is okay to iterate as you go!
* If stuck, ask yourself: "What is the easiest way to solve the problem?"
Skill 3: Coding
* Practice translating thoughts into code quickly.
* Be familiar with the language you are using.
* Focus on clean and executable code.
* Is it organized and does it capture the right logical structure?
* Is it optimized?
* Be proactive in discussing time and space complexity.
* If you forget the language syntax, ask your interviewer.
* Use your interviewer as a human compiler.
Skill 4: Verification
* Proactively walk through your code with sample data.
* Propose test cases that cover the full functionality and classes of inputs.
* Proactively reason about edge cases as boundaries between different classes of inputs.
Example:
* Negative numbers, zero, positive numbers
* Bugs are inevitable.
* The goal is to flush them out with your tests.
* Don't aim for perfection, aim for finding the bugs.
