Skip to content

Commit 89a5a70

Browse files
author
abregman
committed
Add a couple of questions
1 parent fa47c8a commit 89a5a70

File tree

2 files changed

+144
-14
lines changed

2 files changed

+144
-14
lines changed

README.md

Lines changed: 144 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
:information_source:  This repo contains questions and exercises on various technical topics, sometimes related to DevOps and SRE :)
44

5-
:bar_chart:  There are currently **1035** questions
5+
:bar_chart:  There are currently **1071** questions
66

7-
:busts_in_silhouette:  [Join](https://www.facebook.com/groups/538897960007080) our [Facebook group](https://www.facebook.com/groups/538897960007080) for additional daily exercises, articles and more resources on DevOps
7+
:busts_in_silhouette:  [Join](https://www.facebook.com/groups/538897960007080) our [Facebook group](https://www.facebook.com/groups/538897960007080) or follow us on [Twitter](https://twitter.com/devopsbit) for additional daily exercises, articles and more resources on DevOps
88

99
:warning:  You can use these for preparing for an interview but most of the questions and exercises don't represent an actual interview. Please read [Q&A](common-qa.md) for more details
1010

@@ -67,6 +67,7 @@
6767
<td align="center"><a href="#regex"><img src="images/regex.png" width="75ph;" height="75px;" alt="RegEx"/><br /><b>Regex</b></a><br /><sub><a href="#regex-beginner">Beginner :baby:</a></sub><br><sub></td>
6868
<td align="center"><a href="#design"><img src="images/design.png" width="110px;" height="75px;" alt="Design"/><br /><b>Design</b></a></td>
6969
<td align="center"><a href="#hardware"><img src="images/hardware.png" width="110px;" height="75px;" alt="Hardware"/><br /><b>Hardware</b></a></td>
70+
<td align="center"><a href="#big-data"><img src="images/big-data.png" width="110px;" height="75px;" alt="Big Data"/><br /><b>Big Data</b></a></td>
7071
<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>
7172
<td align="center"><a href="#exercises"><img src="images/exercises.png" width="110px;" height="75px;" alt="Exercises"/><br /><b>Exercises</b></a></td>
7273
</tr>
@@ -3656,17 +3657,13 @@ You can usually use the function hash() to check an object mutability. If an obj
36563657
</b></details>
36573658

36583659
<details>
3659-
<summary>In Python, functions are first-class objects. What does it mean?</summary><br><b>
3660-
3661-
In general, first class objects in programming languages are objects which can be assigned to variable, used as a return value and can be used as arguments or parameters.<br>
3662-
In python you can treat functions this way. Let's say we have the following function
3660+
<summary>What is the result of `"abc"*3`?</summary><br><b>
36633661

3664-
```
3665-
def my_function():
3666-
return 5
3667-
```
3662+
abcabcabc
3663+
</b></details>
36683664

3669-
You can then assign a function to a variables like this `x = my_function` or you can return functions as return values like this `return my_function`
3665+
<details>
3666+
<summary>What is the result of `bool("")`? What about `bool(" ")`?</summary><br><b>
36703667
</b></details>
36713668

36723669
<details>
@@ -3696,9 +3693,27 @@ char = input("Insert a character: ") # For readablity
36963693
if lower(char[0]) in "aieou": # Takes care of multiple characters and separate cases
36973694
print("It's a vowel!")
36983695
```
3696+
</b></details>
36993697

3698+
<details>
3699+
<summary>How to define a function with Python?</summary><br><b>
37003700
</b></details>
37013701

3702+
<details>
3703+
<summary>In Python, functions are first-class objects. What does it mean?</summary><br><b>
3704+
3705+
In general, first class objects in programming languages are objects which can be assigned to variable, used as a return value and can be used as arguments or parameters.<br>
3706+
In python you can treat functions this way. Let's say we have the following function
3707+
3708+
```
3709+
def my_function():
3710+
return 5
3711+
```
3712+
3713+
You can then assign a function to a variables like this `x = my_function` or you can return functions as return values like this `return my_function`
3714+
</b></details>
3715+
3716+
37023717
<details>
37033718
<summary>Explain inheritance and how to use it in Python</summary><br><b>
37043719

@@ -3984,6 +3999,12 @@ x = [4, 5, 6]
39843999
x.extend([1, 2, 3])
39854000
</b></details>
39864001

4002+
<details>
4003+
<summary>How to remove the first 3 items from a list?</summary><br><b>
4004+
4005+
`my_list[0:3] = []`
4006+
</b></details>
4007+
39874008
<details>
39884009
<summary>How do you get the maximum and minimum values from a list? How to get the last item from a list?</summary><br><b>
39894010

@@ -4182,6 +4203,23 @@ list(zip(nums, letters))
41824203

41834204
#### Dictionaries
41844205

4206+
<details>
4207+
<summary>How to create a dictionary?</summary><br><b>
4208+
4209+
my_dict = dict(x=1, y=2)
4210+
OR
4211+
my_dict = {'x': 1, 'y': 2}
4212+
OR
4213+
my_dict = dict([('x', 1), ('y', 2)])
4214+
</b></details>
4215+
4216+
<details>
4217+
<summary>How to remove an item from a dictionary?</summary><br><b>
4218+
4219+
del my_dict['some_key']
4220+
you can also use `my_dict.pop('some_key')` which returns the value of the key.
4221+
</b></details>
4222+
41854223
<details>
41864224
<summary>How to sort a dictionary by values?</summary><br><b>
41874225

@@ -4477,7 +4515,39 @@ the_list.sort(key=lambda x: x[1])
44774515
* filter()</summary><br><b>
44784516
</b></details>
44794517

4480-
#### Debugging
4518+
#### Python - Slicing
4519+
4520+
For the following slicing exercises, assume you have the following list: `my_list = [8, 2, 1, 10, 5, 4, 3, 9]`
4521+
4522+
<details>
4523+
<summary>What is the result of `my_list[0:4]`?</summary><br><b>
4524+
</b></details>
4525+
4526+
<details>
4527+
<summary>What is the result of `my_list[5:6]`?</summary><br><b>
4528+
</b></details>
4529+
4530+
<details>
4531+
<summary>What is the result of `my_list[5:5]`?</summary><br><b>
4532+
</b></details>
4533+
4534+
<details>
4535+
<summary>What is the result of `my_list[::-1]`?</summary><br><b>
4536+
</b></details>
4537+
4538+
<details>
4539+
<summary>What is the result of `my_list[::3]`?</summary><br><b>
4540+
</b></details>
4541+
4542+
<details>
4543+
<summary>What is the result of `my_list[2:]`?</summary><br><b>
4544+
</b></details>
4545+
4546+
<details>
4547+
<summary>What is the result of `my_list[:3]`?</summary><br><b>
4548+
</b></details>
4549+
4550+
#### Python Debugging
44814551

44824552
<details>
44834553
<summary>How do you debug Python code?</summary><br><b>
@@ -7538,7 +7608,7 @@ https://idiallo.com/blog/c10k-2016
75387608

75397609
## HR
75407610

7541-
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.
7611+
These are not DevOps related questions as you probably noticed, but since they are part of the DevOps interview process I've decided it might be good to keep them
75427612

75437613
<details>
75447614
<summary>Tell us little bit about yourself</summary><br><b>
@@ -7587,7 +7657,7 @@ Some ideas (some of them bad and should not be used):
75877657
</b></details>
75887658

75897659
<details>
7590-
<summary>Give an example of a time you were able to change the view of a team about a particular tool/project/technology</summary><br><b>
7660+
<summary>Give an example of a time when you were able to change the view of a team about a particular tool/project/technology</summary><br><b>
75917661
</b></details>
75927662

75937663
<details>
@@ -7946,6 +8016,66 @@ Raspberry Pi
79468016
<summary>What types of storage are there?</summary><br><b>
79478017
</b></details>
79488018

8019+
## Big Data
8020+
8021+
<details>
8022+
<summary>Explain what is exactly Big Data</summary><br><b>
8023+
8024+
As defined by Doug Laney:
8025+
8026+
* Volume: Extremely large volumes of data
8027+
* Velocity: Real time, batch, streams of data
8028+
* Variety: Various forms of data, structured, semi-structured and unstructured
8029+
* Veracity or Variability: Inconsistent, sometimes inaccurate, varying data
8030+
</b></details>
8031+
8032+
<details>
8033+
<summary>Explain the different formats of data</summary><br><b>
8034+
8035+
* Structured - data that has defined format and length (e.g. numbers, words)
8036+
* Semi-structured - Doesn't conform to a specific format but is self-describing (e.g. XML, SWIFT)
8037+
* Unstructured - does not follow a specific format (e.g. images, test messages)
8038+
</b></details>
8039+
8040+
<details>
8041+
<summary>What is a Data Warehouse?</summary><br><b>
8042+
8043+
[Wikipedia's explanation on Data Warehouse](https://en.wikipedia.org/wiki/Data_warehouse)
8044+
[Amazon's explanation on Data Warehouse](https://aws.amazon.com/data-warehouse)
8045+
</b></details>
8046+
8047+
<details>
8048+
<summary>What is Data Lake?</summary><br><b>
8049+
8050+
[Data Lake - Wikipedia](https://en.wikipedia.org/wiki/Data_lake)
8051+
</b></details>
8052+
8053+
#### Apache Hadoop
8054+
8055+
<details>
8056+
<summary>Explain what is Hadoop</summary><br><b>
8057+
8058+
[Apache Hadoop - Wikipedia](https://en.wikipedia.org/wiki/Apache_Hadoop)
8059+
</b></details>
8060+
8061+
<details>
8062+
<summary>Explain Hadoop YARN</summary><br><b>
8063+
8064+
Responsible for managing the compute resources in clusters and scheduling users' applications
8065+
</b></details>
8066+
8067+
<details>
8068+
<summary>Explain Hadoop MapReduce</summary><br><b>
8069+
8070+
A programming model for large-scale data processing
8071+
</b></details>
8072+
8073+
<details>
8074+
<summary>Explain Hadoop Distributed File Systems (HDFS)</summary><br><b>
8075+
8076+
Distributed file system providing high aggregate bandwidth across the cluster.
8077+
</b></details>
8078+
79498079
## Exercises
79508080

79518081
Exercises are all about:

images/big-data.png

2.03 KB
Loading

0 commit comments

Comments
 (0)