๐Ÿ’ฏ Materials to help you rock your next coding interview

Tech Interview Handbook


Black Lives Matter. Support the Equal Justice Initiative


What is this?

Carefully curated content to help you ace your next technical interview, with a focus on algorithms. System design questions are in-progress. Besides the usual algorithm questions, other awesome stuff includes:

Help from you in contributing content would be very much appreciated!

Why do I want this?

This repository has practical content that covers all phases of a technical interview, from applying for a job to passing the interviews to offer negotiation. Technically competent candidates might still find the non-technical content helpful as well.

Who is this for?

Anybody who wants to land a job at a tech company but is new to technical interviews, seasoned engineers who have not been on the other side of the interviewing table in a while and want to get back into the game, or anyone who wants to be better at technical interviewing.


๐Ÿ’ฐ Looking for a job? Sign up for free with Triplebyte to efficiently interview with top tech companies! ๐Ÿ’ฐ

How is this repository different?

There are many awesome books like Cracking the Coding Interview and interview-related repositories out there on GitHub, what makes this repository different? The difference is that many existing interview repositories contain mainly links to external resources whereas this repository contains top quality curated content directly for your consumption.

Also, existing resources focus mainly on algorithm questions and lack coverage for more domain-specific and non-technical questions. This handbook aims to cover content beyond the typical algorithmic coding questions. ๐Ÿ˜Ž

Looking for Front End content?

Front end-related content have been extracted out into a separate repository - Front End Interview Handbook.

Contents

A Docusaurus website has been created to provide a better reading experience. Check out the website here!

Related

If you are interested in how data structures are implemented, check out Lago, a Data Structures and Algorithms library for JavaScript. It is pretty much still WIP but I intend to make it into a library that is able to be used in production and also a reference resource for revising Data Structures and Algorithms.

Contributing

There are no formal contributing guidelines at the moment as things are still in flux and we might find a better approach to structure content as we go along. You are welcome to contribute whatever you think will be helpful to fellow engineers. If you would like to contribute content for different domains, feel free to create an issue or submit a pull request and we can discuss further.

Online one-click setup for contributing

You can use Gitpod (A free online VS Code-like IDE) for contributing online. With a single click it will launch a workspace and automatically:

  • clone the tech-interview-handbook repo.
  • install the dependencies.
  • run yarn start.

So that you can start straight away.

Open in Gitpod

Contributors

This project exists thanks to all the people who contributed. [Contribute].

Backers

Thank you to all our backers! ๐Ÿ™ [Become a backer]

Buy Me A Coffee

Sponsors

Support this project by becoming a sponsor. Your logo/profile picture will show up here with a link to your website. [Become a sponsor]

Maintainers

Disclaimer

I am providing code in the repository to you under an open source license. Because this is my personal repository, the license you receive to my code is from me and not my employer (Facebook)

