This Blog helps you master Configuration Management, Continuous Integration and Continuous Deployment, Continuous Delivery, Continuous Monitoring using DevOps tools-Linux Admin, Git, Svn, Ant, Maven, Jira, Puppet, Jenkins, and Nagios to automate multiple steps in Agile Process with AWS Cloud Infrastructure.
Tuesday, 30 August 2016
Sunday, 28 August 2016
DevOps Interview Questions
Scripting
1. What is
your favorite scripting language ? Why ?
2. What
are design patterns ?
3. Describe
some scripts you have written/automation you have done/ programs you have
written. Justify your choice of scripting language and design patterns.
4. Can you
port the same script to another language ? On another OS ?
5. How
long would it take you to learn another language ?
CI/CD
1. How
would you trace a binary deployment back to the source code ? How would you
structure such a build ?
2. How do
you manage dependencies ?
3. CI can
only be used to find compile time errors quickly. True/False. Explain.
4. How
would you structure CD for an app that depends on 3 other apps ?
5. How do
you plan capacity for your CI/CD servers ?
6. All
your built binaries should be checked in to your git/svn for quick deployment
and posteriority. True/False. Explain.
OS
1) What is the difference between Linux and Unix ?
2) What's a KVM ?
3) How would you make sure a service starts on an OS of your choice ?
4) Here's a terminal. What flavor of Linux is running ?
5) Write a command to delete all empty file under a directory.
6) Kill all the procs by a particular user without using pkill
7) What is Active Directory ? How do you make a server join a domain ?
Networking
1) What is the difference between Linux and Unix ?
2) What's a KVM ?
3) How would you make sure a service starts on an OS of your choice ?
4) Here's a terminal. What flavor of Linux is running ?
5) Write a command to delete all empty file under a directory.
6) Kill all the procs by a particular user without using pkill
7) What is Active Directory ? How do you make a server join a domain ?
Networking
1. What is
the difference between TCP and UDP ?
2. What is
ICMP ? Why should you block it ?
3. What is
IPv6 ? Why should we care ?
4. In a
corporate environment users from London can ping a particular server but users
from New York cannot, what steps will you take to troubleshoot the problem ?
5. What
steps are needed to change the hostname on a Linux machine ?
6. Where
is the hostname file on a Windows server ?
7. How is
a hostname resolved on a Linux machine ?
8. What's
a SSL tunnel ?
9. What's
a SDN ?
That's all I can think of right now. I will
keep updating these as I think of more questions and topics.
Here are some of them which can be useful
-
1. What are some examples of how you might scale a write/read-heavy
application? Why?
2. Tell me about the worst-run/best-run outage you’ve been a part of. What made it bad/well-run?
3. How would you assess how “deployable” a system is?
How do you know when a deployment is ready? How would you manage that deployment?
4. How would you prepare for a migration from one platform to another?8
5. What is the purpose of a post-mortem meeting?
Do you know how to learn from mistakes? How do you get the most value out of post-mortems?
6. How would you make key aspects of a software system traceable?
7. How do you handle interruptions?
8. How would you deploy software to 5000 systems?
9. What different types of testing need to be carried out on a software system, and what tools would you use to achieve this testing
2. Tell me about the worst-run/best-run outage you’ve been a part of. What made it bad/well-run?
3. How would you assess how “deployable” a system is?
How do you know when a deployment is ready? How would you manage that deployment?
4. How would you prepare for a migration from one platform to another?8
5. What is the purpose of a post-mortem meeting?
Do you know how to learn from mistakes? How do you get the most value out of post-mortems?
6. How would you make key aspects of a software system traceable?
7. How do you handle interruptions?
8. How would you deploy software to 5000 systems?
9. What different types of testing need to be carried out on a software system, and what tools would you use to achieve this testing
DevOps Interview Questions
In this blog post we are going to list potential
questions that will be asked during a DevOps interview. The goal of this post
is to prepare you for your next DevOps interview.
Software Delivery Questions
·
What is Continuous Integration?
·
What is Continuous Delivery and why is it important?
·
What is Continuous Deployment?
·
Explain the importance of A/B testing and how it relates
to software delivery
·
What are your favorite deployment techniques and
why? Examples include: 0 downtime,Canary, or Blue/Green deployments.
·
Explain a time when a software release has gone poorly
Source Control Questions
·
What types of source control programs are you comfortable
with?
·
What are the benefits of using source control?
·
Describe branching strategies you have used
·
Give an example of a good commit message
Testing Questions
·
Talk about different types of automated testing you have
implemented
·
What is the importance of software testing?
·
What testing paradigms do you use, if any?
·
Explain the difference between unit and end to end
testing
·
Have you used any testing frameworks? If so, which ones?
Architecture Questions
·
Explain what a RESTful architecture is
·
How would you scale a slow website?
·
Your application just got millions of users overnight,
what do you do?
·
What are some ways to increase client-side performance?
·
Can you explain the significance of a primary/replica
database architecture?
·
What are some caching strategies you can implement to
increase performance?
·
What are the advantages and disadvantages of implementing
a Microservices architecture?
·
What is the difference between vertical and horizontal
scalability?
General Programming Questions
·
What languages are your most comfortable with?
Database Questions
·
What is the difference between a relational and
non-relational database?
·
When do we optimize the database?
·
Can you give some ways to optimize the performance of a
database?
·
What does A.C.I.D mean?
·
How can you customize the query plan to increase
throughput?
·
Explain how you would do Database Continuous Delivery
Linux Questions
·
How to view running processes in Linux?
·
How do you check server uptime?
·
How do you start/stop services?
·
How do you display the shell’s environment variables?
·
What adding #!/bin/bash at
the top of a script do?
·
What does a & after
a command do?
·
What does piping commands
mean?
·
What distributions have you used on servers?
Security Questions
·
What is the importance of SSL?
·
What is a SQL injection?
·
What is cross-site scripting (XSS)?
·
Why shouldn’t you roll your own crypto?
·
How are passwords stored on databases?
·
What is a Man-in-the-middle attack?
·
How do you safely manage environment variables in a cloud
environment?
Cloud Questions
·
Which cloud providers are you familiar with?
·
What are the benefits of using a cloud provider?
·
Have you managed production systems in the past?
Configuration Management Questions
·
Which Configuration Management tools are you most
comfortable with? Examples include: Chef, Salt, Puppet, or
Ansible.
Container Questions
·
How does Docker improve scalability, distributed
computing, and efficiency vs. traditional cloud virtual machines?
·
List some Docker use cases
Fun Questions
·
What new technology would you like to learn?
·
Have you worked on any side projects?
·
Do you contribute to any open source projects?
DevOps Interview Questions
DevOps Interview Questions
1.
What is DevOps and how does it
evolve?
2.
What DevOps can do for you?
3.
What is the advantage of DevOps over
maven or ant tools?
4.
What are the different DevOps tools
present in the market?
5.
Which DevOps tool will you prefer
among these?
6.
What is chef, puppet and docker?
7.
What is the advantage of chef over
puppet and docker?
8.
What is the advantage of puppet over
chef and docker?
9.
What is the advantage of docker?
10.
How DevOps can help in building
bridges between Development, QA and Operations teams?
11.
Which scripting language is most
significant to learn to become a DevOps engineer?
12.
What all testing required for a
successful DevOps project?
13.
What all risks that gets minimized
with DevOps?
14.
Suppose there is a bug found in a
software that has been already in production and it requires quick fix, will
DevOps be helpful in getting it done faster? If yes, how?
15.
How do you access about how
'deployable' a system is?
16.
What is the difference between RAID 1
and RAID 5?
17.
What are the alternatives of init.d
in linux?
18.
What roles do QA (Quality Assurance)
should play in DevOps according to you?
19.
What long and short term goals a
organisation should keep in mind before opting for DevOps?
20.
What testing is necessary to assure a
new service is production ready or not?
Docker
Interview Questions
What is Docker
Docker is a platform to
run each application isolated and securely. Internally it achieves it by using
kernel containerization feature.
What is the advantage of
Docker over hypervisors?
Docker is light weight and
more efficient in terms of resource uses because it uses the host underlying
kernel rather than creating its own hypervisor.
What is Docker Image
Docker Image is the source
of the docker container. In other words, docker images are used to create
containers. It is possible create multiple isolated containers from a single
image.
What is Docker Container
Docker Container is the
instantiation of docker image. In other words, it is the run time instance of
images. Images are set of files whereas containers is the one who run the image
inside isolated.
Difference between Docker Image and
container?
Docker container is the runtime
instance of docker image.
Docker Image doesnot have a state and
its state never changes as it is just set of files whereas docker container has
its execution state.
DevOps Interview Questions
Originally published by me in another
blog at DevOps
Interview Questions and Answers and reproduced here for larger
audience.
1.
What is DevOps and
how does it evolve?
2.
What DevOps can do
for you?
3.
What is the
advantage of DevOps over maven or ant tools?
4.
What are the
different DevOps tools present in the market?
5.
Which DevOps tool
will you prefer among these?
6.
What is chef,
puppet and docker?
7.
What is the
advantage of chef over puppet and docker?
8.
What is the
advantage of puppet over chef and docker?
9.
What is the
advantage of docker?
10.
How DevOps can
help in building bridges between Development, QA and Operations teams?
11.
Which scripting
language is most significant to learn to become a DevOps engineer?
12.
What all testing
required for a successful DevOps project?
13.
What all risks
that gets minimized with DevOps?
14.
Suppose there is a
bug found in a software that has been already in production and it requires
quick fix, will DevOps be helpful in getting it done faster? If yes, how?
15.
How do you access
about how 'deployable' a system is?
16.
What is the
difference between RAID 1 and RAID 5?
17.
What are the
alternatives of init.d in linux?
18.
What roles do QA
(Quality Assurance) should play in DevOps according to you?
19.
What long and
short term goals a organisation should keep in mind before opting for DevOps?
20.
What testing is
necessary to assure a new service is production ready or not?
Vagrant
Interview Questions
Originally published by me in another blog at Vagrant Interview Questions and reproduced here for larger audience.
1. What is Vagrant
?
1. What is Vagrant
2. How Vagrant helps making development environment easy?
3. Can you name some hypervisors on which Vagrant provides
wrapper around?
4. Does Vagrant also provides wrapper of dev-ops tools?
5. Which all dev-ops tools does Vagrant provides wrapper
over?
6. Does Vagrant supports Docker Containers also?
7. Which server environments Vagrant provides support?
8. What all steps required to configure Vagrant?
9. What are the commands for making Vagrant up and
running?
10. What are the benefits of using Vagrant?
Puppet
Interview Questions and Answers
1.
What is Puppet?
2.
What is puppet manifest?
3.
What is manifest ordering and its importance?
4.
What is puppet module?
5.
Why Puppet matters to Devops? (Advantage of
Puppet over other devops tools)
6.
What is puppet catalog?
7.
Can you describe the puppet module layouts /
structure?
8.
What are agent nodes?
9.
What is EPP templates?
10. What
is the use of Puppet DB?
11. What
is the use of filebucket in puppet?
12. How
do you perform dry run? (no-op / noop)
13. What
is virtual resource in puppet?
14. How
can you realize a virtual resource?
15. Is
puppet resource idempotent
16. What
is the purpose of Hiera tools?
17. Which
node is called masterless node?
18. How
can you manage nodes using Node Manager?
What DevOps is?
Ask them how they would communicate a change if no procedures existed?
Ask them which is more important to the success of any DevOps community:
Ask them how they would communicate a change if no procedures existed?
Ask them which is more important to the success of any DevOps community:
·
How people communicate or the tools that you choose to deploy?
Order the following types of tools in the order they should be
deployed when starting a DevOps Practice:
·
Monitoring(Nagios, Zenoss, Etc)
·
Configuration Mgmt(Puppet, Chef, SaltStack,Ansible)
·
Wiki and or a Bug Tracking tool(MediaWiki, Bugzilla,etc)
·
Continuous Integration/Deployment Tools(Jenkins, TravisCi,etc)
Hopefully
that's enough to get your thought processes moving...
Subscribe to:
Posts (Atom)