WEBVTT

1
00:00:00.080 --> 00:00:03.160
<v Speaker 1>Welcome, Welcome to the Deep Dive. Today, we're plunging into

2
00:00:03.200 --> 00:00:06.080
<v Speaker 1>a topic that's well, it's pretty make or break for

3
00:00:06.120 --> 00:00:08.560
<v Speaker 1>a lot of tech careers, but it's also just a

4
00:00:08.599 --> 00:00:13.279
<v Speaker 1>really fascinating exercise in thinking, you know, structured thinking, problem solving,

5
00:00:13.480 --> 00:00:16.239
<v Speaker 1>even communication. If you've ever felt buried under just tons

6
00:00:16.280 --> 00:00:20.239
<v Speaker 1>of information, wondering how to pull out what really matters, well,

7
00:00:20.440 --> 00:00:23.399
<v Speaker 1>this deep Dive it's for you. Our goal here is simple,

8
00:00:23.760 --> 00:00:26.039
<v Speaker 1>cut through the noise, give you a shortcut to being

9
00:00:26.120 --> 00:00:29.480
<v Speaker 1>really well informed fast. And for this journey, we're leaning

10
00:00:29.519 --> 00:00:34.439
<v Speaker 1>on a real authority cracking The Coding Interview, sixth edition,

11
00:00:34.759 --> 00:00:36.759
<v Speaker 1>Gail Lackman McDowell. I mean she's not just an author,

12
00:00:36.880 --> 00:00:39.560
<v Speaker 1>founder CEO of careercup dot com. She's been deep in

13
00:00:39.600 --> 00:00:43.240
<v Speaker 1>the tech world for years, teaching computer science, prepping engineers

14
00:00:43.240 --> 00:00:45.679
<v Speaker 1>for some seriously tough interviews, you know, the big ones.

15
00:00:45.840 --> 00:00:48.399
<v Speaker 1>So her insights they come from real experience. She knows

16
00:00:48.399 --> 00:00:50.280
<v Speaker 1>what these top companies are actually looking for.

17
00:00:50.520 --> 00:00:53.560
<v Speaker 2>That's absolutely right, and our mission today really is to

18
00:00:53.640 --> 00:00:56.399
<v Speaker 2>pull out those core strategies, the mindsets you need not

19
00:00:56.479 --> 00:01:00.200
<v Speaker 2>just to get through technical interviews, but to genuinely excel.

20
00:01:00.359 --> 00:01:02.759
<v Speaker 2>And what's so interesting, and why this is relevant beyond

21
00:01:02.799 --> 00:01:07.599
<v Speaker 2>just tech is that these principles they're not just about code.

22
00:01:07.959 --> 00:01:13.159
<v Speaker 2>They're really fundamental problem solving techniques, logical thinking, critical analysis

23
00:01:13.400 --> 00:01:16.280
<v Speaker 2>skills that honestly are gold in almost any field or

24
00:01:16.319 --> 00:01:19.400
<v Speaker 2>you know, dealing with complex stuff life throws at you.

25
00:01:19.439 --> 00:01:21.480
<v Speaker 2>So we're going to unpack that give you some things

26
00:01:21.519 --> 00:01:22.280
<v Speaker 2>you can actually use.

27
00:01:22.439 --> 00:01:24.599
<v Speaker 3>Okay, let's kick things off with a question. Pretty much

28
00:01:24.640 --> 00:01:28.000
<v Speaker 3>everyone asks. The book tackles it head on. Why interview

29
00:01:28.079 --> 00:01:28.519
<v Speaker 3>this way?

30
00:01:28.760 --> 00:01:29.000
<v Speaker 2>Log?

31
00:01:29.560 --> 00:01:32.239
<v Speaker 3>You hear the complaints all the time, right, great candidates

32
00:01:32.319 --> 00:01:34.799
<v Speaker 3>sometimes bomb these things. In the real world, you'd look

33
00:01:34.799 --> 00:01:37.680
<v Speaker 3>stuff up, you'd talk to people, and yeah, coding on

34
00:01:37.719 --> 00:01:41.640
<v Speaker 3>a whiteboard it feels artificial. What's the book's take on

35
00:01:41.680 --> 00:01:41.920
<v Speaker 3>all that?

36
00:01:42.159 --> 00:01:45.719
<v Speaker 2>Yeah, it's a really fair point. Honestly, the author kind

37
00:01:45.719 --> 00:01:47.640
<v Speaker 2>of agrees with a lot of those complaints. The process

38
00:01:47.680 --> 00:01:52.079
<v Speaker 2>isn't perfect, yea far from it, but understanding where the

