seo: add social image
@ -15,6 +15,10 @@ sidebar_label: Array
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-array.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Arrays hold values of the same type at contiguous memory locations. In an array, we're usually concerned about two things - the position/index of an element and the element itself. Different programming languages implement arrays under the hood differently and can affect the time complexity of operations you make to the array. In some languages like Python, JavaScript, Ruby, PHP, the array (or list in Python) size is dynamic and you do not need to have a size defined beforehand when creating the array. As a result, people usually have an easier time using these languages for interviews.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Binary
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-binary.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Knowledge of binary number system and bit manipulation is less important in coding interviews as most Software Engineers do not have to deal with bits, which is more commonly used when dealing with lower level systems and programming languages. They are still asked sometimes, so you should at least still know how to convert a number from decimal form into binary form, and vice versa, in your chosen programming language.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Dynamic programming
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-dynamic-programming.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Dynamic Programming (DP) is usually used to solve optimization problems. The only way to get better at DP is to practice. It takes some amount of practice to be able to recognize that a problem can be solved by DP.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Geometry
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-geometry.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Geometry is a branch of mathematics that is concerned with properties of space that are related with distance, shape, size, and relative position of figures. Advanced geometry (e.g. 3D geometry) is not taught in most Computer Science courses, so you can expect that you will only be asked on 2D geometry.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Graph
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-graph.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A graph is a structure containing a set of objects (nodes or vertices) where there can be edges between these nodes/vertices. Edges can be directed or undirected and can optionally have values (a weighted graph). Trees are undirected graphs in which any two vertices are connected by exactly one edge and there can be no cycles in the graph.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Hash table
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-hash-table.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A hash table (commonly referred to as hash map) a data structure that implements an associative array abstract data type, a structure that can map keys to values. A hash table uses a hash function on an element to compute an index, also called a hash code, into an array of buckets or slots, from which the desired value can be found. During lookup, the key is hashed and the resulting hash indicates where the corresponding value is stored.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Heap
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-heap.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A heap is a specialized tree-based data structure which is a complete tree that satisfies the heap property.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Interval
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-interval.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Interval questions are a subset of [array](./array.md) questions where you are given an array of two-element arrays (an interval) and the two values represent a start and an end value. Interval questions are considered part of the array family but they involve some common techniques hence they are extracted out to this special section of their own.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Linked list
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-linked-list.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Like arrays, a linked list is used to represent sequential data. It is a linear collection of data elements whose order is not given by their physical placement in memory, as opposed to arrays, where data is stored in sequential blocks of memory. Instead, each element contains an address of the next element. It is a data structure consisting of a collection of nodes which together represent a sequence.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Math
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-math.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Math is a foundational aspect of Computer Science and every programmer and computer scientist needs to have basic mathematical knowledge. Thankfully, for the purpose of coding interviews, there usually won't be that much math involved, but some basic math techniques is helpful to know as you may be asked to implement mathematical operations.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Matrix
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-matrix.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A matrix is a 2-dimensional array. Questions involving matrices are usually related to [dynamic programming](./dynamic-programming.md) or [graph](./graph.md) traversal.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Queue
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-queue.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A queue is a linear collection of elements that are maintained in a sequence and can be modified by the addition of elements at one end of the sequence (**enqueue** operation) and the removal of elements from the other end (**dequeue** operation). Usually, the end of the sequence at which elements are added is called the back, tail, or rear of the queue, and the end at which elements are removed is called the head or front of the queue. As an abstract data type, queues can be implemented using arrays or singly linked lists.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Recursion
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-recursion.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Recursion is a method of solving a computational problem where the solution depends on solutions to smaller instances of the same problem.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Sorting and searching
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-sorting-searching.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Sorting is the act of rearranging elements in a sequence in order, either in numerical or lexicographical order, and either ascending or descending.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Stack
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-stack.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A a stack is an abstract data type that supports the operations **push** (insert a new element on the top of the stack) and **pop** (remove and return the most recently added element, the element at the top of the stack). As an abstract data type, stacks can be implemented using arrays or singly linked lists.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: String
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-string.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A string is a sequence of characters. Many tips that apply to arrays also apply to strings. You're recommended to read the page on [Arrays](./array.md) before reading this page.
|
||||
|
@ -6,6 +6,10 @@ keywords: [coding interview algorithms, coding interview data structures]
|
||||
sidebar_label: Introduction
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms-study-cheatsheet.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from '../\_components/InDocAd';
|
||||
|
||||
## What is this
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Tree
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-tree.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
A tree is a widely used abstract data type that represents a hierarchical structure with a set of connected nodes. Each node in the tree can be connected to many children, but must be connected to exactly one parent, except for the root node, which has no parent.
|
||||
|
@ -15,6 +15,10 @@ sidebar_label: Trie
|
||||
toc_max_heading_level: 2
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/algorithms/algorithms/algorithms-trie.png" />
|
||||
</head>
|
||||
|
||||
## Introduction
|
||||
|
||||
Tries are special trees (prefix trees) that make searching and storing strings more efficient. Tries have many practical applications, such as conducting searches and providing autocomplete. It is helpful to know these common applications so that you can easily identify when a problem can be efficiently solved using a trie.
|
||||
|
@ -15,6 +15,10 @@ keywords:
|
||||
sidebar_label: Common behavioral questions to practice
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/behavioral-interview-questions.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
In the software engineer interview process, behavioral interviews may seem so much more varied and unstructured as compared to technical interviews. However, in most cases, the interviewer is actually just trying to get to know you better and there's always a set of common questions that need to be asked to achieve that.
|
||||
|
@ -16,6 +16,10 @@ keywords:
|
||||
sidebar_label: Step-by-step how to prepare
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/behavioral-interview.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
## What are behavioral interviews
|
||||
|
@ -8,6 +8,7 @@ displayed_sidebar: docs
|
||||
pagination_next: coding-interview-cheatsheet
|
||||
---
|
||||
|
||||
|
||||
import AlgorithmCourses from './\_courses/AlgorithmCourses.md'
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
@ -15,6 +15,10 @@ keywords:
|
||||
sidebar_label: Best practices before, during, and after
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/coding-interview-cheatsheet.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
As coding interviews mature over the years, there are now firmer expectations on how candidates should behave during a coding interview. Some of these practices also help you to exhibit "hire" signals to the interviewer by displaying your ability to communicate well and deal with roadblocks.
|
||||
|
@ -18,6 +18,10 @@ keywords:
|
||||
sidebar_label: Step-by-step how to prepare
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/coding-interview-prep.png" />
|
||||
</head>
|
||||
|
||||
_The ultimate guide on how to efficiently prepare for your software engineering technical interview - coding test round._
|
||||
|
||||
If you have decided to embark on the arduous process of preparing for your coding interviews and you don't know how to maximize your time, this is the only guide you need to go from zero to hero on your coding test.
|
||||
|
@ -13,6 +13,10 @@ keywords:
|
||||
sidebar_label: Coding interview rubrics
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/coding-interview-rubrics.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
Ever wondered how coding interviews are evaluated at top tech companies like Google, Amazon, Apple and Netflix?
|
||||
|
@ -13,6 +13,10 @@ keywords:
|
||||
sidebar_label: Study and practice plan
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/coding-interview-study-plan.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
import QuestionList from './\_components/QuestionList';
|
||||
|
||||
|
@ -15,6 +15,10 @@ keywords:
|
||||
sidebar_label: Techniques to solve questions
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/coding-interview-techniques.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
The biggest fear most candidates will have during a coding interview is: what if I get stuck on the question and don't know how to do it? Fortunately, there are structured ways to approach coding interview questions that will increase your chances of solving them. From how to find a solution or approach, to optimizing time and space complexity, here are some of the top tips and best practices that will help you solve coding interview questions.
|
||||
|
@ -12,6 +12,10 @@ keywords:
|
||||
sidebar_label: Preparing final questions to ask
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/final-questions.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
Something you can always count on to happen at the end of your Software Engineer interview - both technical and non-technical rounds - is for the interviewer to ask you if you "have any final questions?".
|
||||
|
@ -16,6 +16,10 @@ keywords:
|
||||
sidebar_label: Mock coding interviews
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/mock-interviews.png" />
|
||||
</head>
|
||||
|
||||
Interviewing is a skill that you can get better at. The steps mentioned above can be rehearsed over and over again until you have fully internalized them and following those steps become second nature to you. A good way to practice is to find a friend to partner with and the both of you can take turns to interview each other.
|
||||
|
||||
## [interviewing.io](https://iio.sh/r/DMCa)
|
||||
|
@ -16,6 +16,10 @@ keywords:
|
||||
]
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/negotiation.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
Key points extracted from "Ten Rules for Negotiating a Job Offer" [Part 1](http://haseebq.com/my-ten-rules-for-negotiating-a-job-offer/) and [Part 2](https://haseebq.com/how-not-to-bomb-your-offer-negotiation/) by Haseeb Qureshi.
|
||||
|
@ -19,6 +19,7 @@ sidebar_label: Complete salary negotiation guide
|
||||
<head>
|
||||
<title>What you need to know about negotiation | Tech Interview Handbook</title>
|
||||
<meta property="og:title" content="What you need to know about negotiation | Tech Interview Handbook"/>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/negotiation.png" />
|
||||
</head>
|
||||
|
||||
## Always negotiate
|
||||
|
@ -14,6 +14,10 @@ keywords:
|
||||
sidebar_label: Picking a programming language
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/programming-languages-for-coding-interviews.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
Does the programming language you use for coding interviews matter? The answer is yes.
|
||||
|
@ -15,6 +15,10 @@ keywords:
|
||||
sidebar_label: Writing your software engineer resume
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/resume.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
Not sure why you're still not getting shortlisted at some or all of the top tech companies? Your software engineer resume could be the issue.
|
||||
|
@ -13,6 +13,10 @@ keywords:
|
||||
sidebar_label: Preparing a self introduction
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/self-introduction.png" />
|
||||
</head>
|
||||
|
||||
import InDocAd from './\_components/InDocAd';
|
||||
|
||||
"Tell me about yourself" or "give me a quick introduction of your profile" is almost always the first question encountered in your software engineer interviews. This guide teaches you how to maximize this chance to impress the interviewer by crafting the perfect self introduction.
|
||||
|
@ -16,6 +16,10 @@ keywords:
|
||||
sidebar_label: 'SWE interviews: What are they and how to prepare'
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/software-engineering-interview-guide.png" />
|
||||
</head>
|
||||
|
||||
Nobody has time to grind hundreds of LeetCode questions, and the good news is that you don't need to do that many to actually get the job at FAANG!
|
||||
|
||||
I was frustrated at my job at Grab, a ridesharing company in South-east Asia and wanted to break into FAANG but I wasn't sure how to. After a few months of research, studying and practicing, I interviewed at 11 companies and managed to get 9 offers from top tech companies in the Bay Area - Facebook, Google, Airbnb, Palantir, Dropbox, Lyft, and some startups. It was a tedious process which I don't ever want to go through again. **I went through that process but with this guide, you don't have to.**
|
||||
|
@ -11,6 +11,10 @@ keywords:
|
||||
sidebar_label: System design preparation guide
|
||||
---
|
||||
|
||||
<head>
|
||||
<meta property="og:image" content="https://www.techinterviewhandbook.org/social/system-design.png" />
|
||||
</head>
|
||||
|
||||
The objective of system design interviews is to evaluate a candidate's skill at designing real-world software systems involving multiple components. System design questions are typically given to more senior candidates (with a few years of experience). Interns aren't typically given system design questions as it is hard to expect interns to have sufficient and relevant industry experience to answer this type of questions well.
|
||||
|
||||
Some common questions include:
|
||||
|
BIN
website/static/social/algorithms/algorithms-array.png
Normal file
After Width: | Height: | Size: 186 KiB |
BIN
website/static/social/algorithms/algorithms-binary.png
Normal file
After Width: | Height: | Size: 233 KiB |
After Width: | Height: | Size: 210 KiB |
BIN
website/static/social/algorithms/algorithms-geometry.png
Normal file
After Width: | Height: | Size: 204 KiB |
BIN
website/static/social/algorithms/algorithms-graph.png
Normal file
After Width: | Height: | Size: 258 KiB |
BIN
website/static/social/algorithms/algorithms-hash-table.png
Normal file
After Width: | Height: | Size: 210 KiB |
BIN
website/static/social/algorithms/algorithms-heap.png
Normal file
After Width: | Height: | Size: 230 KiB |
BIN
website/static/social/algorithms/algorithms-interval.png
Normal file
After Width: | Height: | Size: 257 KiB |
BIN
website/static/social/algorithms/algorithms-linked-list.png
Normal file
After Width: | Height: | Size: 294 KiB |
BIN
website/static/social/algorithms/algorithms-math.png
Normal file
After Width: | Height: | Size: 218 KiB |
BIN
website/static/social/algorithms/algorithms-matrix.png
Normal file
After Width: | Height: | Size: 254 KiB |
BIN
website/static/social/algorithms/algorithms-queue.png
Normal file
After Width: | Height: | Size: 224 KiB |
BIN
website/static/social/algorithms/algorithms-recursion.png
Normal file
After Width: | Height: | Size: 211 KiB |
After Width: | Height: | Size: 228 KiB |
BIN
website/static/social/algorithms/algorithms-stack.png
Normal file
After Width: | Height: | Size: 237 KiB |
BIN
website/static/social/algorithms/algorithms-string.png
Normal file
After Width: | Height: | Size: 267 KiB |
BIN
website/static/social/algorithms/algorithms-study-cheatsheet.png
Normal file
After Width: | Height: | Size: 224 KiB |
BIN
website/static/social/algorithms/algorithms-tree.png
Normal file
After Width: | Height: | Size: 216 KiB |
BIN
website/static/social/algorithms/algorithms-trie.png
Normal file
After Width: | Height: | Size: 232 KiB |
BIN
website/static/social/behavioral-interview-questions.png
Normal file
After Width: | Height: | Size: 236 KiB |
BIN
website/static/social/behavioral-interview.png
Normal file
After Width: | Height: | Size: 228 KiB |
BIN
website/static/social/coding-interview-cheatsheet.png
Normal file
After Width: | Height: | Size: 179 KiB |
BIN
website/static/social/coding-interview-prep.png
Normal file
After Width: | Height: | Size: 195 KiB |
BIN
website/static/social/coding-interview-rubrics.png
Normal file
After Width: | Height: | Size: 255 KiB |
BIN
website/static/social/coding-interview-study-plan.png
Normal file
After Width: | Height: | Size: 225 KiB |
BIN
website/static/social/coding-interview-techniques.png
Normal file
After Width: | Height: | Size: 223 KiB |
BIN
website/static/social/final-questions.png
Normal file
After Width: | Height: | Size: 196 KiB |
BIN
website/static/social/mock-interviews.png
Normal file
After Width: | Height: | Size: 217 KiB |
BIN
website/static/social/negotiation.png
Normal file
After Width: | Height: | Size: 234 KiB |
After Width: | Height: | Size: 218 KiB |
BIN
website/static/social/resume.png
Normal file
After Width: | Height: | Size: 230 KiB |
BIN
website/static/social/self-introduction.png
Normal file
After Width: | Height: | Size: 241 KiB |
BIN
website/static/social/software-engineering-interview-guide.png
Normal file
After Width: | Height: | Size: 225 KiB |
BIN
website/static/social/system-design.png
Normal file
After Width: | Height: | Size: 202 KiB |