Owner
Yangshun Tay
Full Front End Stack @facebook ยท Facebook Open Source webmaster via @Docusaurus ยท ๐Ÿ‡ธ๐Ÿ‡ฌ
Yangshun Tay
Comments
  • A messaging bot for tech-interview-handbook

    A messaging bot for tech-interview-handbook

    I have developed an AI Bot that can assist users in Interview Preparation by using the content from tech-interview-handbook by yangshun. I'm ready to send pull request if you're interested in this idea.

  • Adding Arcesium(DE Shaw & Co.) to Interview Formats

    Adding Arcesium(DE Shaw & Co.) to Interview Formats

  • Add solution to a leetcode problem.

    Add solution to a leetcode problem.

    Problem: https://leetcode.com/problems/sum-root-to-leaf-numbers/

    Solution Explanation Blog Post: https://medium.com/leetcode-solutions/summing-root-to-leaf-numbers-in-a-binary-tree-353f33c8565e

    Solution Explanation Text:

    Summing Root to Leaf Numbers in a Binary Tree

    leetcode1

    Sum Root to Leaf Numbers is an interesting problem from Leetcode. The problem is of medium difficulty and is about binary trees. This post presents and explains the solution along with the thought process.

    I assume that youโ€™re familiar with Python and the concept of binary trees. If youโ€™re not, you can read this article to get started.

    The Problem

    Given a binary tree whose nodes contain values 0-9, we have to find the sum of all numbers formed by root-to-leaf paths. A leaf is a node that doesnโ€™t have any child nodes. In a binary tree, a root-to-leaf path is always unique. Here below is the expected behavior of the solution required:

    leetcode2

    In the tree on the left, the output is 25. 25 is the sum of 12 and 13, which are the two numbers formed when starting from 1 and visiting every leaf. In the tree on the right, the output is 1026 as it is sum of the three numbers 495, 491 and 40.

    The Observations and Insights

    • We notice that we traverse the tree from the root to the leaf, visiting some leaves before many of the direct children of the root itself. This suggests that a depth-first search might be more useful here, and especially the one which starts visits the root first.

    • We notice that the building of numbers is incremental and similar of sorts: the only difference between 495 and 491 is the last digit. If we remove the 5 and insert a 1 in its place, we have the next number. A number is essentially made of up all digits in its ancestor nodes and thus shares many digits with siblings and nodes within the same sub-tree.

    • Finally, we notice that this problem involves a tree so a recursive solution is possible and natural.

    The Solution

    We can do a pre-order traversal of the tree where we incrementally build up a number and exploit the fact that numbers formed by nodes in the same sub-tree have common digits for common ancestors. When weโ€™re done forming numbers in a sub-tree, we can back-track and go to another sub-tree.

    Letโ€™s create a Solution class to encompass our solution. We can have an array attribute to store all the root-to-leaf numbers formed and an array attribute to store the current list of digits as we traverse the tree.

    class Solution: 
        curr = [] # stores digits in the current path 
        numbers = [] # stores numbers formed by root-to-leaf paths
        def sum_numbers(self, root: TreeNode) -> int:
    

    The method signature given to us in the problem has one argument: root , which is of the type TreeNode . A TreeNode class is as follows (from Leetcode):

    class TreeNode:
         def __init__(self, val=0, left=None, right=None):
             self.val = val
             self.left = left
             self.right = right
    

    As highlighted earlier, we need to build a number for each root-to-leaf path so that we can compute the sum of all numbers. To keep our code modular, letโ€™s define another method to do this (instead of doing it within the sum_numbers method). This method will be responsible for filling our numbers array with all the root-to-leaf numbers. Letโ€™s call it get_root_to_leaf_nums. It should take an argument of type TreeNode as well and return nothing (since it is modifying state by filling up the numbers array.

    Our Solution class looks like:

    class Solution: 
        curr = []
        numbers = []
        def sum_numbers(self, root: TreeNode) -> int:
        def get_root_to_leaf_nums(self, root: TreeNode): 
    

    We can think of the get_root_to_leaf_nums method recursively and process each node differently based on whether it is a leaf or a not a leaf.

    • If it is a leaf, we want to add the value to our curr array, create a number based on the digits in the curr array and add the number to the numbers array. Since the node is a leaf, we will backtrack from here to the previous node and therefore want to delete the current nodeโ€™s value from the curr array.

    • If it is not a leaf, we want to add the value to our curr array, and then continue traversing the left and right sub-trees. When done, we want to remove the current nodeโ€™s value from the curr array as we backtrack.

    Thus, our get_root_to_leaf_nums method will be as follows:

    def get_root_to_leaf_nums(self, root: TreeNode): 
            if root: 
                self.curr.append(str(root.val))
                if not root.left and not root.right:
                    self.numbers.append(self.convert_to_num(self.curr))
                    self.curr.pop()
                else: 
                    self.get_root_to_leaf_nums(root.left)
                    self.get_root_to_leaf_nums(root.right)
                    self.curr.pop()
    

    We check if the root is not a None and simply do nothing if it is None as we are not concerned with empty sub-trees. We need a convert_to_num method that can convert the curr array representing digits of the number to an integer:

    def convert_to_num(self, arr) -> int:
            cum = int("".join([str(x) for x in arr]))
            return int(cum)
    

    We basically convert each int in the curr array to a string, concatenate the string and then typecast the result back to an int.

    Now, in our main method, we first want to fill the numbers array and then simply return its sum. We need to clear the numbers array at the end because Leetcode will typically run this through a lot of testcases and subsequent testcases will fail if the numbers array contains solutions numbers from a previous testcase.

    Finally, this is how our solution looks:

    class Solution: 
        curr = []
        numbers = []
        def sum_numbers(self, root: TreeNode) -> int:
            #get all numbers from root to leaf paths
            self.pre_order(root)
            # sum all numbers
            ans = sum(self.numbers)
            self.numbers.clear()
            return ansdef get_root_to_leaf_nums(self, root: TreeNode): 
            if root: 
                self.curr.append(str(root.val))
                if not root.left and not root.right:
                    self.numbers.append(self.convert_to_num(self.curr))
                    self.curr.pop()
                else: 
                    self.get_root_to_leaf_nums(root.left)
                    self.get_root_to_leaf_nums(root.right)
                    self.curr.pop()def convert_to_num(self, arr) -> int:
            cum = int("".join([str(x) for x in arr]))
            return int(cum)
    

    The Algorithmic Complexity

    When solving a problem, it is important to analyze its algorithmic complexity not only to estimate its performance but also to identify areas for improvement and reflect on our problem solving skills.

    Time:

    Our solution is a modification of the depth-first-search pre-order traversal where we visit all nodes exactly once. Thus, our runtime is simply O(N) where N represents the number of nodes in the given tree. I canโ€™t think of a solution that will be better than O(N) because to construct a number from digits, I need to know all the digits.

    We also incur a small cost to sum the numbers in the numbers list and to convert the curr array to an integer, but these costs are insignificant when compared to the cost of visiting each node (the number of numbers formed will be less than total number of nodes).

    Space:

    In terms of storage, we store the numbers formed and the current list of digits, which is not that significant. However, what is significant is the recursion call stack that builds up as our get_root_to_leaf_nums calls itself. These calls โ€œbuild-upโ€ as one waits for another to finish.

    Generally, the maximum call stack will be dependent upon the height of the binary tree (since we start backtracking after we visit a leaf), giving a complexity of O(H) where H is the height of the binary tree. In the worst case, the binary tree is skewed in either direction and thus H = N. Therefore, the worst case space complexity is O(H).

    You can read this article to know more about recursion call stacks.

    The Conclusion

    I hope this post helped! Please do let me know if you have any feedback, comments or suggestions by responding to this post.

  • contents: modify graph search algorithm

    contents: modify graph search algorithm

    The changes I'm planning are as follows:

    1. The current method for traversing graphs (represented as 2D grids) shows a recursive implementation. I'm following an iterative implementation that uses deque data structure which can function as either a queue (for BFS) and stack (for DFS) to provide more effecient insertion and deletion operations.
    2. Using namedtuple data structure to use x or y to access coordinates in place of indices.
    3. Add a placeholder function is_valid to check for those cells that may be invalid (this function will vary as per what the question requires)
    4. Insert into the deque first and check if the nodes are valid later(as opposed to checking boundary conditions and visited/valid seperately)
  • Not finished sentence

    Not finished sentence

    In Writing your software engineer resume, under Test readability with industry-standard ATS. I see "Test the readability and formatting of your resume using." and it doesn't finish telling me using what.

  • Recent deleted content for questions to ask

    Recent deleted content for questions to ask

    Is there a reason why a few files were deleted in this commit https://github.com/yangshun/tech-interview-handbook/commit/a6918b297b67ef000027d1e5c6284cd173259c21 ?

    I found the old Questions to Ask a lot more useful than the current Final Question as it broke down all questions to ask depending on who you are being interviewed by (Culture, Product, Management, Leadership, HR, etc.) and not just SWE.

  • Gender inclusive?

    Gender inclusive?

    You speak about shirt and tie. Now of course there's nothing stopping a woman from wearing that, but wouldn't you agree that this makes it sound like you're only addressing a male audience?

  • Add awesome_bot to automatically check if links are dead

    Add awesome_bot to automatically check if links are dead

    While reading Front End Job Interview Questions I stumbled upon the dead link http://jgthms.com/css-interview-questions-and-answers.html

    This PR adding the awesome bot which will automatically go through all links and report if anything is dead. It will still allow redirects and duplicates.

    Here's the current state:

    > Checking links in algorithms/array.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 6
      1. http://blog.gainlo.co/index.php/2016/06/01/subarray-with-given-sum/ 
      2. http://blog.gainlo.co/index.php/2016/07/19/3sum/ 
      3. http://blog.gainlo.co/index.php/2016/05/10/duplicate-elements-of-an-array/ 
      4. http://blog.gainlo.co/index.php/2016/12/02/uber-interview-question-maximum-sum-non-adjacent-elements/ 
      5. http://blog.gainlo.co/index.php/2016/11/18/uber-interview-question-move-zeroes/ 
      6. http://blog.gainlo.co/index.php/2017/02/02/uber-interview-questions-longest-increasing-subarray/ 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in algorithms/dynamic-programming.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/geometry.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/graph.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/hash-table.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/08/14/uber-interview-question-map-implementation/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in algorithms/heap.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/interval.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/07/12/meeting-room-scheduling-problem/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in algorithms/linked-list.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/06/12/flatten-a-linked-list/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in algorithms/math.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. http://blog.gainlo.co/index.php/2016/11/11/uber-interview-question-weighted-random-numbers/ 
      2. http://blog.gainlo.co/index.php/2017/01/20/arrange-given-numbers-to-form-the-biggest-number-possible/ 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in algorithms/matrix.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/oop.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/permutation.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/12/23/uber-interview-questions-permutations-parentheses/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in algorithms/queue.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in algorithms/README.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 95, 94 unique
      01. https://leetcode.com/problems/lru-cache/ 
      02. https://discuss.leetcode.com/topic/30941/here-is-a-10-line-template-that-can-solve-most-substring-problems 
      03. https://leetcode.com/problems/two-sum/ 
      04. https://leetcode.com/problems/best-time-to-buy-and-sell-stock/ 
      05. https://leetcode.com/problems/contains-duplicate/ 
      06. https://leetcode.com/problems/product-of-array-except-self/ 
      07. https://leetcode.com/problems/maximum-subarray/ 
      08. https://leetcode.com/problems/maximum-product-subarray/ 
      09. https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/ 
      10. https://leetcode.com/problems/search-in-rotated-sorted-array/ 
      11. https://leetcode.com/problems/3sum/ 
      12. https://leetcode.com/problems/container-with-most-water/ 
      13. https://leetcode.com/problems/sum-of-two-integers/ 
      14. https://leetcode.com/problems/number-of-1-bits/ 
      15. https://leetcode.com/problems/counting-bits/ 
      16. https://leetcode.com/problems/missing-number/ 
      17. https://leetcode.com/problems/reverse-bits/ 
      18. https://medium.freecodecamp.org/demystifying-dynamic-programming-3efafb8d4296 
      19. https://leetcode.com/problems/climbing-stairs/ 
      20. https://leetcode.com/problems/coin-change/ 
      21. https://leetcode.com/problems/longest-increasing-subsequence/ 
      22. https://leetcode.com/problems/word-break/ 
      23. https://leetcode.com/problems/combination-sum-iv/ 
      24. https://leetcode.com/problems/house-robber/ 
      25. https://leetcode.com/problems/house-robber-ii/ 
      26. https://leetcode.com/problems/decode-ways/ 
      27. https://leetcode.com/problems/unique-paths/ 
      28. https://leetcode.com/problems/jump-game/ 
      29. https://discuss.leetcode.com/topic/66065/python-dfs-bests-85-tips-for-all-dfs-in-matrix-question/ 
      30. https://leetcode.com/problems/clone-graph/ 
      31. https://leetcode.com/problems/course-schedule/ 
      32. https://leetcode.com/problems/alien-dictionary/ 
      33. https://leetcode.com/problems/pacific-atlantic-water-flow/ 
      34. https://leetcode.com/problems/number-of-islands/ 
      35. https://leetcode.com/problems/graph-valid-tree/ 
      36. https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/ 
      37. https://leetcode.com/problems/longest-consecutive-sequence/ 
      38. https://leetcode.com/problems/insert-interval/ 
      39. https://leetcode.com/problems/merge-intervals/ 
      40. https://leetcode.com/problems/meeting-rooms/ 
      41. https://leetcode.com/problems/meeting-rooms-ii/ 
      42. https://leetcode.com/problems/non-overlapping-intervals/ 
      43. https://leetcode.com/problems/reverse-linked-list/ 
      44. https://leetcode.com/problems/linked-list-cycle/ 
      45. https://leetcode.com/problems/merge-two-sorted-lists/ 
      46. https://leetcode.com/problems/merge-k-sorted-lists/ 
      47. https://leetcode.com/problems/remove-nth-node-from-end-of-list/ 
      48. https://leetcode.com/problems/reorder-list/ 
      49. https://leetcode.com/problems/powx-n/ 
      50. https://leetcode.com/problems/sqrtx/ 
      51. https://leetcode.com/problems/integer-to-english-words/ 
      52. https://leetcode.com/problems/set-matrix-zeroes/ 
      53. https://leetcode.com/problems/spiral-matrix/ 
      54. https://leetcode.com/problems/rotate-image/ 
      55. https://leetcode.com/problems/word-search/ 
      56. https://stackoverflow.com/questions/310974/what-is-tail-call-optimization 
      57. https://leetcode.com/problems/subsets/ 
      58. https://leetcode.com/problems/subsets-ii/ 
      59. https://leetcode.com/problems/strobogrammatic-number-ii/ 
      60. https://www.wikiwand.com/en/Trie 
      61. https://www.wikiwand.com/en/Suffix_tree 
      62. https://www.wikiwand.com/en/Rabin%E2%80%93Karp_algorithm 
      63. https://www.wikiwand.com/en/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm 
      64. https://leetcode.com/problems/longest-palindromic-subsequence/ 
      65. https://leetcode.com/problems/longest-substring-without-repeating-characters/ 
      66. https://leetcode.com/problems/longest-repeating-character-replacement/ 
      67. https://leetcode.com/problems/minimum-window-substring/description/ 
      68. https://leetcode.com/problems/encode-and-decode-strings/ 
      69. https://leetcode.com/problems/valid-anagram 
      70. https://leetcode.com/problems/group-anagrams/ 
      71. https://leetcode.com/problems/valid-parentheses 
      72. https://leetcode.com/problems/valid-palindrome/ 
      73. https://leetcode.com/problems/longest-palindromic-substring/ 
      74. https://leetcode.com/problems/palindromic-substrings/ 
      75. https://leetcode.com/problems/maximum-depth-of-binary-tree/ 
      76. https://leetcode.com/problems/same-tree/ 
      77. https://leetcode.com/problems/invert-binary-tree/ 
      78. https://leetcode.com/problems/binary-tree-maximum-path-sum/ 
      79. https://leetcode.com/problems/binary-tree-level-order-traversal/ 
      80. https://leetcode.com/problems/serialize-and-deserialize-binary-tree/ 
      81. https://leetcode.com/problems/subtree-of-another-tree/ 
      82. https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/ 
      83. https://leetcode.com/problems/validate-binary-search-tree/ 
      84. https://leetcode.com/problems/kth-smallest-element-in-a-bst/ 
      85. https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/ 
      86. https://leetcode.com/articles/implement-trie-prefix-tree/ 
      87. https://leetcode.com/problems/implement-trie-prefix-tree 
      88. https://leetcode.com/problems/add-and-search-word-data-structure-design 
      89. https://leetcode.com/problems/word-search-ii/ 
      90. https://leetcode.com/problems/top-k-frequent-elements/ 
      91. https://leetcode.com/problems/find-median-from-data-stream/ 
      92. http://blog.triplebyte.com/how-to-pass-a-programming-interview 
      93. https://quip.com/q41AA3OmoZbC 
      94. http://www.geeksforgeeks.org/must-do-coding-questions-for-companies-like-amazon-microsoft-adobe/ 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โ†’โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โ†’โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“
    No issues :-)
    > Checking links in algorithms/sorting-searching.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. http://blog.gainlo.co/index.php/2017/01/12/rotated-array-binary-search/ 
      2. http://blog.gainlo.co/index.php/2017/01/20/arrange-given-numbers-to-form-the-biggest-number-possible/ 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in algorithms/stack.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/09/30/uber-interview-question-delimiter-matching/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in algorithms/string.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 5
      1. http://blog.gainlo.co/index.php/2016/04/12/find-the-longest-substring-with-k-unique-characters/ 
      2. http://blog.gainlo.co/index.php/2016/05/06/group-anagrams/ 
      3. http://blog.gainlo.co/index.php/2016/10/07/facebook-interview-longest-substring-without-repeating-characters/ 
      4. http://blog.gainlo.co/index.php/2016/04/29/minimum-number-of-deletions-of-a-string/ 
      5. http://blog.gainlo.co/index.php/2016/04/08/if-a-string-contains-an-anagram-of-another-string/ 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in algorithms/topics.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 5
      1. http://www.hiredintech.com/system-design/ 
      2. https://www.quora.com/How-do-I-prepare-to-answer-design-questions-in-a-technical-interview?redirected_qid=1500023 
      3. http://blog.gainlo.co/index.php/2015/10/22/8-things-you-need-to-know-before-system-design-interviews/ 
      4. https://github.com/donnemartin/system-design-primer 
      5. https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf 
    Checking URLs: โ†’โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in algorithms/tree.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 4
      1. http://blog.gainlo.co/index.php/2016/04/15/print-all-paths-of-a-binary-tree/ 
      2. http://blog.gainlo.co/index.php/2016/06/03/second-largest-element-of-a-binary-search-tree/ 
      3. http://blog.gainlo.co/index.php/2016/07/06/lowest-common-ancestor/ 
      4. http://blog.gainlo.co/index.php/2016/04/26/deepest-node-in-a-tree/ 
    Checking URLs: โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in CODE_OF_CONDUCT.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 3
      1. http://contributor-covenant.org/version/1/4 
      2. http://contributor-covenant.org 
      3. http://contributor-covenant.org/version/1/4/ 
    Checking URLs: โ†’โ†’โ†’
    No issues :-)
    > Checking links in design/collaborative-editor.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/03/22/system-design-interview-question-how-to-design-google-docs/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in design/news-feed.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 6, 5 unique
      1. https://www.wikiwand.com/en/EdgeRank 
      2. http://blog.gainlo.co/index.php/2016/04/05/design-news-feed-system-part-2/ 
      3. http://blog.gainlo.co/index.php/2016/03/29/design-news-feed-system-part-1-system-design-interview-questions/ 
      4. https://www.slideshare.net/danmckinley/etsy-activity-feeds-architecture 
      5. https://www.slideshare.net/nkallen/q-con-3770885 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in design/README.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 31
      01. https://github.com/donnemartin/system-design-primer 
      02. https://github.com/checkcheckzz/system-design-interview 
      03. https://github.com/shashank88/system_design 
      04. https://gist.github.com/vasanthk/485d1c25737e8e72759f 
      05. http://www.puncsky.com/blog/2016/02/14/crack-the-system-design-interview/ 
      06. https://www.palantir.com/2011/10/how-to-rock-a-systems-design-interview/ 
      07. http://blog.gainlo.co/index.php/2017/04/13/system-design-interviews-part-ii-complete-guide-google-interview-preparation/ 
      08. https://github.com/jwasham/coding-interview-university#system-design-scalability-data-handling 
      09. http://stackoverflow.com/questions/742013/how-to-code-a-url-shortener 
      10. http://blog.gainlo.co/index.php/2016/03/08/system-design-interview-question-create-tinyurl-system/ 
      11. https://www.interviewcake.com/question/python/url-shortener 
      12. http://blog.gainlo.co/index.php/2016/03/22/system-design-interview-question-how-to-design-google-docs/ 
      13. http://blog.gainlo.co/index.php/2016/03/01/system-design-interview-question-create-a-photo-sharing-app/ 
      14. http://blog.gainlo.co/index.php/2016/02/17/system-design-interview-question-how-to-design-twitter-part-1/ 
      15. http://blog.gainlo.co/index.php/2016/02/24/system-design-interview-question-how-to-design-twitter-part-2/ 
      16. http://blog.gainlo.co/index.php/2016/03/29/design-news-feed-system-part-1-system-design-interview-questions/ 
      17. http://blog.gainlo.co/index.php/2016/05/03/how-to-design-a-trending-algorithm-for-twitter/ 
      18. http://blog.gainlo.co/index.php/2016/04/19/design-facebook-chat-function/ 
      19. http://blog.gainlo.co/index.php/2016/06/14/design-a-key-value-store-part-i/ 
      20. http://blog.gainlo.co/index.php/2016/06/21/design-key-value-store-part-ii/ 
      21. http://blog.gainlo.co/index.php/2016/05/24/design-a-recommendation-system/ 
      22. http://blog.gainlo.co/index.php/2016/05/17/design-a-cache-system/ 
      23. http://blog.gainlo.co/index.php/2016/08/22/design-ecommerce-website-part/ 
      24. http://blog.gainlo.co/index.php/2016/08/28/design-ecommerce-website-part-ii/ 
      25. http://blog.gainlo.co/index.php/2016/06/29/build-web-crawler/ 
      26. http://www.makeuseof.com/tag/how-do-search-engines-work-makeuseof-explains/ 
      27. https://www.quora.com/How-can-I-build-a-web-crawler-from-scratch/answer/Chris-Heller 
      28. http://blog.gainlo.co/index.php/2016/10/22/design-youtube-part/ 
      29. http://blog.gainlo.co/index.php/2016/11/04/design-youtube-part-ii/ 
      30. http://blog.gainlo.co/index.php/2016/09/12/dropbox-interview-design-hit-counter/ 
      31. https://www.lyft.com/line 
    Checking URLs: โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in design/search-engine.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://www.makeuseof.com/tag/how-do-search-engines-work-makeuseof-explains/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in domain/databases.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. http://www.geeksforgeeks.org/store-password-database/ 
      2. https://nakedsecurity.sophos.com/2013/11/20/serious-security-how-to-store-your-users-passwords-safely/ 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in domain/networking.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in domain/security.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. https://www.wikiwand.com/en/Public_key_infrastructure 
      2. https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in domain/snake-game/snake-game.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in domain/software-engineering.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in front-end/accessibility.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 3
      1. http://webaim.org/standards/wcag/checklist 
      2. https://chrome.google.com/webstore/detail/high-contrast/djcfdncoelnlbldjfhinnjlhdjlikmph?hl=en 
      3. https://www.udacity.com/course/web-accessibility--ud891 
    Checking URLs: โœ“โ†’โœ“
    No issues :-)
    > Checking links in front-end/browser.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 6
      1. https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/webkitflow.png 
      2. https://medium.freecodecamp.org/its-not-dark-magic-pulling-back-the-curtains-from-your-stylesheets-c8d677fa21b2 
      3. https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/ 
      4. http://frontendbabel.info/articles/webpage-rendering-101/ 
      5. http://www.phpied.com/rendering-repaint-reflowrelayout-restyle/ 
      6. https://hacks.mozilla.org/2017/09/building-the-dom-faster-speculative-parsing-async-defer-and-preload/ 
    Checking URLs: ??โœ“โ†’โœ“โœ“
    
    Issues :-(
    > Links 
      1. [L37]  https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/webkitflow.png SSL_connect returned=1 errno=0 state=error: certificate verify failed 
      2. [L37]  https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/ SSL_connect returned=1 errno=0 state=error: certificate verify failed 
    > Checking links in front-end/caching.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 3
      1. https://calendar.perfplanet.com/2016/a-tale-of-four-caches/ 
      2. https://www.digitalocean.com/community/tutorials/web-caching-basics-terminology-http-headers-and-caching-strategies 
      3. https://code.facebook.com/posts/557147474482256/this-browser-tweak-saved-60-of-requests-to-facebook/ 
    Checking URLs: โœ“โœ“โœ“
    No issues :-)
    > Checking links in front-end/css.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 9
      1. https://smacss.com/ 
      2. http://getbem.com/ 
      3. http://suitcss.github.io/ 
      4. https://speakerdeck.com/vjeux/react-css-in-js 
      5. https://github.com/MicheleBertoli/css-in-js 
      6. https://github.com/css-modules/css-modules 
      7. https://www.codecademy.com/learn/learn-html-css 
      8. http://sass-lang.com/ 
      9. https://philipwalton.com/articles/side-effects-in-css/ 
    Checking URLs: โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in front-end/design.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. https://performancejs.com/post/hde6d32/The-Best-Frontend-JavaScript-Interview-Questions-%28written-by-a-Frontend-Engineer%29 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in front-end/dom.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 4
      1. https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener 
      2. https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener 
      3. https://developer.mozilla.org/en-US/docs/Web/API/Node 
      4. https://developer.mozilla.org/en-US/docs/Web/API/Element 
    Checking URLs: โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in front-end/html.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in front-end/interview-questions.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 132, 121 unique
      001. https://github.com/h5bp/Front-end-Developer-Interview-Questions 
      002. https://github.com/h5bp/Front-end-Developer-Interview-Questions#html-questions 
      003. https://stackoverflow.com/questions/7695044/what-does-doctype-html-do 
      004. https://www.w3.org/QA/Tips/Doctype 
      005. https://developer.mozilla.org/en-US/docs/Mozilla/Mozilla_quirks_mode_behavior 
      006. https://developer.mozilla.org/en-US/docs/Gecko 
      007. https://developer.mozilla.org/en-US/docs/Quirks_Mode_and_Standards_Mode 
      008. https://en.wikipedia.org/wiki/XHTML#Relationship_to_HTML 
      009. https://developer.mozilla.org/en-US/docs/Archive/Web/Properly_Using_CSS_and_JavaScript_in_XHTML_Documents_ 
      010. https://en.wikipedia.org/wiki/XHTML 
      011. https://developer.mozilla.org/en-US/docs/Quirks_Mode_and_Standards_Mode#XHTML 
      012. https://www.w3.org/International/getting-started/language 
      013. https://www.quora.com/What-kind-of-things-one-should-be-wary-of-when-designing-or-developing-for-multilingual-sites 
      014. http://html5doctor.com/html5-custom-data-attributes/ 
      015. https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5 
      016. https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies 
      017. http://tutorial.techaltum.com/local-and-session-storage.html 
      018. http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html 
      019. https://stackoverflow.com/questions/10808109/script-tag-async-defer 
      020. https://bitsofco.de/async-vs-defer/ 
      021. https://developer.yahoo.com/performance/rules.html#css_top 
      022. http://www.ebaytechblog.com/2014/12/08/async-fragments-rediscovering-progressive-html-rendering-with-marko/ 
      023. https://stackoverflow.com/questions/33651166/what-is-progressive-rendering 
      024. https://neal.codes/blog/front-end-interview-questions-html/ 
      025. http://peterdoes.it/2015/12/03/a-personal-exercise-front-end-job-interview-questions-and-my-answers-all/ 
      026. https://github.com/h5bp/Front-end-Developer-Interview-Questions#css-questions 
      027. https://stackoverflow.com/questions/6887336/what-is-the-difference-between-normalize-css-and-reset-css 
      028. https://css-tricks.com/all-about-floats/ 
      029. https://css-tricks.com/almanac/properties/z/z-index/ 
      030. https://philipwalton.com/articles/what-no-one-told-you-about-z-index/ 
      031. https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context 
      032. https://www.sitepoint.com/web-foundations/collapsing-margins/ 
      033. https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context 
      034. https://www.sitepoint.com/understanding-block-formatting-contexts-in-css/ 
      035. https://css-tricks.com/the-image-replacement-museum/ 
      036. https://caniuse.com/ 
      037. https://modernizr.com/ 
      038. https://davidwalsh.name/optimizing-structure-print-css 
      039. https://bem.info/ 
      040. https://developers.google.com/web/fundamentals/performance/rendering/ 
      041. https://csstriggers.com/ 
      042. https://stackoverflow.com/questions/5797014/why-do-browsers-match-css-selectors-from-right-to-left 
      043. https://css-tricks.com/almanac/selectors/a/after-and-before/ 
      044. https://www.smashingmagazine.com/2010/06/the-principles-of-cross-browser-css-coding/#understand-the-css-box-model 
      045. https://developer.mozilla.org/en/docs/Web/CSS/position 
      046. https://www.smashingmagazine.com/2007/07/css-specificity-things-you-should-know/ 
      047. https://www.sitepoint.com/web-foundations/specificity/ 
      048. https://philipwalton.github.io/solved-by-flexbox/ 
      049. https://developer.mozilla.org/en-US/docs/Archive/Apps/Design/UI_layout_basics/Responsive_design_versus_adaptive_design 
      050. http://mediumwell.com/responsive-adaptive-mobile/ 
      051. https://css-tricks.com/the-difference-between-responsive-and-adaptive-design/ 
      052. https://www.sitepoint.com/css-techniques-for-retina-displays/ 
      053. https://www.paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/ 
      054. https://neal.codes/blog/front-end-interview-css-questions 
      055. http://jgthms.com/css-interview-questions-and-answers.html 
      056. https://quizlet.com/28293152/front-end-interview-questions-css-flash-cards/ 
      057. https://github.com/h5bp/Front-end-Developer-Interview-Questions#js-questions 
      058. https://davidwalsh.name/event-delegate 
      059. https://stackoverflow.com/questions/1687296/what-is-dom-event-delegation 
      060. https://medium.com/@arnav_aggarwal 
      061. https://codeburst.io/the-simple-rules-to-this-in-javascript-35d97f31bde3 
      062. https://stackoverflow.com/a/3127440/1751946 
      063. https://davidwalsh.name/javascript-objects 
      064. https://www.quora.com/What-is-prototypal-inheritance/answer/Kyle-Simpson 
      065. https://auth0.com/blog/javascript-module-systems-showdown/ 
      066. https://stackoverflow.com/questions/16521471/relation-between-commonjs-amd-and-requirejs 
      067. http://lucybain.com/blog/2014/immediately-invoked-function-expression/ 
      068. https://stackoverflow.com/questions/15985875/effect-of-declared-and-undeclared-variables 
      069. https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/undefined 
      070. https://addyosmani.com/resources/essentialjsdesignpatterns/book/#modulepatternjavascript 
      071. https://medium.com/javascript-scene/curry-or-partial-application-8150044c78b8#.l4b6l1i3x 
      072. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures 
      073. https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-closure-b2f0d2152b36 
      074. https://www.quora.com/What-is-a-typical-usecase-for-anonymous-functions 
      075. https://stackoverflow.com/questions/10273185/what-are-the-benefits-to-using-anonymous-functions-instead-of-named-functions-fo 
      076. https://medium.com/@dan_abramov/how-to-use-classes-and-sleep-at-night-9af8de78ccb4 
      077. https://stackoverflow.com/questions/7614317/what-is-the-difference-between-native-objects-and-host-objects 
      078. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/new 
      079. https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_objects/Function/bind 
      080. https://www.quirksmode.org/blog/archives/2005/06/three_javascrip_1.html 
      081. https://github.com/paulirish/html5-boilerplate/wiki/Script-Loading-Techniques#documentwrite-script-tag 
      082. https://github.com/h5bp/html5-boilerplate/wiki/Script-Loading-Techniques#documentwrite-script-tag 
      083. https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Feature_detection 
      084. https://stackoverflow.com/questions/20104930/whats-the-difference-between-feature-detection-feature-inference-and-using-th 
      085. https://developer.mozilla.org/en-US/docs/Web/HTTP/Browser_detection_using_the_user_agent 
      086. https://en.wikipedia.org/wiki/Ajax_(programming) 
      087. https://developer.mozilla.org/en-US/docs/AJAX 
      088. https://example.com?callback=printData 
      089. https://mydomain.com 
      090. http://en.wikipedia.org/wiki/Cross-origin_resource_sharing 
      091. https://stackoverflow.com/a/2067584/1751946 
      092. https://stackoverflow.com/questions/6003819/properties-and-attributes-in-html 
      093. http://lucybain.com/blog/2014/js-extending-built-in-objects/ 
      094. https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded 
      095. https://developer.mozilla.org/en-US/docs/Web/Events/load 
      096. https://stackoverflow.com/questions/359494/which-equals-operator-vs-should-be-used-in-javascript-comparisons 
      097. https://en.wikipedia.org/wiki/Same-origin_policy 
      098. https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Conditional_Operator 
      099. http://2ality.com/2011/10/strict-mode-hatred.html 
      100. http://lucybain.com/blog/2014/js-use-strict/ 
      101. https://gist.github.com/jaysonrowe/1592432#gistcomment-790724 
      102. https://gist.github.com/jaysonrowe/1592432 
      103. https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onload 
      104. https://github.com/grab/front-end-guide 
      105. https://developer.mozilla.org/en-US/docs/Web/API/History_API 
      106. https://developer.mozilla.org/en-US/docs/AJAX/Getting_Started 
      107. https://prerender.io/ 
      108. https://github.com/grab/front-end-guide#single-page-apps-spas 
      109. http://stackoverflow.com/questions/21862054/single-page-app-advantages-and-disadvantages 
      110. http://blog.isquaredsoftware.com/presentations/2016-10-revolution-of-web-dev/ 
      111. https://medium.freecodecamp.com/heres-why-client-side-rendering-won-46a349fadb52 
      112. https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-promise-27fc71e77261 
      113. https://softwareengineering.stackexchange.com/questions/72569/what-are-the-pros-and-cons-of-coffeescript 
      114. https://github.com/facebook/react-devtools 
      115. https://github.com/gaearon/redux-devtools 
      116. https://hackernoon.com/twelve-fancy-chrome-devtools-tips-dc1e39d10d9d 
      117. https://raygun.com/blog/javascript-debugging/ 
      118. https://2014.jsconf.eu/speakers/philip-roberts-what-the-heck-is-the-event-loop-anyway.html 
      119. http://theproactiveprogrammer.com/javascript/the-javascript-event-loop-a-stack-and-a-queue/ 
      120. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function 
      121. http://flowerszhong.github.io/2013/11/20/javascript-questions.html 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“xโœ“โœ“โœ“โœ“โœ“โ†’โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โ†’โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โ†’โœ“โœ“โ†’โ†’โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“
    
    Issues :-(
    > Links 
      1. [L0584] 404 http://jgthms.com/css-interview-questions-and-answers.html  
    > Checking links in front-end/javascript.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 10
      01. https://github.com/getify/You-Dont-Know-JS/blob/master/types%20&%20grammar/README.md#you-dont-know-js-types--grammar 
      02. https://github.com/getify/You-Dont-Know-JS/blob/master/scope%20&%20closures/README.md#you-dont-know-js-scope--closures 
      03. https://github.com/getify/You-Dont-Know-JS/blob/master/this%20%26%20object%20prototypes/README.md 
      04. https://rainsoft.io/gentle-explanation-of-this-in-javascript/ 
      05. https://codeburst.io/the-simple-rules-to-this-in-javascript-35d97f31bde3 
      06. https://github.com/getify/You-Dont-Know-JS/blob/master/async%20&%20performance/README.md#you-dont-know-js-async--performance 
      07. https://css-tricks.com/debouncing-throttling-explained-examples/ 
      08. https://www.vikingcodeschool.com/falling-in-love-with-javascript/the-javascript-event-loop 
      09. https://addyosmani.com/resources/essentialjsdesignpatterns/book/ 
      10. https://medium.com/javascript-scene/10-interview-questions-every-javascript-developer-should-know-6fa6bdf5ad95#.l2n8icwl4 
    Checking URLs: โ†’โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in front-end/networking.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in front-end/performance.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 8
      1. https://andydavies.me/blog/2013/10/22/how-the-browser-pre-loader-makes-pages-load-faster/ 
      2. https://developers.google.com/web/fundamentals/design-and-ui/responsive/#css-media-queries 
      3. https://bitsofco.de/understanding-the-critical-rendering-path/ 
      4. https://developer.mozilla.org/en/docs/Web/API/Navigation_timing_API 
      5. https://www.html5rocks.com/en/tutorials/webperformance/basics/ 
      6. http://stevesouders.com/hpws/rules.php 
      7. https://developer.yahoo.com/performance/rules.html 
      8. https://browserdiet.com/en/ 
    Checking URLs: ?โœ“โœ“โœ“โœ“โœ“โœ“โ†’
    
    Issues :-(
    > Links 
      1. [L61]  https://www.html5rocks.com/en/tutorials/webperformance/basics/ SSL_connect returned=1 errno=0 state=error: certificate verify failed 
    > Checking links in front-end/security.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 9
      1. https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF 
      2. https://blog.hartleybrody.com/https-certificates/ 
      3. https://github.com/alex/what-happens-when#tls-handshake 
      4. http://robertheaton.com/2014/03/27/how-does-https-actually-work/ 
      5. http://shebang.brandonmintern.com/foolproof-html-escaping-in-javascript/ 
      6. https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies 
      7. https://www.nczonline.net/blog/2009/05/12/cookies-and-security/ 
      8. https://seclab.stanford.edu/websec/framebusting/framebust.pdf 
      9. https://github.com/shieldfy/API-Security-Checklist 
    Checking URLs: โ†’โœ“โœ“โœ“โœ“โœ“โœ“xโœ“
    
    Issues :-(
    > Links 
      1. [L055] 404 https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF  
    > Checking links in front-end/widgets.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. https://css-tricks.com/dangers-stopping-event-propagation/ 
    Checking URLs: โœ“
    No issues :-)
    > Checking links in non-technical/behavioral.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 11, 10 unique
      01. https://en.wikipedia.org/wiki/Situation%2c_task%2c_action%2c_result 
      02. https://www.glassdoor.com/Interview/Airbnb-Interview-Questions-E391850.htm 
      03. https://www.glassdoor.com/Interview/Amazon-Interview-Questions-E6036.htm 
      04. https://www.glassdoor.com/Interview/Dropbox-Interview-Questions-E415350.htm 
      05. https://hired.com/blog/candidates/10-top-interview-questions-how-to-answer/ 
      06. https://www.glassdoor.com/Interview/Lyft-Interview-Questions-E700614.htm 
      07. https://www.glassdoor.com/Interview/Palantir-Technologies-Interview-Questions-E236375.htm 
      08. https://www.glassdoor.com/Interview/Slack-Interview-Questions-E950758.htm 
      09. https://www.glassdoor.com/Interview/Stripe-Interview-Questions-E671932.htm 
      10. https://www.glassdoor.com/Interview/Twitter-Interview-Questions-E100569.htm 
    Checking URLs: โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in non-technical/cover-letter.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 0
    
    No issues :-)
    > Checking links in non-technical/format.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. https://coderpad.io/ 
      2. https://codepen.io/ 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in non-technical/negotiation.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 2
      1. http://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/ 
      2. https://haseebq.com/how-not-to-bomb-your-offer-negotiation/ 
    Checking URLs: โœ“โœ“
    No issues :-)
    > Checking links in non-technical/psychological.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://www.businessinsider.com/psychological-tricks-to-ace-job-interview-2015-11 
    Checking URLs: โ†’
    No issues :-)
    > Checking links in non-technical/questions-to-ask.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 6
      1. http://www.businessinsider.sg/impressive-job-interview-questions-2015-3/ 
      2. http://lifehacker.com/ask-this-question-to-end-your-job-interview-on-a-good-n-1787624433 
      3. https://www.fastcompany.com/40406730/7-questions-recruiters-at-amazon-spotify-and-more-want-you-to-ask 
      4. http://jvns.ca/blog/2013/12/30/questions-im-asking-in-interviews/ 
      5. http://blog.alinelerner.com/how-to-interview-your-interviewers/ 
      6. https://haseebq.com/how-to-break-into-tech-job-hunting-and-interviews/ 
    Checking URLs: โ†’โ†’โœ“โœ“โ†’โœ“
    No issues :-)
    > Checking links in non-technical/self-introduction.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://blog.gainlo.co/index.php/2016/10/14/8-secretes-software-engineer-self-introduction 
    Checking URLs: โ†’
    No issues :-)
    > Checking links in preparing/README.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 12
      01. https://github.com/kdn251/interviews 
      02. http://www.crackingthecodinginterview.com/ 
      03. https://leetcode.com/ 
      04. https://www.hackerrank.com/ 
      05. http://codeforces.com/ 
      06. https://wiki.python.org/moin/TimeComplexity 
      07. https://en.wikipedia.org/wiki/Short-circuit_evaluation 
      08. https://interviewing.io/ 
      09. https://start.interviewing.io/interview/9hV9r4HEONf9/replay 
      10. https://twitter.com/alinelernerLLC 
      11. http://blog.interviewing.io/ 
      12. https://pramp.com/ 
    Checking URLs: โœ“โœ“โœ“โ†’โœ“โœ“โœ“โœ“โœ“โœ“โœ“โœ“
    No issues :-)
    > Checking links in README.md
    > Will allow duplicate links
    > Will allow redirects
    > Will not save results
    Links to check: 1
      1. http://www.crackingthecodinginterview.com/ 
    Checking URLs: โœ“
    No issues :-)
    
    Summary
                   algorithms/array.md: โœ“
     algorithms/dynamic-programming.md: โœ“
                algorithms/geometry.md: โœ“
                   algorithms/graph.md: โœ“
              algorithms/hash-table.md: โœ“
                    algorithms/heap.md: โœ“
                algorithms/interval.md: โœ“
             algorithms/linked-list.md: โœ“
                    algorithms/math.md: โœ“
                  algorithms/matrix.md: โœ“
                     algorithms/oop.md: โœ“
             algorithms/permutation.md: โœ“
                   algorithms/queue.md: โœ“
                  algorithms/README.md: โœ“
       algorithms/sorting-searching.md: โœ“
                   algorithms/stack.md: โœ“
                  algorithms/string.md: โœ“
                  algorithms/topics.md: โœ“
                    algorithms/tree.md: โœ“
                    CODE_OF_CONDUCT.md: โœ“
        design/collaborative-editor.md: โœ“
                   design/news-feed.md: โœ“
                      design/README.md: โœ“
               design/search-engine.md: โœ“
                   domain/databases.md: โœ“
                  domain/networking.md: โœ“
                    domain/security.md: โœ“
       domain/snake-game/snake-game.md: โœ“
        domain/software-engineering.md: โœ“
            front-end/accessibility.md: โœ“
                  front-end/browser.md: Issues
                  front-end/caching.md: โœ“
                      front-end/css.md: โœ“
                   front-end/design.md: โœ“
                      front-end/dom.md: โœ“
                     front-end/html.md: โœ“
      front-end/interview-questions.md: Issues
               front-end/javascript.md: โœ“
               front-end/networking.md: โœ“
              front-end/performance.md: Issues
                 front-end/security.md: Issues
                  front-end/widgets.md: โœ“
           non-technical/behavioral.md: โœ“
         non-technical/cover-letter.md: โœ“
               non-technical/format.md: โœ“
          non-technical/negotiation.md: โœ“
        non-technical/psychological.md: โœ“
     non-technical/questions-to-ask.md: โœ“
    non-technical/self-introduction.md: โœ“
                   preparing/README.md: โœ“
                             README.md: โœ“
    
  • Edit this page redirecting to 404

    Edit this page redirecting to 404

  • Add links to Design Gurus' courses?

    Add links to Design Gurus' courses?

    Instead of paying a subscription for "Grokking the System Design Interview by Educative", people can also pay for lifetime access for the same course from Design Gurus (along with others). This might be an option people want to consider when paying for a course.

  • Resources for folks on the other side of the table?

    Resources for folks on the other side of the table?

    This is an awesome resource for people looking to polish their skills for when they go into interviews.

    Are there any plans to add some resources for the interviewers? IE, the brand new tech lead who needs to hire a junior but has no idea what kinds of questions to ask, or the manager who doesn't know a ton but needs to find just the right dev for their open position.

  • In the graph section under corner cases, handbook refers to

    In the graph section under corner cases, handbook refers to "disjoint graphs" but I think it means "disconnected graphs"

    https://www.techinterviewhandbook.org/algorithms/graph/#corner-cases

    Most of the review materials I've looked at refer to disconnected graphs, examples: https://www.geeksforgeeks.org/bfs-disconnected-graph/ https://algo.monster/problems/graph_intro (paid content)

    Googling, disjoint typically refers to edges/paths, but not graphs.

  • [RFC] Community driven interview question bank

    [RFC] Community driven interview question bank

    Hello everyone! We are a group of Singaporean students looking to contribute to the Technical Interview Handbook platform by adding an interview question bank to provide REAL interview questions used by tech companies.

    The question bank is an extension of the TIH platform and the questions will be contributed by the users themselves after their interviews. We hope to build a sizable pool of questions across genres such as coding, system design, and behavioural questions.

    The question bank aims to give candidates a platform to prepare for their technical interviews with real questions for specific companies, locations and roles. This provides a more tailored search experience from the standardized list of top interview questions on sites such as Leetcode/Hackerrank.

    Our main features for the question bank will be mentioned below. Feel free to give us any input on the existing features or propose new features!

    • Landing page
      • Simple prompt for first time users to start searching for questions by type, company, and location
      • Showcases a carousel of top viewed questions currently on the site

    Screenshot 2022-10-09 at 9 27 17 PM

    • Home page
      • Left side bar
        • Will contain extensive filtering options such as
          • Company
          • Location
          • Question Type (Coding, Behavorial etc)
          • Role / Seniority
          • Question Age
          • More as we get more inputs
      • Question list
        • Shows each individual question along with their key descriptions such as Upvotes, Answers, number of people who has gotten this question, question type, most commonly asked location and job role
        • Posts can be further sorted by Upvotes, Recent, Number of occurrences, Hot topics
      • List view for easier viewing

    Screenshot 2022-10-09 at 9 27 34 PM

    • Contribute a question
      • Contribution text field will expand once clicked
        • Users can key in the questions which they have been asked in their interview
        • Compulsory fields include Company, Question Type, Date of interview (by month), and Location of company
        • They will also be prompted with other posts which might be similar or repeats of their current draft. If their questions have been posted already, they can instead indicate so instead of creating a duplicate post
        • Users have to verify that their question is new before posting

    Screenshot 2022-10-09 at 9 28 11 PM

    • Question page
      • Users can provide answers to questions
      • Users can comment on question or answers
      • Questions and answers can be up and downvoted
      • Users can mark questions as seen to indicate that they have also received the same question during their interview for that role. After which they would be prompted with an optional survey to provide additional info like Date of interview (by month), Location of company, and role they interviewed for
      • Users can check statistics collected
      • Answers can be sorted by Upvotes and Recent
      • Suggested question panel on the right column

    Screenshot 2022-10-09 at 9 27 53 PM

  • [RFC] Technical Handbook Offers Repo

    [RFC] Technical Handbook Offers Repo

    Hi all ๐Ÿ˜„ We are a group of 4 Singaporean students working on a tech offers portal for the Tech Interview Handbook Platform project.

    The portal will be an extension of the Tech Interview Handbook (TIH). It will allow job hunters in the tech industry (including SWEs, UI/UX designers, Project Managers, etc) to submit job offer(s), along with some background information. As such, the submitted offer(s) will not simply be interpreted in isolation, but instead will have some accompanying context that gives insight on the offer(s), which is something that no other platforms have done before.

    Our proposed features will be shown below, so do feel free to share any feedback or comments on how to improve this portal.

    For our tech offers portal, these are our 3 main features:

    • Homepage: Displays an easy-to-use, sharable table of detailed offer information.
      • Emphasis placed on:
        • Locality
        • Recency (can be filtered)
        • Background / Negotiation info included in the offer info
        • Role specificity (can be filtered by FE, BE, Full Stack)
    Screenshot 2022-10-03 at 10 43 59 AM
    • Offer Submission + Active Recommendations from System: Users are able to submit their offers and receive an active evaluation by our "Offer evaluation engine" which provides them with recommendations + related offers.
      • Offer Submission: Allow submission of multiple offers in 1 go
        • TC Breakdown - Salary, Bonus, Stocks
        • Background information to give context behind the offers
    Screenshot 2022-10-03 at 10 44 47 AM Screenshot 2022-10-03 at 10 45 19 AM Screenshot 2022-10-03 at 10 45 46 AM
    • Offer Profile: Upon submission of offers, users will receive and anonymised editable Offer Profile which they can share to the community with questions / polls. The community will be able to access these publicised Offer Profiles from a dedicated page not shown below.
      • Shareable: Users can easily share this profile on other forums / channels for others to comment.
      • Polls / Discussion: If users share the profile to the community, it allows others to answer any questions they have regarding the offers, which can help them with, say deciding between offers for example.
    Screenshot 2022-10-03 at 10 46 21 AM

    Additionally, we have a potential 4th feature that we are possibly adding as well, which is a company offers page.

    • Company Offers Page: Displays the distribution of offer packages from the company, including key percentiles.
      • The offers will be detailed, similar to the homepage, but specific to the company.
      • Can filter information by recency, tech roles, YOE, etc
    Screenshot 2022-10-03 at 10 46 47 AM
  • [RFC] Community-powered Resume Review Portal

    [RFC] Community-powered Resume Review Portal

    We are a group of 4 students from Singapore that is thinking of contributing a resume review portal to the handbook.

    The portal will be an extension of Tech Interview Handbook (TIH). It will allow software engineers to get feedback on their resumes from the community. Users will upload their resume for review and voluntary reviewers can leave their comments on different sections of the resume.

    Below are our proposed features, feel free to share any feedback you feel will improve the benefit of using this portal for both reviewers and uploaders!

    For the resume review portal, we have 3 key functionalities:

    • Submission: For users to submit their resumes to be reviewed by others.
      • Submission Form
        • Title
        • Role
        • Experience Level
        • Location
        • Description/Additional Info

    Screenshot 2022-09-29 at 7 29 37 PM

    Screenshot 2022-09-29 at 7 30 02 PM

    • Review: For users to review submitted resumes and add comments.
      • Page to view a resume and see existing reviews / comments
      • Pre-defined sections for users to review
      • Proposed sections: Contact Info/Education/Skills/Experience/Projects/General comments

    Screenshot 2022-09-29 at 7 30 38 PM

    • Browse: A user can browse submitted and reviewed resumes.
      • Sorting of resumes (by recency, number of comments etc.)
      • Filters based on role, experience and location
      • Search based on keywords in Title/Description

    Screenshot 2022-09-29 at 7 31 01 PM Screenshot 2022-09-29 at 7 31 21 PM

  • Update behavioral-interview-questions.md

    Update behavioral-interview-questions.md

    Airbnb is a horrible company with shady business practices that are unfavorable to the common traveller. This pull request is to tweak this otherwise fantastic document to put fewer eyes on the lodging broker. Anyone with a grain of ethics and integrity wouldn't want to work there, anyway, as it would be huge conflict of interest.