39
00:01:52.079 --> 00:01:55.040
<v Speaker 2>interviewer is coming from that's absolutely crucial. What's interesting is

40
00:01:55.040 --> 00:01:57.719
<v Speaker 2>that it's not meant to be about trivia, about just

41
00:01:57.799 --> 00:02:00.840
<v Speaker 2>memorizing facts, even though yeah, I can feel that sometimes

42
00:02:01.120 --> 00:02:05.359
<v Speaker 2>it's designed really to get at those core problem solving skills.

43
00:02:05.599 --> 00:02:09.719
<v Speaker 2>Algorithmic thinking, critical analysis. These are things that are just

44
00:02:10.280 --> 00:02:12.759
<v Speaker 2>really really hard to teach someone once they're on the job.

45
00:02:13.000 --> 00:02:16.159
<v Speaker 2>So companies are looking for that baseline aptitude, you know,

46
00:02:16.439 --> 00:02:19.000
<v Speaker 2>a way of thinking that suggests you can learn and grow,

47
00:02:19.280 --> 00:02:22.039
<v Speaker 2>not just what you already know or can google fast.

48
00:02:22.560 --> 00:02:25.719
<v Speaker 1>So it's about seeing how they think fundamentally, not just

49
00:02:25.759 --> 00:02:28.439
<v Speaker 1>a knowledge test. But isn't there a risk there that

50
00:02:28.520 --> 00:02:30.960
<v Speaker 1>maybe brilliant people who just get nervous in that setting

51
00:02:31.240 --> 00:02:31.919
<v Speaker 1>they get missed.

52
00:02:32.080 --> 00:02:35.360
<v Speaker 2>Oh? Absolutely, that's a known issue and the book doesn't

53
00:02:35.360 --> 00:02:37.919
<v Speaker 2>shy away from that. It's a challenge. But from the

54
00:02:37.960 --> 00:02:42.080
<v Speaker 2>company's angle, these interviews are like a filter necessary maybe

55
00:02:42.120 --> 00:02:44.560
<v Speaker 2>even if I'm perfect, They're trying to find people with

56
00:02:44.599 --> 00:02:48.280
<v Speaker 2>strong foundational skills. It's a trade off. Basically, they want

57
00:02:48.319 --> 00:02:51.599
<v Speaker 2>to minimize hiring mistakes, false positives, even if it means

58
00:02:51.639 --> 00:02:54.879
<v Speaker 2>some good people false negatives might slip through. It really

59
00:02:54.919 --> 00:02:57.560
<v Speaker 2>just highlights why as a candidate you need to understand

60
00:02:57.599 --> 00:02:59.680
<v Speaker 2>the game. You know what they're looking for.

61
00:03:00.120 --> 00:03:02.919
<v Speaker 1>That makes sense. It's a filtering mechanism, flaws and all.

62
00:03:03.159 --> 00:03:05.639
<v Speaker 1>So moving on to the kinds of questions, the book

63
00:03:05.719 --> 00:03:10.360
<v Speaker 1>really digs into algorithms, coding, design, problems. That's the main focus.

64
00:03:10.520 --> 00:03:13.960
<v Speaker 1>It mentions behavioral questions trivia, but they're not the core

65
00:03:14.000 --> 00:03:16.479
<v Speaker 1>emphasis for prepping. Why is that exactly?

66
00:03:16.520 --> 00:03:19.240
<v Speaker 2>You can sort of group them into two main buckets. First,

67
00:03:19.879 --> 00:03:23.919
<v Speaker 2>problem solving questions. These are the tough ones, usually involving

68
00:03:24.280 --> 00:03:29.319
<v Speaker 2>data structures, algorithms, maybe system design. They're testing your deep

69
00:03:29.439 --> 00:03:33.599
<v Speaker 2>problem solving chops, especially if those skills are like day

70
00:03:33.639 --> 00:03:36.400
<v Speaker 2>to day requirements for the job, how you handle something new.

71
00:03:37.319 --> 00:03:40.159
<v Speaker 2>Then you've got specialist questions. These are different. They go

72
00:03:40.280 --> 00:03:44.879
<v Speaker 2>deep into specific areas like you know, Java garbage collection details,

73
00:03:45.159 --> 00:03:48.520
<v Speaker 2>or specific machine learning models or network protocols. They use

74
00:03:48.599 --> 00:03:52.159
<v Speaker 2>those when a very specific specialized skill is absolutely essential

75
00:03:52.159 --> 00:03:53.840
<v Speaker 2>and it's not something you can just pick up quickly.

76
00:03:54.199 --> 00:03:56.400
<v Speaker 2>But the book focuses on the problem solving stuff because

