Add a couple of questions
This commit is contained in:
parent
7c2a922854
commit
8638107e7f
77
README.md
77
README.md
@ -2,7 +2,7 @@
|
||||
|
||||
:information_source: This repository contains questions on various DevOps and SRE related topics
|
||||
|
||||
:bar_chart: There are currently **770** questions
|
||||
:bar_chart: There are currently **781** questions
|
||||
|
||||
:books: To learn more about DevOps check the resources in [DevOpsBit.com](https://devopsbit.com)
|
||||
|
||||
@ -63,6 +63,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="#design"><img src="images/design.png" width="110px;" height="75px;" alt="Design"/><br /><b>Design</b></a></td>
|
||||
<td align="center"><a href="#questions-you-ask"><img src="images/you.png" width="110px;" height="75px;" alt="you"/><br /><b>Questions you ask</b></a></td>
|
||||
<td align="center"><a href="#challenges"><img src="images/challenges.png" width="110px;" height="75px;" alt="Challenges"/><br /><b>Challenges</b></a></td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -1308,7 +1309,7 @@ Each number has different meaning, based on how the application was developed.
|
||||
I consider this as a good blog post to read more about it: https://shapeshed.com/unix-exit-codes
|
||||
</b></details>
|
||||
|
||||
##### Storage, Filesystem
|
||||
##### Storage & Filesystem
|
||||
|
||||
<details>
|
||||
<summary>What's an inode?</summary><br><b>
|
||||
@ -1404,6 +1405,10 @@ True
|
||||
<summary>What is lazy umount?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>What is tmpfs?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Fix the following commands:
|
||||
|
||||
@ -1896,6 +1901,15 @@ This is a good article about the topic: https://ops.tips/blog/how-linux-creates-
|
||||
<summary>You executed a script and while still running, it got accidentally removed. Is it possible to restore the script while it's still running?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
#### Memory
|
||||
|
||||
<details>
|
||||
<summary>What is the difference between MemFree and MemAvailable in /proc/meminfo?</summary><br><b>
|
||||
|
||||
MemFree - The amount of unused physical RAM in your system
|
||||
MemAvailable - The amount of available memory for new workloads (without pushing system to use swap) based on MemFree, Active(file), Inactive(file), and SReclaimable.
|
||||
</b></details>
|
||||
|
||||
## Operating System
|
||||
|
||||
<a name="operating-system-beginner"></a>
|
||||
@ -1961,6 +1975,15 @@ False. It was true in the past but today's operating systems perform lazy loadin
|
||||
<summary>Explain what is Semaphore and what its role in operating systems</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
#### Memory
|
||||
|
||||
<details>
|
||||
<summary>What is cache? What is buffer?</summary><br><b>
|
||||
|
||||
Buffer: Reserved place in RAM which is used to hold data for temporary purposes
|
||||
Cache: Cache is usually used when processes reading and writing to the disk to make the process faster by making similar data used by different programs easily accessible.
|
||||
</b></details>
|
||||
|
||||
## Virtualization
|
||||
|
||||
<a name="virtualization-beginner"></a>
|
||||
@ -2775,6 +2798,10 @@ The immutable data types are:
|
||||
You can usually use the function hash() to check an object mutability. If an object is hashable, it is immutable (although this does not always work as intended as user defined objects might be mutable and hashable).
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Explain set and frozenset types. What would you use them for?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>In Python, functions are first-class objects. What does it mean?</summary><br><b>
|
||||
|
||||
@ -2956,6 +2983,10 @@ Generally, every compiling process have a two steps.
|
||||
<summary>Explain what is GIL</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Explain the @property decorator</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>What is Lambda? How is it used?</summary><br><b>
|
||||
</b></details>
|
||||
@ -3022,6 +3053,20 @@ some_list[:3]
|
||||
```
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>How to sort list be the length of items?</summary><br><b>
|
||||
|
||||
```
|
||||
sorted_li = sorted(li, key=len)
|
||||
```
|
||||
|
||||
Or without creating a new list:
|
||||
|
||||
```
|
||||
li.sort(key=len)
|
||||
```
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Do you know what is the difference between list.sort() and sorted(list)?</summary><br><b>
|
||||
|
||||
@ -4991,6 +5036,10 @@ Authorization is the process of identifying what level of access the service or
|
||||
<summary>What is air-gapped network (or air-gapped environment)? What its advantages and disadvantages?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Explain what is Buffer Overflow</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
##### Containers
|
||||
|
||||
<details>
|
||||
@ -5462,6 +5511,12 @@ TODO: explain what is actually a Cookie
|
||||
<summary>What is faster than RAM?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>What is the C10K problem? Is it relevant today?</summary><br><b>
|
||||
|
||||
https://idiallo.com/blog/c10k-2016
|
||||
</b></details>
|
||||
|
||||
## HR
|
||||
|
||||
Although the following questions are not DevOps related, they are still quite common and part of the DevOps interview process so it's better to prepare for them as well.
|
||||
@ -5569,6 +5624,8 @@ You can use and elaborate on one or all of the following:
|
||||
|
||||
## Questions you CAN ask
|
||||
|
||||
<a name="questions-you-ask"></a>
|
||||
|
||||
A list of questions you as a candidate can ask the interviewer during or after the interview.
|
||||
These are only a suggestion, use them carefully. Not every interviewer will be able to answer these (or happy to) which should be perhaps a red flag warning for your regarding working in such place but that's really up to you.
|
||||
|
||||
@ -5632,6 +5689,22 @@ Vertical Scaling is the process of adding resources to increase power of existin
|
||||
Horizontal Scaling is the process of adding more resources that will be able handle requests as one unit
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>How would you update each of the services in the following drawing without having app (foo.com) downtime?<br>
|
||||
<img src="images/design/cdn-no-downtime.png" width="200x;" height="300px;"/>
|
||||
</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>Users report that there is huge spike in process time when adding little bit more data to process as an input. What might be the problem?<br>
|
||||
<img src="images/design/input-process-output.png" width="300x;" height="200px;"/>
|
||||
</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
<details>
|
||||
<summary>How would you scale the architecture from the previous question to hundreds of users?</summary><br><b>
|
||||
</b></details>
|
||||
|
||||
## Challenges
|
||||
|
||||
Challenges require you one of the following:
|
||||
|
@ -12,3 +12,4 @@ Linux, Kubernetes and Prometheus logos are trademarks of The Linux Foundation®<
|
||||
Mongo logo is a trademark of <a href="www.mongodb.com">Mongo®</a><br>
|
||||
Distributed logo by <a href="https://www.iconfinder.com/Flatart">Flatart</a><br>
|
||||
Challenge icon by Elizabeth Arostegui in Technology Mix
|
||||
"Question you ask" icon (man raising hand) by [Webalys](https://www.iconfinder.com/webalys)
|
||||
|
BIN
images/design/cdn-no-downtime.png
Normal file
BIN
images/design/cdn-no-downtime.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
BIN
images/design/input-process-output.png
Normal file
BIN
images/design/input-process-output.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
BIN
images/you.png
Normal file
BIN
images/you.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.0 KiB |
Loading…
Reference in New Issue
Block a user