Cracking the Coding Interview, 6th Ed

Cracking the Coding Interview, 6th Ed. In order to stay sharp, I try to solve a few of these every week. The repository is organized by chapter. Each

Jan 26, 2022
The GopherCon 2021 "Production AI with Go" workshop materials.

GopherCon 2021 "Production AI with Go" Workshop Machine learning and artificial intelligence (ML/AI) applications are increasingly colliding with the

Dec 23, 2022
Collection of awesome interview references.
Collection of awesome interview references.

Awesome Interview Collection of awesome interview reference

Dec 31, 2022
A programming job interview question problem

Unscramble a scrambled URL Problem statement The problem statement follows. I copied it literally because there's no good way to summarize and retain

Nov 9, 2021
Form3tech interview

Form3 Take Home Exercise Engineers at Form3 build highly available distributed systems in a microservices environment. Our take home test is designed

Jan 13, 2022
This is a test / interview implementation, written in go
This is a test / interview implementation, written in go

Factorizer This is a test / interview implementation, written in go. Author's kinda first go project. Just move on. Szรกmok Faktorializรกlรกsa A faktoriz

Feb 9, 2022
Live coding a basic Go compiler with LLVM in 20 minutes

go2ll-talk The code presented at Sheffield Go, 7th March. Slides link To run, just say make. To take a look at the output of the program, run go run .