77
00:03:56.439 --> 00:03:58.719
<v Speaker 2>it's more universal. Often the bigger hurdle.

78
00:03:58.439 --> 00:04:01.719
<v Speaker 1>For people, right the transfer skills. So if you're prepping,

79
00:04:01.919 --> 00:04:04.639
<v Speaker 1>what's the absolute must know stuff the book calls out

80
00:04:04.639 --> 00:04:06.639
<v Speaker 1>It lists quite a few foundational topics.

81
00:04:07.039 --> 00:04:09.639
<v Speaker 2>Yeah, it's a solid list. You've got your core data structures,

82
00:04:09.919 --> 00:04:15.919
<v Speaker 2>link lists, trees, tries that's tries, graphs, stacks, queues, heaps,

83
00:04:16.040 --> 00:04:19.800
<v Speaker 2>vectors or arraylists and hash tables crucial stuff, and then

84
00:04:19.800 --> 00:04:24.120
<v Speaker 2>the algorithms breadth first search, depth first search, binary search, merge, sort,

85
00:04:24.279 --> 00:04:29.040
<v Speaker 2>quick sort, recursion, dynamic programming, and of course understanding BIGO

86
00:04:29.199 --> 00:04:32.759
<v Speaker 2>for time and space complexity, plus memory concepts like stack

87
00:04:32.879 --> 00:04:36.319
<v Speaker 2>versus heap and even bit manipulation. Now, for all of these,

88
00:04:36.680 --> 00:04:39.600
<v Speaker 2>the key thing isn't just knowing the definition, it's knowing

89
00:04:39.639 --> 00:04:41.759
<v Speaker 2>how to use them, how to implement them, what are

90
00:04:41.759 --> 00:04:44.439
<v Speaker 2>their mechanics and critically, what are their time and space

91
00:04:44.480 --> 00:04:47.879
<v Speaker 2>trade offs? Like a trigrade for prefix matching, you need

92
00:04:47.920 --> 00:04:50.199
<v Speaker 2>to be able to visualize it, discuss when it's better

93
00:04:50.199 --> 00:04:51.600
<v Speaker 2>than say a hash map.

94
00:04:51.800 --> 00:04:56.079
<v Speaker 1>That deeper practical understanding. It's not just flashcards exactly.

95
00:04:56.199 --> 00:04:58.240
<v Speaker 2>It's about having them in your toolbox, ready to go

96
00:04:58.279 --> 00:04:58.839
<v Speaker 2>when you need them.

97
00:04:58.839 --> 00:05:01.759
<v Speaker 1>Okay, let's unpack the house. The book gives this really clear,

98
00:05:01.800 --> 00:05:04.920
<v Speaker 1>step by step strategy for tackling a problem, especially under pressure.

99
00:05:05.160 --> 00:05:07.279
<v Speaker 1>A seven step method sounds useful.

100
00:05:07.439 --> 00:05:10.720
<v Speaker 2>Oh, it's absolutely a life saver for keeping your thoughts organized.

101
00:05:11.399 --> 00:05:15.399
<v Speaker 2>Step one, create a concrete example. This is so important.

102
00:05:15.439 --> 00:05:18.480
<v Speaker 2>A common trap picking an example that it's too simple,

103
00:05:18.680 --> 00:05:22.800
<v Speaker 2>too small, or just too perfect. It hides the tricky

104
00:05:22.800 --> 00:05:26.480
<v Speaker 2>parts you need something specific, big enough to matter, and

105
00:05:26.600 --> 00:05:29.399
<v Speaker 2>definitely not a special case. Like if the problem involves

106
00:05:29.399 --> 00:05:31.680
<v Speaker 2>a list of numbers, don't just use one, two to three.

107
00:05:31.800 --> 00:05:35.600
<v Speaker 2>Try something like mid five, zero, seven, two twenty, or

108
00:05:35.639 --> 00:05:38.879
<v Speaker 2>an empty list or duplicates. You want an example that

109
00:05:38.920 --> 00:05:42.040
<v Speaker 2>makes you think about edge cases constraints, helps you debug

110
00:05:42.079 --> 00:05:44.040
<v Speaker 2>your own logic before you even write code.

111
00:05:44.240 --> 00:05:47.199
<v Speaker 1>Right, No tiny, neat examples. Get something a bit messy,

112
00:05:47.279 --> 00:05:51.000
<v Speaker 1>something realistic that pushes the boundaries makes total sense precisely.

113
00:05:51.040 --> 00:05:55.399
<v Speaker 2>Step two, develop a brute force solution. Just get something working, anything,

