Skip to content

Commit a72a23f

Browse files
committed
Deploying to gh-pages from @ 00ee996 🚀
1 parent 2dae5e4 commit a72a23f

1 file changed

Lines changed: 155 additions & 29 deletions

File tree

index.html

Lines changed: 155 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,14 @@ <h1 align="center">
9090
<!-- toc -->
9191

9292
<ul>
93-
<li><a href="#how-to-prepare">How to Prepare</a></li>
93+
<li><a href="#how-to-prepare">How to Prepare</a><ul>
94+
<li><a href="#know-the-interview-loop">Know the Interview Loop</a></li>
95+
<li><a href="#create-a-study-plan">Create a Study Plan</a></li>
96+
<li><a href="#practice-with-deliberate-feedback">Practice with Deliberate Feedback</a></li>
97+
<li><a href="#build-your-interview-narrative">Build Your Interview Narrative</a></li>
98+
<li><a href="#day-before-checklist">Day-before Checklist</a></li>
99+
</ul>
100+
</li>
94101
<li><a href="#resources">Resources</a><ul>
95102
<li><a href="#suggested-reading">Suggested reading</a></li>
96103
<li><a href="#videos">Videos</a></li>
@@ -140,51 +147,109 @@ <h1 align="center">
140147
<li><a href="#accessibility">Accessibility</a></li>
141148
</ul>
142149
</li>
150+
<li><a href="#system-design">System Design</a></li>
151+
<li><a href="#behavioral-interviews">Behavioral Interviews</a></li>
152+
<li><a href="#take-home-assignments">Take-home Assignments</a></li>
153+
<li><a href="#compensation--offer-evaluation">Compensation + Offer Evaluation</a></li>
143154
<li><a href="#questions">Questions</a></li>
155+
<li><a href="#references">References</a></li>
144156
</ul>
145157
<!-- tocstop -->
146158