Jul 2, 2022
Go programming language secure coding practices guide

You can download this book in the following formats: PDF, Mobi and ePub. Introduction Go Language - Web Application Secure Coding Practices is a guide

Jan 9, 2023
high performance coding with golang๏ผˆGo ่ฏญ่จ€้ซ˜ๆ€ง่ƒฝ็ผ–็จ‹๏ผŒGo ่ฏญ่จ€้™ท้˜ฑ๏ผŒGotchas๏ผŒTraps๏ผ‰
high performance coding with golang๏ผˆGo ่ฏญ่จ€้ซ˜ๆ€ง่ƒฝ็ผ–็จ‹๏ผŒGo ่ฏญ่จ€้™ท้˜ฑ๏ผŒGotchas๏ผŒTraps๏ผ‰

Go ่ฏญ่จ€้ซ˜ๆ€ง่ƒฝ็ผ–็จ‹ ่ฎข้˜… ๆœ€ๆ–ฐๅŠจๆ€ๅฏไปฅๅ…ณๆณจ๏ผš็ŸฅไนŽ Go่ฏญ่จ€ ๆˆ–ๅพฎๅš ๆžๅฎขๅ…”ๅ…” ่ฎข้˜…ๆ–นๅผ๏ผšwatch geektutu/blog ๏ผŒๆฏ็ฏ‡ๆ–‡็ซ ้ƒฝ่ƒฝๆ”ถๅˆฐ้‚ฎไปถ้€š็Ÿฅ๏ผŒๆˆ–้€š่ฟ‡ RSS ่ฎข้˜…ใ€‚