114
00:05:55.600 --> 00:05:58.240
<v Speaker 2>even if it's incredibly slower and inefficient, and state his

115
00:05:58.360 --> 00:06:02.199
<v Speaker 2>time and space complexity right away. Why Because it confirms

116
00:06:02.279 --> 00:06:04.720
<v Speaker 2>you understand the requirements. It gives you a starting point,

117
00:06:04.759 --> 00:06:07.360
<v Speaker 2>and it shows you're making progress. It's like a drawing

118
00:06:07.399 --> 00:06:09.399
<v Speaker 2>a quick map on a napkin. It's not perfect, but

119
00:06:09.439 --> 00:06:10.839
<v Speaker 2>it gets you oriented.

120
00:06:10.399 --> 00:06:13.000
<v Speaker 1>And then from that natcin map you optimize. This sounds

121
00:06:13.000 --> 00:06:14.399
<v Speaker 1>like where the clever thinking comes in.

122
00:06:14.720 --> 00:06:16.639
<v Speaker 2>It really is, and a great technique here is look

123
00:06:16.680 --> 00:06:21.720
<v Speaker 2>for BUD that stands for bottlenecks, unnecessary work and duplicated work.

124
00:06:22.079 --> 00:06:25.360
<v Speaker 2>Bottlenecks of the slow parts. Unnecessary work is stuff you're

125
00:06:25.360 --> 00:06:28.079
<v Speaker 2>calculating that you don't need duplicated work is doing the

126
00:06:28.120 --> 00:06:31.360
<v Speaker 2>same calculation over and over. Take that classic problem, find

127
00:06:31.399 --> 00:06:34.680
<v Speaker 2>pairs A, B and CD such that A three plus

128
00:06:34.759 --> 00:06:37.279
<v Speaker 2>B three you will see three plus D three to

129
00:06:37.279 --> 00:06:39.839
<v Speaker 2>the naive way four nest of loose. That's o N

130
00:06:39.879 --> 00:06:43.240
<v Speaker 2>four pretty slow. But if you optimize, maybe using a

131
00:06:43.240 --> 00:06:45.560
<v Speaker 2>hash table, I think about it. You could calculate all

132
00:06:45.560 --> 00:06:48.000
<v Speaker 2>the C three plus D three sums first, store them

133
00:06:48.000 --> 00:06:50.319
<v Speaker 2>in a hash table key is the sum value as

134
00:06:50.360 --> 00:06:52.560
<v Speaker 2>a list of CD pairs. That takes O N two time.

135
00:06:53.079 --> 00:06:55.199
<v Speaker 2>Then you calculate all the A three plus B three

136
00:06:55.199 --> 00:06:57.160
<v Speaker 2>sums another o N two and for each one you

137
00:06:57.199 --> 00:06:58.800
<v Speaker 2>just look up the sum of your hash table. That

138
00:06:58.879 --> 00:07:01.680
<v Speaker 2>look up is super fast, basically one on average. So

139
00:07:01.720 --> 00:07:05.040
<v Speaker 2>the whole thing drops from four down to two. Huge difference.

140
00:07:05.040 --> 00:07:06.959
<v Speaker 2>It shows the power of the right data structure.

141
00:07:07.040 --> 00:07:11.000
<v Speaker 1>Wow, okay, four to N two. That's a massive improvement.

142
00:07:11.160 --> 00:07:14.240
<v Speaker 1>That really drives home my understanding data structures isn't just academic,

143
00:07:14.279 --> 00:07:17.720
<v Speaker 1>it's practical power. It's like finding a shortcut nobody else saw. Okay,

144
00:07:17.720 --> 00:07:19.759
<v Speaker 1>so you've got this optimized approach, what's next to make

145
00:07:19.800 --> 00:07:20.480
<v Speaker 1>sure it's solid?

146
00:07:20.600 --> 00:07:24.439
<v Speaker 2>Good question? Once you have that optimized idea. Step four

147
00:07:24.680 --> 00:07:27.759
<v Speaker 2>is crucial walk through it. Use that concrete example you

148
00:07:27.800 --> 00:07:31.360
<v Speaker 2>made earlier. Go step by step, show how variables change,

149
00:07:31.360 --> 00:07:34.519
<v Speaker 2>how that data flows. Don't just talk about it, simulate it.

150
00:07:34.639 --> 00:07:37.480
<v Speaker 2>This proves you understand it deeply and helps catch flaws.

151
00:07:37.839 --> 00:07:41.000
<v Speaker 2>After that, step five, implement it. And the goal isn't

152
00:07:41.000 --> 00:07:44.279
<v Speaker 2>just code that works. It's beautiful code that means thinking

