Giter Site home page Giter Site logo

devops-test's Introduction

What is this?

In the interest of saving everyone's time, we use homework assignments to pre-qualify DevOps Engineer candidates. This lets us be objective during the interviews and focus on the candidate's ability to solve complex problems and defend their choice of technology or approach. We also evaluate how candidates handle stress, time pressure, criticism and scrutiny from peers, management or operations teams.

TL;DR

To be considered for an interview you need to complete the "Assignment" section below.

Once completed, please work with your recruiting agency to let us know. Don't forget to provide them with the GitHub url to your project.

Assignment

As a member of the development team your mission is to ensure:

  • Application (a simple ruby app that responds with "Hello World!" to anyone who visits it) is reasonably resilient and a single node failure does not affect end users.
  • Application can be scaled, preferably automatically, to handle increased loads.
  • Infrastructure and required services provisioning as well as application deployment is automated and can be triggered with a click of a button or a command in a terminal.
  • Changes to the application's source code can be automatically tested before they are merged into the master branch.
  • Specific version of the app can be launched for troubleshooting, testing, showcasing, etc.

Fork this repo first.

As you work on your solution you will inevitably have questions - please post them via the Issues tab ^.

This is intentionally an open ended assignment. Have fun with it and be prepared to discuss and whiteboard your solution during the interview.

Caveats

Source code repository โ€” we are assuming you will use GitHub โ€” should be configured to execute a CI test (via Travis or Drone.io) when changes are introduced to it. However, the test fixture itself can always return success as test automation is not the subject of this assignment.

You may use any free or open source OS, software packages, tools, etc. to develop your solution.

Docker, VirtualBox, AWS, GCE are all acceptable virtualization options but please do not send us binary images. Your solution should be in the form of code or configuration, such as Packer, Vagrant, Chef, Ansible, shell, etc. which we can review and use to create the environment on our own.

devops-test's People

Contributors

ap1kenobi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.