CI/CD: Deploying on AWS

EdX.com: OTP-AWSD2 AWS Developer: Deploying on AWS

Synopsis of course: build a CI/CD pipeline in AWS:

  • Start with a proof of concept app built locally (Cloud9 for dev, Elastic Beanstalk for virtual environment)
  • Move code to repository and add Continuous Integration  (CodeCommit, CodeBuild)
  • Layer in automated testing and provisioning (CloudFormation, CodePipeline)
  • Finish with Continuous Deployment and production branch pipeline (CodeDeploy, merging 
  • Monitor deployments with logs and dashboards (CloudWatch Logs, ElasticSearch, Kibana)
  • Merge dev and production branches, discuss branching methods (hotfix and feature branches, rebranch, CodeStar)
Project diagram
Finished project screenshot

Python & PostgreSQL Developer Course

Build 9 projects—master two essential and modern technologies in Python and PostgreSQL:

  • Object-Oriented Python
  • Python for web and APIs (Flask, OpenAuth, Twitter, Bootstrap, etc.)
  • Advanced Python (Assertions, Lambda expressions, etc.)
  • Data structures and algorithims (Binary Trees, Queues)
  • Advanced PostgreSQL RDMS and Python integration
Project screenshot
Certificate Of Completion

Building on AWS

Edx.com: OTP-AWSD1 AWS Developer: Building on AWS

Synopsis of project: build a front and back end web project in AWS to:

  • Build the secure virtual infrastructure (VPC with public and private subnets, EC2, CloudFormation)
  • Register users and store data (Cognito and MySQL RDS, S3)
  • Process uploaded photos (Rekognition) and store data
  • Add on-prem processing (SNS, SQS with long-polling)
  • Test and debug with metrics (X-Ray, Cloud9 IDE)
  • Automate and decouple processes (Application Load Balancer, Lambda functions)
AWS Rekognition web application
Finished project screenshot

Developer Associate Course

Click to view course details at acloud.guru

I started with the Developer certification as it was reported to be the easiest of the three Associate-level exams. (The icon above says 2018, but I took all three associate-level exams in the second half of 2017).


From here I went on to acloud.guru’s DynamoDB course – Amazon’s NoSQL service.

Amazon DynamoDB course

Click to view course details at acloud.guru

DynamoDB is a major topic in the AWS Developer – Associate certification. My background has mostly been in Sequel databases like Oracle and MySQL, as well as specialty DB’s like Facebook Parse and iOS Core Data. NoSQL was new to me, so I took the first part of this course to shore that up prior to taking the exam. I hope to go back through this course when time permits. It is quite thorough, and has a heavy emphasis on NoSQL design theory. It also goes deeper into AWS API’s rather than using the GUI console. Good stuff. The second half of the course appears to be spent mostly getting the app (a college registration system) debugged and cleaned up – things that will have to wait until after the exams.

With the Developer and DynamoDB courses I felt pretty good about taking the exam. I then took the practice test from AWS and acloud.guru and went through the AWS Blueprint and the Exam Prep Guide from acloud.guru.

Exam Prep Guide

“The initial pass rate for the AWS exams is staggeringly low, due in part to people approaching the AWS exams similarly to other exams in the IT industry.” — Mattias Andersson

Click to view course details at acloud.guru

This course is led by Mattias Andersson who has passed all five Associate and Professional exams on the first try – with all scores > 90%. He teaches how to learn more efficiently, and how to take AWS exams specifically. Here are the goals of his course:

  • Understand how AWS certifications are set up
  • Find out how to effectively use many different learning tools to master AWS
  • Get a solid handle on how AWS certification exams and questions work
  • Take AWS certification exams with confidence
  • Become quicker at learning *any* technology

Ok, at this point I am sick of taking online courses! Time to put it all to the “test” and take the Developer exam. Click here to see the results.

Solutions Architect – Associate course

Click to view course details at acloud.guru

Right after passing the Developer Associate exam, I dove into the Solutions Architect Associate course at acloud.guru. Click on the image above to view the course there. Due to the overlap in material I was able to go through this course more quickly – even though it has 22 hours of video which equates to roughly 22 days of work to get through. I also wanted to take the exam while the Developer content was still fresh on my mind.

The course outline can be seen here.

Here is my AWS Solutions Architect-Associate Certification.

SysOps Administrator – Associate course

 

Click to view course details at acloud.guru

Two down, one to go. This is reportedly the big one – significantly harder than the Developer and Solutions Architect exams. So I took my time with this one. I also took the AWS practice exam as well as practice tests from Whizlabs.com. For more hands-on experience to reinforce what was covered in the course, I subscribed to a month of Qwiklabs.com where I earned over a dozen badges (a badge for each of a series of completed labs).

Ok, now I should be ready!

Off to take the AWS SysOps Administrator – Associate exam.

QwikLabs

 

Click to view my progress at qwicklabs.com

Qwiklabs provides an environment to obtain hands-on cloud experience using  native console access. There are many dozens of labs that walk one through various common AWS and Google Cloud tasks. A “quest” is a series of labs that comprise a unit of study, such as deploying a Docker or Big Data application.

I subscribed for one month of unlimited access to supplement my courses taken at acloud.guru and build a little muscle-memory for common tasks, as well as gain exposure to AWS services only briefly discussed in a course. I also had time to take an intro to Google Cloud, which they happened to just add while I was there.