153
00:07:44.279 --> 00:07:47.959
<v Speaker 2>about structure. Modularize it, break it into functions, use clear

154
00:07:48.079 --> 00:07:51.639
<v Speaker 2>variable names. Explain your choices, maybe why you refactored something.

155
00:07:51.839 --> 00:07:54.959
<v Speaker 2>It shows good software engineering habits, not just getting the answer.

156
00:07:55.120 --> 00:07:59.360
<v Speaker 1>Beautiful code like that phrasing. It suggest graftsmanship, right clarity,

157
00:07:59.480 --> 00:08:01.240
<v Speaker 1>maintain exactly.

158
00:08:01.279 --> 00:08:04.480
<v Speaker 2>It shows you care about quality. Then step six cast

159
00:08:04.519 --> 00:08:07.639
<v Speaker 2>your code super important, just like real development. Don't just

160
00:08:07.680 --> 00:08:10.560
<v Speaker 2>assume it works. The book emphasizes the smart testing. Use

161
00:08:10.560 --> 00:08:14.279
<v Speaker 2>your initial example, yes, but also test edge cases, empty inputs,

162
00:08:14.480 --> 00:08:18.560
<v Speaker 2>single items, really big numbers, really small ones. Debug carefully

163
00:08:18.560 --> 00:08:21.319
<v Speaker 2>if something breaks, and talk through your debugging process. They

164
00:08:21.319 --> 00:08:24.000
<v Speaker 2>want to see how you fix things too. And finally

165
00:08:24.040 --> 00:08:27.360
<v Speaker 2>step seven, always think about special cases and edge cases,

166
00:08:27.600 --> 00:08:31.120
<v Speaker 2>null inputs, empty lists, maximum values, off by one errors.

167
00:08:31.199 --> 00:08:34.360
<v Speaker 2>These are often where algorithms break down. Addressing them makes

168
00:08:34.360 --> 00:08:37.039
<v Speaker 2>your solution robust. It shows thoroughness.

169
00:08:37.320 --> 00:08:39.480
<v Speaker 1>I mean, so that's a fantastic roadmap for building a

170
00:08:39.519 --> 00:08:42.279
<v Speaker 1>solid solution. But how do we judge how good it is?

171
00:08:42.320 --> 00:08:44.480
<v Speaker 1>How efficient? This is where big O comes in, right,

172
00:08:44.519 --> 00:08:47.200
<v Speaker 1>I hear biggo all the time. What exactly is it measuring?

173
00:08:47.240 --> 00:08:48.279
<v Speaker 1>Why is it so critical?

174
00:08:48.399 --> 00:08:52.559
<v Speaker 2>Excellent question, because yeh, big O is fundamental. Basically, big

175
00:08:52.559 --> 00:08:55.320
<v Speaker 2>O notation tells you about the rate of increase of

176
00:08:55.360 --> 00:08:57.919
<v Speaker 2>your algorithm's runtime or maybe its memory usage. Is the

177
00:08:57.919 --> 00:09:00.559
<v Speaker 2>input size gets bigger, It's not about the exact time

178
00:09:00.600 --> 00:09:03.000
<v Speaker 2>in seconds, it's about how it scales. You double the

179
00:09:03.000 --> 00:09:05.639
<v Speaker 2>inputs as the work double that's linear, O in does

180
00:09:05.639 --> 00:09:09.000
<v Speaker 2>a quadruple that's quadratic O N two makes a huge

181
00:09:09.000 --> 00:09:12.200
<v Speaker 2>difference for large inputs. We often talk about worst case time,

182
00:09:12.279 --> 00:09:15.639
<v Speaker 2>sometimes expected case. Best case is less common in interviews.

183
00:09:15.720 --> 00:09:17.879
<v Speaker 2>Often worse than expected are pretty much the same anyway,

184
00:09:18.120 --> 00:09:20.840
<v Speaker 2>So think about common run times. OH one is constant

185
00:09:20.879 --> 00:09:22.840
<v Speaker 2>time doesn't matter how big the input is, like getting

186
00:09:22.840 --> 00:09:25.360
<v Speaker 2>an item from an array by its index instant oh

187
00:09:25.440 --> 00:09:28.519
<v Speaker 2>log in logarithmic, super efficient thik, binary search on a

188
00:09:28.559 --> 00:09:32.639
<v Speaker 2>sort of list, or calculating powers of two ohn is

189
00:09:32.720 --> 00:09:36.600
<v Speaker 2>linear work grows directly with input size, like calculating factorial

190
00:09:36.919 --> 00:09:39.720
<v Speaker 2>O N log in is common for good sorting algorithms

