I went through the same journey you are aiming to start. I rose from Help Desk to sysadmin, learned about this thing called DevOps, and decided that’s where I want to be. So it’s definitely something you can accomplish.
Bash and Python are your friends. Learn them well. Learn a low budget editor like vim
really well, too. Don’t forget things like Sublime and VS Code if you prefer those, but getting a really solid handle on those three things will serve you well in the Linux Engineer/DevOps Engineer role.
I used the AWS Free Tier Account. You get a year of full access under their free tier, which is 750 hours of usage a month. If you don’t leave stuff running 24x7 that’s more than enough.
GCP has a similar offer, but it is a little bit more complicated to use. Azure gives credits per month under their student/developer accounts.
Many of the services are free, such as AWS Code Commit, Azure DevOps, etc.
I recommend having a plan to utilize these services, such as studying for an AWS cert, learning something like Terraform, etc.
Yes. My website, GitHub, and podcast has come up in an interview far more often than my education and experience.
Start small. Install Apache and write a simple “Under Construction” site in HTML. Make it pretty with CSS. Give it a domain.
You can use Vultr, Digital Ocean, or Linode for your infrastructure needs. All of the above offer free usage in a form of credit. After that, I strongly recommend learning Apache or Nginx and using that to serve your web site.
Having a GitHub is pretty common among sysadmin, DevOps, SRE, and software folks these days. They now offer free private repositories, so even with a personal project you can host it on GitHub. GitLab is another service you might be interested in checking out. They have a bit more “features” but are essentially the same thing.
Speaking casually about complex technologies will come with practice and experience. I’ve been in I.T. for almost 10 years and in DevOps space for 2 years, and I still get tripped up on things. It’s no big deal. Learn to accept when you don’t know something and be willing to admit as much. Talk about how you would tackle a problem you’ve never encountered before. Don’t over think it. If you’ve never used SuperAwesomeMonitoringUptimeAPMTool, it’s perfectly acceptable to say “I’d send a curl
request to see if the site is up.”
Have a passion in something inside of technology and outside of technology. My friend got an interview at the Microsoft campus in Redmond because he put he had a blackbelt in Gojo Ryu Karate and Brazilian Jiu-Jitsu on his resume. If you enjoy technology, start a video series or a podcast and discuss your interest or news in that field. Enjoy collaboration, learning, and sharing with other people. That will become infectious and you’ll take a guy crippled with burnout and exhaustion and rekindle the flame of his passion for technology.
Udemy has things on Jenkins, Terraform, Kubernetes, Docker, and various programming languages.
Checkout Colt Steele for his webdev bootcamp. It’s often very cheap and it’s hands down the best course for getting up to speed on JavaScript. That includes Node.js/Express and the stack around it (Linux, MongoDB, etc.)
Wendell also has a course on Udemy where he goes through some cool Linux tips and tricks.
There is a phenomenal course on Nginx that’s on Udemy too. It’s $10- right now and one of the more highly rated courses on Udemy.
WebDev, backend JavaScript, Linux, and Nginx skills will go a long way. Knowing how to operate and deploy those services on AWS with go even further.
I have mixed feelings about the Kubernetes recommendation, but if that’s something you are interested in, definitely check it out. Kubeadm was fairly straightforward in setting up. You can also use the AWS EKS service. After rereading @risk’s post, I am inclined to agree with it more. Especially that last bit.
Focus on the fundamentals, the lifetime skills, basic software engineering and development skills and coding in any language and networking protocols that won’t be going anywhere for the next 20-50 years. And build yourself up one skill at a time.
This is vastly more important than learning AWS services.
Eventually, something like Terraform would be useful to deploying to AWS.