Part of our new DevOps Nanodegree Program!

DevOps is generating the kind of excitement right now that very few fields can claim to enjoy. But rest assured, this is no temporary tech trend—DevOps is here to stay. The core DevOps principles—pervasive automation of processes, the use of metrics to gauge the effectiveness of processes, and a culture of collaboration across organizational units—are being adopted by more and more companies every day, and demand for workers with DevOps skills is growing at blinding speed.

Udacity has been working hard on a new DevOps Nanodegree program, and today we’re thrilled to launch one of its signature courses: Scalable Microservices with Kubernetes. Equipping new learners with the skills required to meet this incredible demand for DevOps talent is our mission, and we’ve lined up some incredible talent for the program. Carter Morgan, Developer Platforms Engineer at Google, is one of the creators of—and instructors for—our new course, and here he is to tell you all about it!

Course instructors Kelsey Hightower and Carter Morgan

What happens when the server crashes?

$66,240 a minute.

That’s how much Amazon reportedly lost during a 40 minute outage in 2013.

Doing some quick math yields $2.6M! Sure, Amazon survived—they had teams of people working on the issue and excess millions to spare—but imagine if that outage happened to a mom-and-pop shop that never even dreams of reaching Amazon’s scale?

The problems leading to the outage would probably be similar, but the smaller shop couldn’t bear the burden of an outage in the same way Amazon did. That’s why—whether it’s a local shop or a web giant—ensuring your website is live and functional 24/7 is mission critical for any modern business. When your website goes down, you lose business. It’s that simple.

Enter the Sysadmin

The people tasked with keeping the website upare called sysadmins. In the last decade, the demand for competent sysadmins and DevOps practitioners has grown. By a lot. A recent study conducted by Vanson Bourne, which polled 200 enterprise IT decision makers in the US, found “91% of CIOs agreed that executing a DevOps strategy is a top priority for their organization,” and reports from organizations such as CA Technologies and Dice show rapid and dramatic increases in both demand and salaries for DevOps roles. Rona Borre, CEO of Chicago-based IT recruiting firm Instant Technologies, had this to say in a recent Forbes article: “We’re seeing such a shortage of DevOps talent that salaries of $200,000 or more for running a team are not unusual.”

All of which actually makes sense: more people and businesses than ever are on the web, there are more tools to learn, and technology has changed drastically since the days when a single person could possibly manage large web applications.

But if you wanted a clear path through all of these complexities, where would you start? Ideally you’d get to sit down with thought leaders like Kelsey Hightower—experts who’ve been leading the adoption of microservices, and who have the experience to guide you through the major hurdles of managing modern web applications. I got to work with Kelsey on the Scalable Microservices with Kubernetes course, and we’re both very excited to share the curriculum with you. To give you some insight into how and why we built the course, let’s look at some of the challenges modern business are facing.

Small, Deployable Applications

The first hurdle is the app itself.
Applications today are packaged into containers—lightweight, isolated applications that are bundled with all of their dependencies, so that they can run anywhere. The applications packaged inside of containers are designed to be as deployable and maintainable as possible. And that generally means instead of having one large application that does everything, we’re seeing more applications made up of microservices—small focused binaries that do one thing well.

While maintaining each individual microservice is easier, this design pattern also brings up issues: Namely, how do you coordinate all of these independent binaries? The answer is: You don’t!

Don’t Coordinate, Automate

Instead of coordinating, you automate. The second hurdle—the infrastructure needed to manage microservices—is all about managing and automating application containers. This includes monitoring, logging, service discovery, security, and more. All of which is necessary for getting and keeping an application running. Why? Because we want application containers that can be deployed whenever they’re ready—and if the application doesn’t work we want to be able to rollback to a previous version that did. Automatically. Or if an instance of our application goes down, for whatever reason, we want the application to be started up again. Automatically.

Scalable Microservices with Kubernetes

All of this sounds great in theory, but how do we make container automation a reality? What are the exact tools and exact processes we should be using? And where do we even get started?Those are all great questions.

And they’re exactly why Google and Udacity have teamed up to create Scalable Microservices with Kubernetes. In the course, Kelsey Hightower and I give step-by-step walkthroughs of industry-standard tooling like Docker and Kubernetes for handling these complex problems.

In the course you will learn how to:

Containerize an application using Docker

Configure and launch an auto-scaling, self-healing Kubernetes cluster

Use Kubernetes to deploy, scale, and update your applications

Ultimately, the goal of this course is to give you the tools needed to get hired managing scalable microservices in production. As reported in a recent article from edureka! entitled DevOps Engineer Career Path: Your Guide To Bagging Top DevOps Jobs, listings for DevOps jobs on Indeed.com have increased 75 percent in the last two years. Search Indeed.com today, and you’ll find over 700 open roles that specifically list Kubernetes in the description. These are exactly the roles this course prepares you for!

If that sounds interesting, sign up for Scalable Microservices with Kubernetes today.

Carter Morgan

Carter Morgan is a Developer Platforms Engineer at Google, where he gets to write code and give talks about his favorite tools—Go and Kubernetes. Before Google, Carter was a programmer for the United States Air Force and for Microsoft. In his free time, he does standup comedy and teaches "Presenting with Charisma" to other Googlers. You can find him on twitter @_askcarter. Carter is an instructor for the Udacity Scalable Microservices with Kubernetes course.