191
00:09:39.759 --> 00:09:42.320
<v Speaker 2>like merged sort O N two quadratic often pops up

192
00:09:42.360 --> 00:09:45.240
<v Speaker 2>with nested loops. You might see os co rtn like

193
00:09:45.440 --> 00:09:47.960
<v Speaker 2>checking if a numbers prime by testing divisors up to

194
00:09:47.960 --> 00:09:50.159
<v Speaker 2>its square root. And then there's the scary one O

195
00:09:50.279 --> 00:09:54.440
<v Speaker 2>two n exponential like a simple recursive Fibonacci. It's incredibly slow,

196
00:09:54.840 --> 00:09:57.440
<v Speaker 2>very fast. The main thing the book stresses is run

197
00:09:57.519 --> 00:09:59.840
<v Speaker 2>time is not a multiple choice question. You have to

198
00:10:00.559 --> 00:10:03.840
<v Speaker 2>not guess, count the operations, figure out what dominates is

199
00:10:03.879 --> 00:10:07.320
<v Speaker 2>in grows, drop the constants. That's how you really understand it. Derive,

200
00:10:07.600 --> 00:10:11.679
<v Speaker 2>don't guess, got it. And then there's this idea of

201
00:10:12.279 --> 00:10:16.559
<v Speaker 2>best conceivable runtime BCR. You said it's not a formal term,

202
00:10:16.799 --> 00:10:18.840
<v Speaker 2>but sounds like a useful benchmark in an interview.

203
00:10:19.159 --> 00:10:21.960
<v Speaker 1>It really is. Yeah, think of DCR as the absolute

204
00:10:22.000 --> 00:10:25.080
<v Speaker 1>theoretical minimum runtime for a given problem you simply cannot

205
00:10:25.120 --> 00:10:28.320
<v Speaker 1>do better. For example, finding the biggest number in an

206
00:10:28.399 --> 00:10:31.440
<v Speaker 1>unsorted array, you have to look at every single element

207
00:10:31.480 --> 00:10:34.559
<v Speaker 1>at least once, right, So the BCR is O n

208
00:10:34.840 --> 00:10:37.320
<v Speaker 1>You can't magually do it in O logan or one

209
00:10:37.399 --> 00:10:39.840
<v Speaker 1>because you don't know anything about the order until you

210
00:10:39.879 --> 00:10:43.559
<v Speaker 1>look another one finding common elements and two sorted arrays.

211
00:10:43.600 --> 00:10:45.879
<v Speaker 1>Brute force might be O N two. But the best

212
00:10:45.919 --> 00:10:48.279
<v Speaker 1>you can possibly do is on. You can achieve that

213
00:10:48.360 --> 00:10:51.279
<v Speaker 1>by walking through both arrays together, kind of like merging them. Now,

214
00:10:51.320 --> 00:10:53.240
<v Speaker 1>if you hit that BCR and you do it using

215
00:10:53.279 --> 00:10:55.759
<v Speaker 1>only one extra space, meaning your memory use doesn't grow

216
00:10:55.759 --> 00:10:58.159
<v Speaker 1>with the input size, that's a strong signal. It tells

217
00:10:58.200 --> 00:11:00.519
<v Speaker 1>you and the interviewer that you've probably optimal as much

218
00:11:00.600 --> 00:11:03.480
<v Speaker 1>possible in terms of time and space complexity. You're likely done.

219
00:11:03.559 --> 00:11:06.840
<v Speaker 1>That's a really powerful indicator knowing when you've hit the

220
00:11:06.840 --> 00:11:11.960
<v Speaker 1>theoretical limit. Okay, so we've gone deep into the technical side,

221
00:11:12.000 --> 00:11:14.600
<v Speaker 1>the algorithms, the big O. But what about actually landing

222
00:11:14.600 --> 00:11:17.240
<v Speaker 1>the interview in the first place and dealing with those

223
00:11:17.679 --> 00:11:20.879
<v Speaker 1>sometimes tricky behavioral questions. There's more to it than just.

224
00:11:20.879 --> 00:11:24.600
<v Speaker 2>Code absolutely getting the interview a step zero for resumes

225
00:11:24.639 --> 00:11:27.120
<v Speaker 2>the message needs to be clear, I'm smart and I

226
00:11:27.159 --> 00:11:30.639
<v Speaker 2>can code. The book recommends a really effective format for

227
00:11:30.639 --> 00:11:35.159
<v Speaker 2>accomplishments accomplished X by implementing Y, which led to z

228
00:11:35.720 --> 00:11:38.679
<v Speaker 2>so not just improved rendering speed, but reduced object rendering