147159
<h1 id="how-to-prepare">How to Prepare</h1>
148-
<p>Invest time in preparing: It&#39;s important for any engineer, even senior ones, to brush up on their interview skills, coding skills and algorithms. An interview is typically different from your day-to-day job.</p>
149-
<p><strong>Practice answering many different coding questions:</strong> Practice answering a coding question with the most efficient bug-free solution without using a compiler. A few resources that offer coding questions to use for practice: <a href="https://l.facebook.com/l.php?u=http%3A%2F%2Fwww.careercup.com%2Fpage&amp;h=ATNXGEU22051CK2jrQZuz0-_xpFzm-N44vARqRRGaN11C-Bj2vvn7WakmxepET56eZiatvTQ5pvqo_-swS4N6QtW0wLyqika349D8d17ymipgFcPjfwzH5Ij6wH7PmPc-MTcx2YwK5Yovm8v&amp;s=1">Careercup</a>, <a href="https://l.facebook.com/l.php?u=http%3A%2F%2Fwww.topcoder.com%2F&amp;h=ATM84NVzQHwje5rS4KBb5NHBfgwbX2g_4I-v4q3gW9I31bL155_2HLWALBAaz-u1XIGY8T7w1xFngHX7f9JT4IzFUw-OECGgW0kHns9mvkGq7tkFG9sQz_Oy3oKpwcwOwnJoXMEin1QmB7id&amp;s=1">Topcoder</a>, <a href="https://l.facebook.com/l.php?u=http%3A%2F%2Fprojecteuler.net%2Findex.php&amp;h=ATPG4D_F0Q_s08m-PKCq6owpQh-cUzeLVDZO2hpdW2Sz03dK80GOAQBL45uEyK73sTqcVHOpXPG-Sd-naTXSuOVwa7TKMiqHcJ72OMhzpwUay472i7xcEjrivGdjUlnSu39Rl-gh3G1T8a-s&amp;s=1">Project Euler</a>, or <a href="https://l.facebook.com/l.php?u=https%3A%2F%2Fcodelab.interviewbit.com%2F&amp;h=ATMMRfsaHRYEOnw7HsLuQSRHKv2q_tQz63MRO-4U9xFgmowjsV9YadpCd4pxMEPnpm2RnXJ8idkl23HwzzMTmFbwK0VAu8MYvxrPs2jqY0TMHs4VJe-df8N0qAG3D15gW4ZKAjGQKCE2SAni&amp;s=1">Facebook Code Lab</a>.</p>
150-
<p><strong>Go over data structures, algorithms and complexity</strong>: Be able to discuss the <strong>big-O complexity</strong> of your approaches. Don&#39;t forget to brush up on your <strong>data structures like lists, arrays, hash tables, hash maps, stacks, queues, graphs, trees, heaps</strong>. Also <strong>sorts, searches, and traversals (BFS, DFS)</strong>.</p>
151-
<p>Also review <strong>recursion and iterative approaches</strong>.</p>
152-
<p><strong>Think about your 2-5 years career aspirations:</strong> You will be asked to talk about your interest and your strengths as an engineer.</p>
153-
<p><strong>Prepare 1-2 questions to ask your interviewer:</strong> There is generally 5 minutes at the end of a typical interview for this.</p>
160+
<p>Interview prep works best when you treat it like a short training block, not random practice.</p>
161+
<h2 id="know-the-interview-loop">Know the Interview Loop</h2>
162+
<p>Most software interview loops include some combination of:</p>
163+
<ul>
164+
<li>Recruiter screen (role alignment, compensation, timeline)</li>
165+
<li>Hiring manager screen (scope, ownership, communication)</li>
166+
<li>Coding rounds (data structures/algorithms, debugging, code quality)</li>
167+
<li>System design (for mid-level+ roles)</li>
168+
<li>Behavioral rounds (collaboration, conflict, impact)</li>
169+
<li>Final panel / bar raiser</li>
170+
</ul>
171+
<p>Prep becomes easier once you map <strong>which rounds</strong> are likely for your target role.</p>
172+
<h2 id="create-a-study-plan">Create a Study Plan</h2>
173+
<p>A practical 4-week plan:</p>
174+
<ul>
175+
<li><strong>Week 1</strong>: Arrays/strings/hash maps + foundational behavioral stories</li>
176+
<li><strong>Week 2</strong>: Trees/graphs/recursion + mock interview #1</li>
177+
<li><strong>Week 3</strong>: Dynamic programming + system design fundamentals</li>
178+
<li><strong>Week 4</strong>: Mixed mocks, weak-area review, company-specific prep</li>
179+
</ul>
180+
<p>Timebox daily sessions:</p>
181+
<ol>
182+
<li>45–60 min new concepts</li>
183+
<li>45–60 min timed practice</li>
184+
<li>15 min retrospective (what you missed + why)</li>
185+
</ol>
186+
<h2 id="practice-with-deliberate-feedback">Practice with Deliberate Feedback</h2>
187+
<p>When solving questions:</p>
188+
<ul>
189+
<li>State assumptions out loud.</li>
190+
<li>Start with brute force, then optimize.</li>
191+
<li>Discuss complexity tradeoffs.</li>
192+
<li>Test with edge cases before finalizing.</li>
193+
<li>Explain naming and readability choices.</li>
194+
</ul>
195+
<p>After each session, log:</p>
196+
<ul>
197+
<li>Pattern (e.g. sliding window, DFS backtracking)</li>
198+
<li>Mistake type (logic, edge case, complexity, communication)</li>
199+
<li>Fix you will apply next time</li>
200+
</ul>
201+
<h2 id="build-your-interview-narrative">Build Your Interview Narrative</h2>
202+
<p>Prepare 6–8 stories using STAR (Situation, Task, Action, Result), covering:</p>
203+
<ul>
204+
<li>Hard technical problem</li>
205+
<li>Conflict/disagreement</li>
206+
<li>Failure and recovery</li>
207+
<li>Leadership without authority</li>
208+
<li>Mentoring or unblocking others</li>
209+
<li>Shipping under ambiguity</li>
210+
</ul>
211+
<p>Keep each story to ~2 minutes, with measurable outcomes.</p>
212+
<h2 id="day-before-checklist">Day-before Checklist</h2>
213+
<ul>
214+
<li>Review your notes, do <strong>not</strong> cram new topics.</li>
215+
<li>Re-read your resume and project details.</li>
216+
<li>Prepare thoughtful interviewer questions.</li>
217+
<li>Verify your coding environment, camera, mic, and internet.</li>
218+
<li>Sleep enough; performance drops sharply with fatigue.</li>
219+
</ul>
154220
<h1 id="resources">Resources</h1>
155221
<h2 id="suggested-reading">Suggested reading</h2>
156222
<ul>
157-
<li><a href="https://l.facebook.com/l.php?u=http%3A%2F%2Fwww.amazon.com%2Fdp%2F0984782850%2F&amp;h=ATMZRtbfTrzQcLHngryrTjFT_XCq2o3nid4NoEE88Unt61VMu5gFILsu62CeZiwgbMGZEsXHIio3myVajcoWduG6CmE2SNFwxgOsHYHdaHWJIaSz20A7UL-X0oS1_Y4HnsCjr2FMWV3QabQf&amp;s=1">Cracking the Coding Interview</a></li>
158-
<li><a href="https://l.facebook.com/l.php?u=http%3A%2F%2Fwww.amazon.com%2Fdp%2F0262033844&amp;h=ATOR-C75elaqF-869Wl2vEifzniqLLc-mNpQXeueUSB7OVXcUN7-lehuzUCmjAgZ_VvnNPPra-ogSE4exCDEjTb2hxaQHSzun9WU0eN94HDmr58g7ibkPOCFv2Cns6eQcvcH72WAD9yfxcyI&amp;s=1">Introduction to Algorithms</a></li>
159-
<li><a href="http://www.amazon.com/Algorithms-Parts-1-5-Bundle-Fundamentals/dp/0201756080">Algorithms in C</a></li>
160-
<li><a href="https://apps2.mdp.ac.id/perpustakaan/ebook/Karya%20Umum/Dsa.pdf">Data Structures and Algorithms</a> and <a href="http://bigocheatsheet.com/">Big-O Cheat Sheet</a></li>
161-
<li><a href="https://www.coursera.org/learn/algorithms-part1">Coursera - Algorithms, Part 1</a></li>
162-
<li><a href="https://www.coursera.org/learn/algorithms-part2">Coursera - Algorithms, Part 2</a></li>
163-
<li><a href="https://www.udacity.com/course/intro-to-algorithms--cs215">Udacity - Intro to Algorithms</a></li>
164-
<li><a href="https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-spring-2008/">MIT Open courseware - Introduction to Algorithms</a></li>
165-
<li>“You Don’t Know JS” by Kyle Simpson - <a href="https://github.com/getify/You-Dont-Know-JS">https://github.com/getify/You-Dont-Know-JS</a></li>
166-
<li><a href="https://medium.com/dev-bits/a-perfect-guide-for-cracking-a-javascript-interview-a-developers-perspective-23a5c0fa4d0d">Cracking the javascript interview</a></li>
167-
<li><a href="https://www.scaler.com/topics/data-structures/">Data Structures and Algorithms Tutorial</a></li>
168-
<li><a href="https://github.com/careercup/CtCI-6th-Edition-JavaScript">Cracking the Coding Interview (JS) Solutions</a></li>
169-
<li><a href="https://techinterviewhandbook.org/">Tech Interview Handbook</a></li>
170-
<li><a href="https://frontendinterviewhandbook.com/">Front End Interview Handbook</a></li>
223+
<li><a href="https://www.crackingthecodinginterview.com/">Cracking the Coding Interview</a></li>
224+
<li><a href="https://mitpress.mit.edu/9780262046305/introduction-to-algorithms/">Introduction to Algorithms (CLRS)</a></li>
225+
<li><a href="https://www.algorist.com/">The Algorithm Design Manual</a></li>
226+
<li><a href="https://www.manning.com/books/grokking-algorithms-second-edition">Grokking Algorithms</a></li>
227+
<li><a href="https://www.techinterviewhandbook.org/">Tech Interview Handbook</a></li>
228+
<li><a href="https://frontendinterviewhandbook.com/">Frontend Interview Handbook</a></li>
229+
<li><a href="https://dataintensive.net/">Designing Data-Intensive Applications</a></li>
230+
<li><a href="https://github.com/getify/You-Dont-Know-JS">You Don’t Know JS Yet</a></li>
171231
</ul>
172232
<h3 id="practice-questions">Practice questions</h3>
173233
<ul>
174-
<li><a href="https://github.com/rohan-paul/Awesome-JavaScript-Interviews">Awesome JavaScript Interviews</a></li>
175-
<li><a href="https://techiedelight.quora.com/500-Data-Structures-and-Algorithms-interview-questions-and-their-solutions">500 Data Structures and Algorithms </a></li>
176-
<li><a href="http://www.geeksforgeeks.org/top-10-algorithms-in-interview-questions/">Top 10 Algos in Interview Questions</a></li>
177-
<li><a href="https://www.hackerrank.com/">HackerRank</a>, <a href="https://community.topcoder.com/tc?module=MatchDetails&amp;rd=15712">Topcoder</a>, <a href="http://codeforces.com/contests">Codeforces</a>, <a href="https://leetcode.com/">Leetcode</a>, <a href="https://www.interviewbit.com/">InterviewBit</a> or <a href="https://open.kattis.com/">Kattis.</a></li>
178-
<li>Problems from<a href="https://books.google.co.uk/books/about/Cracking_the_Coding_Interview.html?id=anhAXwAACAAJ&amp;hl=en"> Cracking the Coding Interview Book</a></li>
179-
<li>List of <a href="https://icpc.baylor.edu/worldfinals/problems">ACM-ICPC</a> and <a href="https://code.google.com/codejam/past-contests">Code Jam</a> past questions</li>
234+
<li><a href="https://leetcode.com/">LeetCode</a></li>
235+
<li><a href="https://www.hackerrank.com/">HackerRank</a></li>
236+
<li><a href="https://codeforces.com/">Codeforces</a></li>
237+
<li><a href="https://exercism.org/">Exercism</a></li>
238+
<li><a href="https://neetcode.io/roadmap">NeetCode problem roadmap</a></li>
239+
<li><a href="https://projecteuler.net/">Project Euler</a></li>
180240
</ul>
181241
<h2 id="videos">Videos</h2>
182242
<ul>
183-
<li><a href="https://www.youtube.com/watch?v=RlfLCWKxHJ0">Clean Code</a></li>
243+
<li><a href="https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/">MIT 6.006 Introduction to Algorithms</a></li>
244+
<li><a href="https://cs50.harvard.edu/x/">CS50 (Harvard)</a></li>
245+
<li><a href="https://www.youtube.com/watch?v=7EmboKQH8lM">Clean Code talk by Robert C. Martin</a></li>
184246
</ul>
185247
<h2 id="misc">Misc.</h2>
186248
<ul>
187-
<li><a href="http://flexboxfroggy.com/">Flexbox Froggy</a></li>
249+
<li><a href="https://www.bigocheatsheet.com/">Big-O Cheat Sheet</a></li>
250+
<li><a href="https://visualgo.net/">VisuAlgo (algorithm visualizations)</a></li>
251+
<li><a href="https://flexboxfroggy.com/">Flexbox Froggy</a></li>
252+
<li><a href="https://cssgridgarden.com/">Grid Garden</a></li>
188253
</ul>
189254
<h1 id="computer-science">Computer Science</h1>
190255
<h2 id="data-structures">Data Structures</h2>
@@ -1312,6 +1377,55 @@ <h2 id="accessibility">Accessibility</h2>
13121377
<li>Providing accessible error messages</li>
13131378
<li>Accessibility testing</li>
13141379
</ul>
1380+
<h1 id="system-design">System Design</h1>
1381+
<p>System design interviews evaluate how you reason about scale, tradeoffs, and ambiguity.</p>
1382+
<p>Suggested structure:</p>
1383+
<ol>
1384+
<li>Clarify requirements (functional + non-functional)</li>
1385+
<li>Estimate scale (QPS, storage, read/write ratio)</li>
1386+
<li>Define APIs and data model</li>
1387+
<li>Propose high-level architecture</li>
1388+
<li>Deep dive into bottlenecks (caching, partitioning, consistency)</li>
1389+
<li>Discuss reliability, security, and observability</li>
1390+
</ol>
1391+
<p>Common topics to know:</p>
1392+
<ul>
1393+
<li>Load balancing and reverse proxies</li>
1394+
<li>Caching patterns (cache-aside, write-through, TTL)</li>
1395+
<li>SQL vs NoSQL tradeoffs</li>
1396+
<li>Queues/streams and asynchronous processing</li>
1397+
<li>Rate limiting, retries, idempotency</li>
1398+
<li>CAP theorem, replication, sharding</li>
1399+
</ul>
1400+
<h1 id="behavioral-interviews">Behavioral Interviews</h1>
1401+
<p>Behavioral interviews often decide offers when technical performance is close.</p>
1402+
<p>Tips:</p>
1403+
<ul>
1404+
<li>Use STAR format and lead with the result.</li>
1405+
<li>Quantify impact (latency, revenue, incidents reduced, time saved).</li>
1406+
<li>Show ownership, collaboration, and learning loops.</li>
1407+
<li>Be explicit about what <em>you</em> did.</li>
1408+
<li>Prepare concise stories for conflict, failure, and prioritization.</li>
1409+
</ul>
1410+
<h1 id="take-home-assignments">Take-home Assignments</h1>
1411+
<p>For take-home tasks:</p>
1412+
<ul>
1413+
<li>Clarify requirements early and document assumptions.</li>
1414+
<li>Keep scope realistic; quality &gt; breadth.</li>
1415+
<li>Include a short README with setup, decisions, and tradeoffs.</li>
1416+
<li>Add tests for critical paths.</li>
1417+
<li>Treat the submission like production code (linting, naming, small commits).</li>
1418+
</ul>
1419+
<h1 id="compensation--offer-evaluation">Compensation + Offer Evaluation</h1>
1420+
<p>When comparing offers, evaluate more than base salary:</p>
1421+
<ul>
1422+
<li>Base, bonus, equity, vesting schedule, refresh policy</li>
1423+
<li>Level/title trajectory and promotion rubric</li>
1424+
<li>Team quality, manager fit, and product roadmap</li>
1425+
<li>On-call expectations and work-life boundaries</li>
1426+
<li>Learning opportunities and long-term career compounding</li>
1427+
</ul>
1428+
<p>Use total compensation over 4 years for apples-to-apples comparison.</p>
13151429
<h1 id="questions">Questions</h1>
13161430
<h3 id="how-would-you-make-these-functions-work">How would you make these functions work?</h3>
13171431
<pre><code class="language-javascript">add(<span class="hljs-number">2</span>, <span class="hljs-number">5</span>); <span class="hljs-comment">// 7</span>
@@ -2038,6 +2152,18 @@ <h3 id="how-would-you-handle-5000-promises">How would you handle 5000 promises?<
20382152
<p>There&#39;s no answer here - yet! Suggest one by <a href="https://github.com/danieldelcore/mega-interview-guide/pulls">creating a pull request 🙏</a></p>
20392153
</details>
20402154

2155+
<h1 id="references">References</h1>
2156+
<ul>
2157+
<li><a href="https://google.github.io/eng-practices/">Google Engineering Practices Documentation</a></li>
2158+
<li><a href="https://aws.amazon.com/architecture/well-architected/">AWS Well-Architected Framework</a></li>
2159+
<li><a href="https://github.com/donnemartin/system-design-primer">System Design Primer</a></li>
2160+
<li><a href="https://12factor.net/">The Twelve-Factor App</a></li>
2161+
<li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide">MDN JavaScript Guide</a></li>
2162+
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API">MDN Web APIs</a></li>
2163+
<li><a href="https://owasp.org/www-project-top-ten/">OWASP Top 10</a></li>
2164+
<li><a href="https://www.nngroup.com/articles/ten-usability-heuristics/">Nielsen Norman Group: UX heuristics</a></li>
2165+
</ul>
2166+
20412167
</div>
20422168
</main>
20432169
</body>

0 commit comments

Comments
 (0)