Dec 28, 2022
Coding along the book
Coding along the book

Learn Go with Tests Art by Denise Formats Gitbook EPUB or PDF Translations ไธญๆ–‡ Portuguรชs ๆ—ฅๆœฌ่ชž ํ•œ๊ตญ์–ด Tรผrkรงe Support me I am proud to offer this resource fo

Oct 30, 2021
An open source, online coding platform that offers code practice and tutoring in 50 different programming languages
An open source, online coding platform that offers code practice and tutoring in 50 different programming languages

Exercism Golang En este repositorio voy a subir los ejercicios de la plataforma

Jan 7, 2022
Collection of coding examples from "Go In Practice"

Go In Practice Go In Practice 1. Noteworthy aspects of Go 2. A solid foundation 1. Noteworthy aspects of Go Multiple returns Named return values Read

Jan 3, 2022
This tutorial walks you through using the Cloud Functions minimal instances feature to mitigate cold starts.
This tutorial walks you through using the Cloud Functions minimal instances feature to mitigate cold starts.

Tutorial This tutorial walks you through using the Cloud Functions minimal instances feature to mitigate cold starts. Letโ€™s take a deeper look at min

Jun 1, 2022
This is an example of a keep-it-simple directory layout for Go projects that was created using DDD principles, please copy and share if you like it.

DDD Go Template This project was created to illustrate a great architectural structure I developed together with @fabiorodrigues in the period I was w

Dec 5, 2022
I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute.
I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute.

Go-language I will be uploading some basic programming in Golang so if you want to contribute please Fork this repo and contriute. This repo is for pr

Jan 21, 2022
TinySQL is a course designed to teach you how to implement a distributed relational database in Go

TinySQL TinySQL is a course designed to teach you how to implement a distributed relational database in Go. TinySQL is also the name of the simplifed

Nov 7, 2021
About An instrumented microservice in Go - it'll give you some Honeycomb data to play with.

Intro to Observability: OpenTelemetry in Go This application is here for you to try out tracing. It consists of a microservice that calls itself, so y

Dec 5, 2022
An automated tutorial to teach you about Go!

Golings Welcome to Golings, an automated Go tutorial program (inspired by Rustlings and Haskelling). This program has some small exercises where you c

Dec 31, 2021
Assert your Go code is inlined and bounds-check eliminated

gcassert gcassert is a program for making assertions about compiler decisions in Golang programs, via inline comment directives like //gcassert:inline

Oct 27, 2022