Friday, September 30, 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 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



DevOps Interview Questions
 2016-01-10  1 Comment  DevOps
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 CI tools have you used? Example: Jenkins.
·         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?
·         Google is your friend
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?

 Java Guru  12:04 PM 



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 ?
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:
·         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...