Class 36 - DS&A Review
Lab 36 - Data Structures & Algorithms Workshop: Computational Thinking
Coding Interviews are coming your way. Time to memorize 15,000 interview questions?
No! It’s time to focus on the core problem-solving techniques that can solve any interview question.
Feature Tasks and Requirements
- View these videos and start practicing:
Submission Notes
- Submission is an image of the whiteboard for 2 (or more) code challenges of your choosing.
- The challenges should relate to the Top 10 list in videos.
- In other words, select challenges that best align with your Coding Interview needs.
- Choose from LeetCode, Exercism, HackerRank, etc.
- No code files accepted. All work should be done within the whiteboard.
- Your whiteboard tool is up to you.
Code Challenge - Student Choice
Written Class Notes
Read 36 - DSA Review
Resources Link/Pages
Answer
Statement on why this topic matter as it relates to what I’m studying in this module:
They provide essential strategies and insights for successfully navigating whiteboard interviews, improving performance, and preparing effectively for engineering interview processes.
Reading Questions
-
What are the key pieces of advice mentioned in the “Whiteboard Advice” reading assignment for successfully tackling whiteboard interviews?
-
From the “6 tips to ace a whiteboard programming interview” article, can you identify and explain at least two strategies that can help improve your performance during a whiteboard programming interview?
-
Break Down the Problem:
- Divide the problem into smaller, manageable parts. This helps in understanding the problem better and tackling it step by step. It also shows your ability to approach complex problems systematically.
-
Take a Few Minutes:
- Wait until the interviewer is done explaining the problem. Ask any clarifying questions, and then tell your interviewer: “Okay, got it. If it’s okay with you, I’m just going to take a minute or two here and think about the problem, and then I’ll start talking.”
-
What does Gayle McDowell say about interview preparation in the Engineering Interview Process Deconstructed video?
-
Practice Fundamentals:
- McDowell emphasizes the importance of understanding fundamental concepts in computer science and algorithms. This includes knowledge of data structures, algorithms, and problem-solving techniques.
-
Build Confidence:
- Candidates, especially those without traditional CS backgrounds (like bootcamp graduates or self-taught developers), should focus on building confidence. Insecurity can often be a hurdle, so believing in one’s abilities is crucial.
-
Address Insecurities:
- Many candidates, especially from bootcamps or self-taught backgrounds, may feel insecure about their knowledge. McDowell mentions that these candidates often have the necessary knowledge but may doubt themselves. It’s essential to address these insecurities and approach interviews with confidence.
-
Interviewer Training:
- For companies conducting interviews, McDowell suggests training interviewers to focus on candidates’ problem-solving skills and willingness to tackle challenges. It’s not just about confidence but also about a candidate’s perseverance and approach to problem-solving.
Things I want to know more about
- What happens honestly if you don’t understand or know how to solve the problem at all?
Retrospective
Retrospectives are a critical part of Agile, and typically take the form of meetings held by a team at the end of a sprint cycle. To get us acclimated to that process, we will use the format of a retrospectives to guide today’s reflection.
This article gives a nice overview to the role of retrospectives.
- What went well, that I might forget if I don’t write down?
- What did I learn today?
- What should I do differently next time?
- What still puzzles me, or what do I need to learn more about?
- Thinking about each of your assignments for the day, reflect on:
- Is the assignment complete? If not, where exactly did you leave off, and what work remains?
- Do not get bogged down in written analysis; instead, focus on capturing the moment with an eye toward how your observations can guide you toward future productivity.