amazon training

Overview

We are developing a large scale website and are looking to automate the environment setup and parts of the software engineering process, build, package, deploy, and test within AWS.

  • For this test assignment, we are asking you to provide a development plan document for completing each of the tasks detailed below.
  • We will use your document to evaluate your knowledge of AWS and other software packages for build, package, deploy, and test
  • We are expecting that a great candidate will spend less than 8 hours and produce a clear and well researched dev plan.
  • If we like your plan, and your interview goes well, we will then hire you for a full time role, and your first tasks will be to execute your implementations!

Task 1 - Fully Automated environment setup

Create the cloudformation template and chief scripting required to bring up a dev, test, staging, or production web site

  • Must be fully automated; no manual intervention required whatsoever
  • web site AWS environment consists of RDS, Cloudfront, SQS, SNS, SES, and elastic beanstalk as well as other third party non-Amazon software.
  • must notify when environment is completely setup ready
  • DOD (Definition of Done) - this task is complete when I can specify a few parameters (examples, name of environment, size of farm), click a button, and receive an email notification containing the details of the environment when the environment is up and running.

Task 2 - Continuous 24/7 Testing Automation

  • create and administer a 24/7 test suite that runs against a selected environment
  • setup fully automated testing pipeline that detects SVN commits, builds and packages the website, then deploys it into the staging environment, without disrupting the automated testing
  • requires using existing monitoring tools
  • DOD - this task is complete when the following 2 capabilities are enabled
  • an svn commit command triggers a build, package, deploy into a configured environment, and then an email notification is received containing details of the deployment
  • a web page is available at all times that shows the results of all tests run in the last 8 hours against the configured environment

Instructions

When complete and ready to submit:

  • Please create and provide two (2) distinct plans. Both plans should be contained in a single Google document or folder, saved with the file name ACAE$60K1003_Lastname_Firstname (substituting your name for Lastname_Firstname) share it publicly, and proceed to this link for completing your submission.  

Each plan should contain the following sections

Plan Summary

  • Define in one paragraph or 5 bullet points the most important parts of your plan.
  • Have you selected great services that will do the work for you without having to write much code?  Is there a design pattern you will use that will make the automation maintainable and more robust?  This is the section to highlight what makes your plan special.

Software List

  • Identify all software you will use, including development tools
  • You must reuse Amazon tools and best practices when they apply
  • When Amazon tools and best practices don't apply, open source standards should be used.
  • Writing code should only been done as a last resort.  Configuring "off the shelf" software is preferable by far to writing code or frameworks.

Task Breakdown

  • Plan should cover the task breakdown to the level where the maximum task effort is 3 man hours.
  • use a Google spreadsheet and link to it from the Google doc
  • make sure it shared with the same people
  • provide the task breakdown in a form that you feel is as simple and easy to understand as possible

Total Effort

  • Each plan should include the total effort in man-hours. Assume you are the only one working on each project in your estimates.

Calendar Duration

  • Each plan should include the calendar duration-to-complete, measured in weeks and days.  Again assume that you are the only one working each project

Finally, if we like your plan, you will be invited to the final phase of the application process.  [NOTE: You may be asked to sign legal documents related to security and proprietary information before you move forward to the next step of the process.  This is sometimes necessary if, in the next application phase, you will have access to such information for completing this phase.]  The next phase for this position is an online video interview with the hiring manager.  Instructions for scheduling this interview will be included in the invitation, should you successfully complete this testing phase.  Once that interview is complete, only minor (and brief) administrative steps remain.

You have only 5 days from today to complete this testing phase.


No comments:

Other Articles

Enter your email address: