devops-exercises/common-qa.md
2019-12-30 22:51:12 +02:00

6.6 KiB

Q&A

What is the purpose of repository?

To learn, of course :) Or more specifically, any of the following:

  • Test your knowledge
  • Prepare for interviews
  • Simply learning something new :)

Are these real DevOps interview questions?

The answer is no. While the name of the repository indicates it should include only (or mainly) DevOps Interview Questions in reality, this repository includes many questions on many different topics - Linux, Git, Python, ... Only small subset of the questions are actually DevOps questions.

If you wonder why then it quite simple. DevOps is still, after many years, a controversial topic. If you ask different people what is DevOps, you'll get different answers and DevOps interviews are not an exception in this case. Different DevOps interviews will include different questions on various topics. Some of the questions you'll be asked might be included in this repository, some might none. It's even possible you'll be asked none of the questions in this repository but in my opinion it's still decent test of your knowledge.

Also, I can rename the project name to better represent its content but "coding-operations-HR-...-interview-questions" is too long name for a repository :)

Should I be familiar with all the tools/platforms/... listed in this repository?

NO NO NO! :)
"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 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?

Excellent question. This repository alone might not be enough in some cases. We are exploring the answer to this question here If you have any ideas, insights, questions, ... please contribute :)

How do I become a better DevOps Engineer?

That's even a better question than the previous one.
I don't have a definitive answer for this question, but what I feel works for me is to:

  • Read - Read blogs, books, ... anything that can enrich you about DevOps
  • Practice - Some practical DevOps work at work and/or home
  • Share - This is one of the reasons I created this project. Primary goal was to help others but a secondary goal quickly became to learn more. By asking questions, you actually learn better a certain topic. Try it out, take a certain subject and try to come up with questions you would ask someone to test his/her skills.

Why most of the questions don't have answers?

Because we need more contributors ;)

Where the questions and answers are coming from?

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 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 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, ...

I feel like there are some questions that shouldn't be included in this project

Is that a question? :) In any case, if you don't like some/most of the questions or think that some questions should be removed you can open an issue or submit a PR and we can discuss it there. We don't have rules against deleting questions :D

Can I copy the questions from here to my site?

You can but:

  • Not without attribution. Many people worked hard on adding these questions and they deserve a proper credit for their work
  • Not if you plan to make money out of it. Directly or indirectly (e.g. ADS) as this is a free content and we would like it to stay this way :)

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 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 yes, also myself) to test their knowledge.

Can I add questions and/or answers to this project?

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

How to learn more about Linux?

I gathered a list of resource here

For beginners, I recommend Linux Journey If you want to deep dive into operating systems internals, I really recommend Operating Systems: Three Easy Pieces