Skip to content

Commit db7ff1d

Browse files
author
abregman
committed
Add Terraform questions
Terraform also deserves some attention.
1 parent 4f73d7e commit db7ff1d

File tree

3 files changed

+259
-67
lines changed

3 files changed

+259
-67
lines changed

faq.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Learning, of course.
99
### My goal is to prepare for a DevOps interviews. Should I use this repository?
1010

1111
Overall, this repository should help you learn some concepts but, don't assume at any point that your interview will include similar questions to those that included in this repository.
12-
Regarding interview, I've added a couple of suggestions [here](prepare_for_interview.md)<br>
12+
Regarding interviews, I've added a couple of suggestions [here](prepare_for_interview.md)<br>
1313

1414
### Will you stop at some point adding questions and exercises?
1515

prepare_for_interview.md

+14-18
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ Note: the following is opinionated.
66

77
#### Linux
88

9-
Every DevOps Engineer should have a deep understanding of at least one operating system and if you have the option to choose then I would say it should definitely be Linux as I believe it's a requirement of at least 90% of the DevOps jobs postings out there.
9+
Every DevOps Engineer should have a deep understanding of at least one operating system and if you have the option to choose then I would say it should definitely be Linux as I believe it's a requirement of at least 90% of the DevOps jobs postings out there. In addition, Linux is almost integral part of any sub-area or domain in DevOps like Cloud, Containers, etc.
1010

11-
Usually, the followup question is "How extensive should my knowledge be?" Out of all the DevOps skills, I would say this, along with coding, should be your strongest skills. Be familiar with OS processes, debugging tools, filesystem, networking, ... know your operating system, understand how it works, how to manage issues, etc.
11+
Usually, the followup question is "How extensive should my knowledge be?" Out of all the DevOps skills, I would say this, along with coding, should be your strongest skills. Be familiar with OS processes, debugging tools, filesystem, networking, ... know your operating system, understand how it works, how to troubleshoot issues, etc.
1212

1313
Not long ago, I've created a list of Linux resources right [here](https://dev.to/abregman/collection-of-linux-resources-3nhk). There are some good sites there that you can use for learning more about Linux.
1414

1515
#### Programming
1616

17-
My personal belief is that any DevOps engineer should know programming, at least to some degree. Having this skill you can automate manual processes, improve some of the open source tools you are using today or build new tools & projects to provide a solution to existing problems. Knowing how to code = a lot of power.
17+
My personal belief is that any DevOps engineer should know programming, at least to some degree. Having this skill you can automate manual processes, improve some of the open source tools you are using today or build new tools & projects to provide a solution to existing problems. Knowing how to code = a lot of power.
1818

1919
When it comes to interviews you'll notice that the level of knowledge very much depends on the company or position you are interviewing for. Some will require you just to be able to write simple scripts while others will deep dive into complex algorithms and data structures.
2020

@@ -39,19 +39,18 @@ Some ideas for you to explore:
3939
* How to design and implement a CI pipeline (or pipelines) for verifying PRs, run multiple different types of tests, package the project and deploy it somewhere
4040
* How to design and implement secured ELK architecture which will get logs from 10,000 apps and will display the data eventually to the user
4141
* Microservices designs are also quite popular these days
42-
43-
I recommend going over the following GitHub projects as they are really deep-diving into System Design:
44-
45-
* https://github.com/donnemartin/system-design-primer
46-
47-
#### Tools
48-
42+
43+
In general, you should be able to describe some designs, projects, architectures, ... you performed.
44+
45+
#### Tooling
46+
4947
Some interviews will focus on specific tools or technologies. Which tools? this is mainly based on a combination of what you mentioned in your C.V & those that are mentioned in the job posting and used in the company. Here are some questions I believe anyone should know to answer regarding the tools he/she is familiar with:
5048

5149
* What the tool does? What it allows us to achieve that we couldn't do without it?
5250
* What its advantages over other tools in the same area, with the same purpose? Why you specifically using it?
53-
* How it works?
54-
* How to use it?
51+
* How it works?
52+
* How to use it?
53+
* Best practices you apply/use when using it
5554

5655
Let's deep dive into practical preparation steps
5756

@@ -65,12 +64,11 @@ This is a great way to prepare for interviews and I recommend to try it out befo
6564

6665
At this point, some people ask: "but what project?" and the answer is: what about GitHub? it has only 9125912851285192 projects...and a free way to set up CI to any of them (also a great way to learn how to collaborate with others :) )
6766

68-
Let's convert another scenario:
69-
67+
Let's convert another scenario:
68+
7069
"Experience with provisioning servers" -> Scenario: provision a server (to make it more interesting: create a web server).
7170

7271
And the last example:
73-
7472
"Experience with scripting" -> Scenario: write a script. Don't waste too much time thinking "what script should I write?". Simply automate something you are doing manually or even implement your own version of common small utils.
7573

7674
### Start your own DevOps project
@@ -102,7 +100,6 @@ Doing so can give you a lot of information on what to expect from an interview a
102100
It may sound trivial but the idea here is simple: be ready to answer any question regarding any line you included in your resume.
103101
Sometimes candidates surprised when they are asked on a skill or line which seems to be not related to the position but the simple truth is: if you mentioned something on your resume, it's only fair to ask you about it.
104102

105-
106103
### Know the company
107104

108105
Be familiar with the company you are interviewing at. Some ideas:
@@ -115,7 +112,7 @@ Be familiar with the company you are interviewing at. Some ideas:
115112

116113
From my experience, this is not done by many candidates but it's one of the best ways to deep dive into topics like operating system, virtualization, scale, distributed systems, etc.
117114

118-
In most cases, you will do fine without reading books but for the AAA interviews (hardest level) you'll want to read some books and overall if you inspire to be better DevOps Engineer, books (also articles, blog posts) is a great way :)
115+
In most cases, you will do fine without reading books but for the AAA interviews (hardest level) you'll want to read some books and overall if you inspire to be better DevOps Engineer, books (also articles, blog posts) is a great way devleop yourself :)
119116

120117
### Consider starting in non-DevOps position
121118

@@ -147,7 +144,6 @@ the company he/she is interviewing at, is the right place for him/her.
147144
* Do I care about work-life balance?
148145
* Do I care about personal growth and how it's practically done?
149146
* Do I care about knowing what are my responsibilities as part of the role?
150-
151147
If you do, you should also play the interviewer role :)
152148

153149
### One Last Thing

0 commit comments

Comments
 (0)