Add a couple of questions
This commit is contained in:
parent
5b4afd3d6c
commit
1ccb3fea81
117
README.md
117
README.md
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
:information_source: This repository contains interview questions on various DevOps related topics
|
:information_source: This repository contains interview questions on various DevOps related topics
|
||||||
|
|
||||||
:bar_chart: There are currently **133** interview questions
|
:bar_chart: There are currently **151** interview questions
|
||||||
|
|
||||||
:warning: Some answers might be only partial and shouldn't be used as they are in interviews
|
:warning: Some answers might be only partial and shouldn't be used as they are in interviews
|
||||||
|
|
||||||
@ -156,6 +156,18 @@ which follows the mutable infrastructure paradigm.
|
|||||||
* Images - Either VM or container images where your package is included with everything it needs in order to run successfully.
|
* Images - Either VM or container images where your package is included with everything it needs in order to run successfully.
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is caching? How it works? Why is it important?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Explain stateless vs. stateful</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is HTTP and how it works?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
|
||||||
<a name="devops-advanced"></a>
|
<a name="devops-advanced"></a>
|
||||||
#### :star: Advanced
|
#### :star: Advanced
|
||||||
@ -338,11 +350,95 @@ Stop the instance, the type of the instance to match the desired RAM and start t
|
|||||||
|
|
||||||
## Network
|
## Network
|
||||||
|
|
||||||
Network questions can be found [here](https://github.com/bregman-arie/computer-networking/blob/master/interview_questions/README.md)
|
<a name="network-beginner"></a>
|
||||||
|
#### :baby: Beginner
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Explain the OSI model. What layers there are? What each layer reponsible for?</summary><br><b>
|
||||||
|
|
||||||
|
Application: user end (HTTP is here)
|
||||||
|
Presentation: establishes context between application-layer entities (Encryption is here)
|
||||||
|
Session: establishes, manages and terminates the connections
|
||||||
|
Transport: transfers variable-length data sequences from a source to a destination host (TCP & UDP are here)
|
||||||
|
Network: transfers datagrams from one network to another (IP is here)
|
||||||
|
Data link: provides a link between two directly connected nodes (MAC is here)
|
||||||
|
Physical: the electrical and physical spec the data connection (Bits are here)
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What delivery schemes are you familiar with?</summary><br><b>
|
||||||
|
|
||||||
|
Unitcast: One to one communication where there is one sender and one reciever.
|
||||||
|
|
||||||
|
Broadcast: Sending a message to everone in the network. The address ff:ff:ff:ff:ff:ff is used for broadcasting.
|
||||||
|
Two common protocols which use broadcast are ARP and DHCP.
|
||||||
|
|
||||||
|
Multicast: Sending a message to a group of subscribers. It can be one-to-many or many-to-many.
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is CSMA/CD? Is it used in modern ethernet networks?</summary><br><b>
|
||||||
|
|
||||||
|
CSMA/CD stands for Carrier Sense Multiple Access / Collision Detection.
|
||||||
|
Its primarily focus it to manage access to shared medium/bus where only one host can transmit at a given point of time.
|
||||||
|
|
||||||
|
CSMA/CD algorithm:
|
||||||
|
|
||||||
|
1. Before sending a frame, it checks whether another host already transmitting a frame.
|
||||||
|
2. If no one transmitting, it starts transmitting the frame.
|
||||||
|
3. If two hosts transmitted at the same time, we have a collision.
|
||||||
|
4. Both hosts stop sending the frame and they send to everyone a 'jam signal' notifying everyone that a collision occured
|
||||||
|
5. They are waiting for a random time before sending again
|
||||||
|
6. Once each host waited for a raondom time, they try to send the frame again and so the
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Describe the following network devices and the difference between them: router, switch and hub</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is NAT?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is the difference between TCP and UDP?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is ARP? How it works?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is DHCP? How it works?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is SSL tunneling? How it works?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is a socket?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is IPv6? Why should we consider using it if we have IPv4?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is MTU?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is SDN?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What is ICMP?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
## Linux
|
## Linux
|
||||||
|
|
||||||
|
<a name="linux-beginner"></a>
|
||||||
#### :baby: Beginner
|
#### :baby: Beginner
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
@ -419,11 +515,11 @@ I consider this as a good blog post to read more about it: https://shapeshed.com
|
|||||||
<details>
|
<details>
|
||||||
<summary>Explain what would be the result of each command:
|
<summary>Explain what would be the result of each command:
|
||||||
|
|
||||||
<code>echo $0</code>
|
* <code>echo $0</code>
|
||||||
<code>echo $?</code>
|
* <code>echo $?</code>
|
||||||
<code>echo $$</code>
|
* <code>echo $$</code>
|
||||||
<code>echo $@</code>
|
* <code>echo $@</code>
|
||||||
<code>echo $#</code></summary><br><b>
|
* <code>echo $#</code></summary><br><b>
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
@ -514,6 +610,10 @@ For each file (and directory) in Linux there is an inode, a data structure which
|
|||||||
related to the file like its size, owner, permissions, etc.
|
related to the file like its size, owner, permissions, etc.
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>How to list ports which being currently used?</summary><br><b>
|
||||||
|
</b></details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>DNS: What is A record?</summary><br><b>
|
<summary>DNS: What is A record?</summary><br><b>
|
||||||
</b></details>
|
</b></details>
|
||||||
@ -523,7 +623,7 @@ related to the file like its size, owner, permissions, etc.
|
|||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>DNS: </summary><br><b>
|
<summary>DNS: is it using TCP or UDP?</summary><br><b>
|
||||||
</b></details>
|
</b></details>
|
||||||
|
|
||||||
<a name="linux-advanced"></a>
|
<a name="linux-advanced"></a>
|
||||||
@ -1121,3 +1221,4 @@ and considerations.
|
|||||||
|
|
||||||
* [Elasticsearch & Kibana on AWS](scenarios/elk_kibana_aws.md)
|
* [Elasticsearch & Kibana on AWS](scenarios/elk_kibana_aws.md)
|
||||||
* [Ansible, Minikube and Docker](scenarios/ansible_minikube_docker.md)
|
* [Ansible, Minikube and Docker](scenarios/ansible_minikube_docker.md)
|
||||||
|
* [Cloud Slack bot](scenarios/cloud_slack_bot.md)
|
||||||
|
19
scenarios/cloud_slack_bot.md
Normal file
19
scenarios/cloud_slack_bot.md
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
## Cloud Slack Bot
|
||||||
|
|
||||||
|
Create a slack bot to manage cloud instances. You can choose whatever cloud provider you want (e.g. Openstack, AWS, GCP, Azure)
|
||||||
|
You should provide:
|
||||||
|
|
||||||
|
* Instructions on how to use it
|
||||||
|
* Source code of the slack bot
|
||||||
|
* A running slack bot account or a deployment script so we can test it
|
||||||
|
|
||||||
|
The bot should be able to support:
|
||||||
|
|
||||||
|
* Creating new instances
|
||||||
|
* Removing existing instances
|
||||||
|
* Starting an instance
|
||||||
|
* Stopping an instance
|
||||||
|
* Displaying the status of an instance
|
||||||
|
* List all available instances
|
||||||
|
|
||||||
|
The bot should also be able to show help message.
|
Loading…
Reference in New Issue
Block a user