229
00:11:38.720 --> 00:11:42.639
<v Speaker 2>time by seventy five percent by implementing distributed caching, which

230
00:11:42.720 --> 00:11:44.639
<v Speaker 2>led to a ten percent drop and log in time.

231
00:11:45.080 --> 00:11:49.080
<v Speaker 2>See clear Impact for students' recent grants. That project section.

232
00:11:49.200 --> 00:11:52.480
<v Speaker 2>It's huge. Aim from maybe two to four solid projects.

233
00:11:52.799 --> 00:11:55.360
<v Speaker 2>List the tech you use, languages, framework, safe with solo

234
00:11:55.480 --> 00:11:58.759
<v Speaker 2>or team, and honestly building stuff just because you're interested.

235
00:11:58.879 --> 00:12:01.840
<v Speaker 2>That's incredibly impressive. Shows real passion and initiative. Oh and

236
00:12:01.960 --> 00:12:05.159
<v Speaker 2>resumes one page. If you have under ten years experience,

237
00:12:05.320 --> 00:12:08.720
<v Speaker 2>especially in the US, keep it concise and maybe be

238
00:12:08.759 --> 00:12:11.399
<v Speaker 2>careful about looking too focused on just one language, like

239
00:12:11.440 --> 00:12:14.080
<v Speaker 2>say dot net. If you're going for general software roles,

240
00:12:14.080 --> 00:12:15.960
<v Speaker 2>you might need to frame it to show broader problem

241
00:12:16.000 --> 00:12:16.840
<v Speaker 2>solving skills too.

242
00:12:16.960 --> 00:12:21.080
<v Speaker 1>That's great practical advice for the resume. Concrete examples impact projects.

243
00:12:21.360 --> 00:12:23.519
<v Speaker 1>What about the behavioral side? Then those tell me about

244
00:12:23.519 --> 00:12:25.840
<v Speaker 1>a time when questions how do you handle those?

245
00:12:25.840 --> 00:12:28.679
<v Speaker 2>Well? Yeah, this can feel awkward. The trick is to

246
00:12:28.720 --> 00:12:32.519
<v Speaker 2>have stories ready, but frame them to show specific qualities

247
00:12:33.240 --> 00:12:37.440
<v Speaker 2>things companies look for, like initiative or leadership, teamwork, empathy,

248
00:12:38.159 --> 00:12:40.480
<v Speaker 2>and don't just say what you did the book suggest

249
00:12:40.519 --> 00:12:43.120
<v Speaker 2>breaking down the action part. So instead of just I

250
00:12:43.279 --> 00:12:46.799
<v Speaker 2>solve the conflict, maybe say, well, I did three things. First,

251
00:12:47.000 --> 00:12:50.639
<v Speaker 2>I talked to each person individually to understand their perspective. Second,

252
00:12:50.679 --> 00:12:53.480
<v Speaker 2>I brought them together to find common ground. Third, we

253
00:12:53.600 --> 00:12:56.720
<v Speaker 2>agreed on a new process. See how that gives more depth,

254
00:12:56.919 --> 00:12:59.440
<v Speaker 2>shows your thought process. And yeah, hobbies can work too

255
00:12:59.519 --> 00:13:02.799
<v Speaker 2>if you can frame them right. Ran a marathon shows discipline.

256
00:13:02.960 --> 00:13:05.919
<v Speaker 2>Let a team in an online game shows leadership. Coordination

257
00:13:06.279 --> 00:13:07.840
<v Speaker 2>connected back to positive traits.

258
00:13:08.039 --> 00:13:10.879
<v Speaker 1>Makes sense. Frame everything to showcase relevant qualities.

259
00:13:11.080 --> 00:13:14.879
<v Speaker 2>Okay, last big piece the offer negotiation. This is often

260
00:13:14.879 --> 00:13:16.720
<v Speaker 2>the final step, but man, it can have a huge

261
00:13:16.759 --> 00:13:19.279
<v Speaker 2>impact on your career. It really can. And where people

262
00:13:19.320 --> 00:13:22.240
<v Speaker 2>sometimes leave value on the table, maybe because they're uncomfortable

263
00:13:22.320 --> 00:13:26.440
<v Speaker 2>negotiating key things. The book mentions, First, understand the whole package.

264
00:13:26.480 --> 00:13:30.120
<v Speaker 2>Don't just look at salary stock options. Amortize them maybe

265
00:13:30.159 --> 00:13:33.879
<v Speaker 2>over three years, to compare offers fairly. Look at bonuses.

266
00:13:33.919 --> 00:13:37.279
<v Speaker 2>Signing bonus benefits four to one K match everything. Second,

