From 68cdc59d7aa050259c0d99be0a0630e66c0c45ba Mon Sep 17 00:00:00 2001 From: abregman Date: Tue, 22 Oct 2019 21:32:47 +0300 Subject: [PATCH] Add coding questions Also removed a couple of questions I added in the past but didn't really like. --- README.md | 70 +++++++++++++++++++++++++++++++--------------- images/coding.png | Bin 0 -> 6640 bytes 2 files changed, 47 insertions(+), 23 deletions(-) create mode 100644 images/coding.png diff --git a/README.md b/README.md index fce5d3b..2255ee0 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ :information_source:  This repository contains interview questions on various DevOps related topics -:bar_chart:  There are currently **399** questions +:bar_chart:  There are currently **400** questions :warning:  You don't need to know how to answer all the questions in this repo. DevOps is not about knowing all :) @@ -45,6 +45,7 @@ openstack
OpenStack

Beginner :baby:
Advanced :star: security
Security

Beginner :baby:
puppet
Puppet

Beginner :baby:
Advanced :star: + coding
Coding

Beginner :baby:
Advanced :star: @@ -116,18 +117,6 @@ You may use one or all of the following: * architecture aspects - agent vs. agentless, master vs. masterless, etc. -
-What the difference between VPN and VPS?
-
- -
-What scripting language are you familiar with? why specifically this one?
-
- -
-How long do you think it would take you to learn another language?
-
-
Explain mutable vs. immutable infrastructure
@@ -183,10 +172,6 @@ which follows the immutable infrastructure paradigm. How would you structure/implement CD for an application which depends on several other applications?
-
-Explain what are design patterns. Which design patterns are you familiar with?
-
-
How do you measure your CI/CD quality? Are there any metrics you are using?
@@ -1635,6 +1620,44 @@ Swarm management which means you can create new swarms in Docker Cloud. Do you know how to create a new user without using adduser/useradd command?
+## Coding + + +#### :baby: Beginner + +
+What programming language do you prefer to use for DevOps related tasks? Why specifically this one?
+
+ +
+What is Object Oriented Programming? Why is it important?
+
+ +
+Explain recursion +
+ +
+Explain what are design patterns and describe three of them in detail
+
+ +
+Explain big O notation
+
+ +##### Strings + +
+In any language you want, write a function to determine if a given string is a palindrome
+
+ + +#### :star: Advanced + +
+Name 3 design patterns. Do you know how to implement (= provide an example) these design pattern in any language you'll choose?
+
+ ## Python @@ -1959,11 +1982,6 @@ def reverse_string(string): ```
- -
-Write a function to determine if a given string is a palindrome
-
-
How to sort a dictionary by values?
@@ -2314,6 +2332,11 @@ If you want to get "101" you should use the package "strconv" and replace
What is the difference between SQL and NoSQL?
+ +The main difference is that SQL databases are structured (data is stored in the form of +tables with rows and columns - like an excel spreadsheet table) while NoSQL is +unstructured, and the data storage can vary depending on how the NoSQL DB is set up, such +as key-value pair, document-oriented, etc.
@@ -2321,6 +2344,7 @@ If you want to get "101" you should use the package "strconv" and replace * Heterogeneous data which changes often * Data consistency and integrity is not top priority + * Best if the database needs to scale rapidly
@@ -2643,7 +2667,7 @@ Inner JOIN cat_food f
ON c.Customer_ID = f.Customer_ID
where c.Customer_ID in (Select Customer_ID from cat_food); -Although this was a simple statement, the "with" clause really shines is when +Although this was a simple statement, the "with" clause really shines when a complex query needs to be run on a table before joining to another. With statements are nice, because you create a pseudo temp when running your query, instead of creating a whole new table. diff --git a/images/coding.png b/images/coding.png new file mode 100644 index 0000000000000000000000000000000000000000..471c6cfdc4e29a1af7e98ce9076e347134f4088a GIT binary patch literal 6640 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