The course is part of this learning path
This course describes 6 different positions in the cloud computing industry, all of which are in high demand as established companies move to cloud technologies, companies expand IT departments, and new companies form. There’s great opportunity for fulfilling work with great pay. Overall it’s a great time to be in the cloud computing industry (which is rapidly becoming the IT industry).
Hello and welcome back to the Careers in Cloud Computing course. I'm Adam Hawkins and I'm your instructor for this lesson on the engineering position. I'll cover the roles and responsibilities, technical skills, general salary range, and relevant certifications or trainings.
First off, the engineer position is missing an adjective. Usually this is something like front-end engineer, backend engineer, service engineer, mobile API engineer, web engineer, or even just generally software engineer and the list goes on and on. You may have even noticed the various other insert blank here engineer positions mentioned in the intro. So what makes them different? I'll tell you. The engineer we're discussing primarily focuses on writing code that lands into customer's hands or in a product or in other words, they write new features, fixes, or even actually introduces bugs and the general day-to-day maintenance of ongoing software projects. Now, the exact skills vary by domain.
Consider the front-end engineer. This role targets websites and web applications. The front-end engineer needs to know how to website code, test it and put it online. Now, the backend engineer may need to write code that powers mobile applications, test it and put it online. The skills repeat, but generally fall into a few different categories. First up, comes your programming skills and knowledge of important libraries in the relevant language. It's not enough these days just to know a language. You need to know the relevant frameworks because you will use one in the real world. Now pair that with testing skills. Engineers are expected to verify their code by writing tests. You'll see this called out as TDD or Test-Driven Development, unit testing or integration tests in job postings. Next comes databases.
Most applications need a database to store data like user accounts or payment records. There are two different types of databases. These are RDMS or Relational Database Management System such as MySQL, PostgresSQL, Oracle, or Microsoft SQL Server and NoSQL which is an unstructured data store like MongoDB. The odds are the job will require experience with one or the other. Lastly, you'll need skills required to deploy the application. This varies widely between teams and organizations. Engineers building a website should know how to configure web servers such as Nginx on a Linux machine and then probably create those machines on a cloud provider like AWS.
Salary and technical skills are tied to your experience level. There are entry, mid, and senior versions of this position. There tend to be entry-level offerings for this position unlike some of the others in this course. Motivated individuals can land entry-level positions through self-driven learning in combination with guided instruction like the courses you'll see on Cloud Academy and importantly a lot of practice. Now, it's hard to pin down specific certifications or trainings for this position. I recommend you pick a language and learn all about it. Then look outward in the certifications or trainings for the specific technologies you're interested in.
The Associated AWS Certified Developer Certificate is what you'll want to develop a third focus area, but don't discount books. There are many great books out there to supplement the courses. I actually started out years ago by buying a big thick book on PHP. The engineer position is your likely starting point if you're coming from the outside IT world. If you're already working in an IT company, you'll probably have a better idea of what type of engineer you'd like to become. I'll leave you with some questions to ask existing engineers or even better yet in job interviews, you better pin down the roles and specific responsibilities. Now, this wraps up our discussion for the general purpose engineer. Let's refine that by discussing the data engineer in the next lesson.
About the Author
Adam is backend/service engineer turned deployment and infrastructure engineer. His passion is building rock solid services and equally powerful deployment pipelines. He has been working with Docker for years and leads the SRE team at Saltside. Outside of work he's a traveller, beach bum, and trance addict.