Update prepare_for_interview

This commit is contained in:
abregman 2019-12-29 00:28:46 +02:00
parent 763d7bc8de
commit 6737aa22aa
2 changed files with 26 additions and 7 deletions

View File

@ -20,9 +20,9 @@ Also, I can rename the project name to better represent its content but "coding-
### Should I be familiar with all the tools/platforms/... listed in this repository?
NO NO NO! :)<br>
I won't give you the crap of "DevOps is a culture, not a role" kind of stuff but one thing is for sure, DevOps is not about being familiar with all the existing tools.
"DevOps is a culture, not a role" is BS. Same goes for "DevOps is not about tools". And yet, one thing is for sure, DevOps is not about being familiar with all the existing tools.
With that being said, there are some concepts, tools, platforms, ... that are quite common in jobs requirements. Take Linux for example. While Linux is not a requirement of every DevOps position out there, it's still quite a desired skill and probably appear as a requirement in more than 80% of the DevOps positions if I had to guess. So it will be wise to be familiar with Linux as well as some other concepts/tool/projects...
With that being said, there are some concepts, tools, platforms, ... that are quite common in jobs requirements. Take Linux for example. While Linux is not a requirement of every DevOps position out there, it's still quite a desired skill and probably appear as a requirement in more than 90% of the DevOps positions if I had to guess. So it will be wise to be familiar with Linux as well as some other concepts/tool/projects...
### How should I prepare for my DevOps interview?
@ -46,11 +46,11 @@ Because we need more contributors ;)
Well, from everywhere - past experience, colleagues, contributors, ... But please note we do not allow copying interview questions from interview questions sites to here. There are people who worked hard on adding those to their sites and we respect that.
### What are top DevOps skills required for being a DevOps Engineer?
### What are the top DevOps skills required for being a DevOps Engineer?
It's a hard question and the reason is that if you'll ask 20 different people, you'll probably get at least 10 different answers but here is what we believe is common today:
* OS - DevOps require you good understanding of operating system concepts. The level required is mainly depends on the company.
* OS - DevOps require you good understanding of operating system concepts. The level required is mainly depends on the company although in my opinion it should be the same level. You should understand how the operating system works, how to troubleshoot and debug issues, etc.
* Coding is part of DevOps. The level again depends on the company. Some will require you to know basic level of scripting while others deep understanding of common algorithms, data structure, design patterns etc.
* Cloud and Containers - while not 100% must in all companies/positions, this skill is on the rise every year and many (if not most) of the positions/companies require this skill. This specifically means: AWS/Azure/GCP, Docker, Kubernetes, ...
@ -68,12 +68,12 @@ You can but:
### If there are already many interview questions sites why creating this repository?
Good question. When a friend asked me to help him with learning for an interview, I was curious what the Internet has to offer as an help for people like my friend who want to prepare for DevOps interviews and to be honest, I was pretty shocked to find out questions like the following:
Good question. When a friend asked me to help him with learning for an interview, I was curious what the Internet has to offer as an help for people, like my friend, who want to prepare for their DevOps interviews and to be honest, I was pretty shocked to find out questions like the following:
* How to install Git/Jenkins/...?
* How do you open the terminal in Linux?
These in my opinion are questions no one should ever ask in an interview and so, I decided to start my own interview questions project to help others (and also myself) to test their knowledge.
These, in my opinion, are questions no one should ever ask in an interview and so, I decided to start my own interview questions project to help others (and yes, also myself) to test their knowledge.
### Can I add questions and/or answers to this project?
@ -82,3 +82,17 @@ I'll simply imagine you didn't ask that on an open source project... :)
### Why can't I add installation interview questions?
Personally, I don't think installation questions are interview questions. Yes, I know many sites and sources advertise them as such but personally I think we should have the responsibility to not encourage or even create a phenomenon where interviewers will think it's normal or has any benefit to ask such questions. If you think there is value in this, please create an issue and I'll be happy to discuss this with you.
### Where can I practice coding?
Personally, I really like the following sites
* [HackerRank](https://www.hackerrank.com)
* [LeetCode](https://leetcode.com)
### How to learn more about Linux?
I gathered a list of resource [here](http://devopsbit.com/resources/linux)
For beginners, I recommend [Linux Journey](https://linuxjourney.com)
If you want to deep dive into operating systems internals, I really recommend [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP)

View File

@ -7,7 +7,7 @@ Note: the following is opinionated.
#### Linux
Every DevOps Engineer should have knowledge about operating systems and specifically Linux which is probably in 95% of the DevOps jobs postings out there.
Usually next question is "How extensive my knowledge should be?" - this should be your strongest area. Be familiar with processes, debugging tools, filesystem, networking, ... you got this :)
Usually next question is "How extensive my knowledge should be?" - out of all DevOps skills, I would say this should be your strongest one. Be familiar with processes, debugging tools, filesystem, networking, ... be familiar with the operating system. Understand how it works, how to deal with issues, ... this is where it all starts.
#### Coding
@ -15,6 +15,11 @@ Some DevOps interviews include coding tasks/questions. Be prepared for those by
Also, the following is probably clear to most people but let's still clarify it: when given the chance to choose any language for answering coding tasks/questions, choose the one you have experience with! Some candidates prefer to to choose the language they think the company is using and this is a huge mistake because right answer > wrong answer in any language.
I recommend the following sites for practicing coding:
* [HackerRank](https://www.hackerrank.com)
* [LeetCode](https://leetcode.com)
#### Architecture and Design
This is also an important aspect of DevOps. You should be able to describe how to design different systems, workflows and architectures. Some will also say scale is an important aspect of that.<br>