267
00:13:37.600 --> 00:13:41.000
<v Speaker 2>have a viable alternative. Seriously, having another offer gives you

268
00:13:41.080 --> 00:13:44.279
<v Speaker 2>so much more leverage. It makes your position much stronger. Third,

269
00:13:44.639 --> 00:13:47.519
<v Speaker 2>have a specific ask. Don't just say I want more

270
00:13:47.799 --> 00:13:50.519
<v Speaker 2>research what's reasonable for the role and your experience level,

271
00:13:50.519 --> 00:13:53.200
<v Speaker 2>and ask for something specific eight thousand dollars more in

272
00:13:53.279 --> 00:13:55.879
<v Speaker 2>salary or an extra five hundred stock units. It's much

273
00:13:55.919 --> 00:13:59.799
<v Speaker 2>more effective. Fourth, it's okay to overshoot a little negotiation

274
00:13:59.840 --> 00:14:01.879
<v Speaker 2>is usually a bit of give and take. Start a

275
00:14:01.879 --> 00:14:04.519
<v Speaker 2>bit higher than your absolute minimum target, but be ready

276
00:14:04.559 --> 00:14:07.279
<v Speaker 2>to justify it and maybe meet in the middle. And finally,

277
00:14:07.360 --> 00:14:11.240
<v Speaker 2>maybe most importantly, think long term career development happiness. Don't

278
00:14:11.279 --> 00:14:14.120
<v Speaker 2>just focus on the money right now. Consider the company's reputation,

279
00:14:14.159 --> 00:14:17.200
<v Speaker 2>what you'll learn, promotion opportunities, the team, your manager, the

280
00:14:17.200 --> 00:14:20.600
<v Speaker 2>product itself. Is it exciting? Does it align with your goals?

281
00:14:20.879 --> 00:14:23.519
<v Speaker 2>These factors often matter way more for your long term

282
00:14:23.559 --> 00:14:27.039
<v Speaker 2>career and satisfaction than just a few extra dollars up front.

283
00:14:27.360 --> 00:14:28.440
<v Speaker 2>It's about the bigger picture.

284
00:14:28.799 --> 00:14:33.000
<v Speaker 1>Wow, what an incredible deep dive. We've really covered the spectrum,

285
00:14:33.039 --> 00:14:36.840
<v Speaker 1>haven't we From the nitty gritty of data structures and algorithms,

286
00:14:37.240 --> 00:14:41.919
<v Speaker 1>to the strategy of walking through problems, analyzing efficiency with bigo,

287
00:14:42.080 --> 00:14:44.440
<v Speaker 1>and then all the way to crafting your resume, handling

288
00:14:44.480 --> 00:14:48.639
<v Speaker 1>behavioral questions, and negotiating that final offer thoughtfully. It seems

289
00:14:48.679 --> 00:14:52.120
<v Speaker 1>like the real takeaway, like the book emphasizes, isn't just

290
00:14:52.240 --> 00:14:57.159
<v Speaker 1>knowing this stuff but applying it rigorously, strategically exactly.

291
00:14:57.200 --> 00:14:58.759
<v Speaker 2>And you know, this brings up kind of an interesting

292
00:14:58.759 --> 00:15:02.519
<v Speaker 2>final thought. How am I really cultivating these disciplined ways

293
00:15:02.559 --> 00:15:07.080
<v Speaker 2>of thinking, breaking down technical problems, optimizing managing your career strategically?

294
00:15:07.519 --> 00:15:10.919
<v Speaker 2>How might that change things beyond just the job search? Like,

295
00:15:10.960 --> 00:15:13.799
<v Speaker 2>how could it impact your ability to tackle any complex challenge,

296
00:15:14.000 --> 00:15:17.159
<v Speaker 2>personal projects, big life decisions, maybe even how you learn

297
00:15:17.240 --> 00:15:20.279
<v Speaker 2>new things? The underlying skills and they seem pretty badly applicable,

298
00:15:20.279 --> 00:15:21.440
<v Speaker 2>don't they something to think about?

299
00:15:21.600 --> 00:15:24.679
<v Speaker 1>That's a powerful question to leave everyone with. How far

300
00:15:24.879 --> 00:15:28.039
<v Speaker 1>can these skills take you? Definitely food for thought. Well,

301
00:15:28.080 --> 00:15:29.879
<v Speaker 1>thank you so much for joining us on this deep dive,

302
00:15:30.039 --> 00:15:33.519
<v Speaker 1>Keep learning, keep exploring those connections, and we'll catch you

303
00:15:33.639 --> 00:15:34.279
<v Speaker 1>on the next one.
