About

Hello, my name is Gerry and I wrote this blog to store information about lessons I have learned over time through my career from Tech Support => SysAdmin => Cloud Engineer => Eventually Cloud Architect. I’m mostly following the standard devops path. You will find these days it mostly covers deploying resources in Azure using Terraform with Github Actions. Every now and then I get to use my Powershell experience as well!

Many people who write blogs are highly skilled in their domain and speak at conferences, travel the world to enlighten others, and are generally seen as an “authority” on their content. This blog is not that. I simply write posts that help me remember the steps I took when researching and deploying an automation solution. I take what I did on my job, sanitize it, and then publish here for me to search later. If others find it useful – great! If not, no worries! This blog is not meant to be a main source of revenue (though I do use Google Ads - see terms). I do accept donations and I have setup Utterances to be more engaging in the communinity, but I certainly expect that most readers will just pick up a few things from my simple to-the-point style of posting unlike most other blogs. Thanks for stopping by!

My Interests Over Time:

  1. Cloud Engineer:
    • Post Tags/Categories:
    • My major focus has been “Deploying of all Azure Services using Azure Devops/Github Actions + Terraform”. Everything is done through IaC instead of Azure Portal. Challenge mode on!
    • AKS deployment/management. Will post more on this in the future but for now just learning how to use kubectl and k9s for interacting with deployed clusters. Stay tuned.
    • Powershell + Python scripting to be ran by Azure Devops Scheduled Tasks/Azure Automation/Logic Apps/Function Apps. This will never change as scripting is an incredibly valuable skill that can be used anywhere/anytime for automation.
  2. Automation Engineer:
  3. Systems Administrator:
  4. Remote Support Tech:
    • Mostly break fix and learning to script.
    • Learning to troubleshoot.
    • Everyone should read this at the beginning of your career and really understand what it is saying. This is not to be condescending, but I refuse to help people who do not try to help themselves. 80% of people who ask me questions about something are doing it out of sheer laziness - no more, redirect them to this page and ask them “show me where you got stuck…”

General Advice

  1. For those that are new to the field of IT, my advice is to learn the following skills in the following order:
    • Foundational knowledge: Hardware, Software, Networking. These are the core of IT systems with Software being the largest. But at a minimum you should know:
      • Hardware: What components go into a computer - from disk drives, to memory sticks (RAM), to Raid Arrays and on. This may get less and less relevant as time goes on where Cloud providers extract this away but it is still important as we may shift back on-prem in the future once vendor lockin is not as strong. Currently cloud providers such as GCP, AWS, and Azure have attractive pricing to bring companies to their platform but once they capture a large enough market there is nothing stopping them from increasing their pricing because they know it will take enterprises years to migrate back on-prem. And obviously being publically traded companies they actually have to do this to increase share holder value so keep this in mind.
      • Software: This goes from anything between what an Operating System is, to user installed programs, to Server Applications versus Client Applications.
      • Networking: I personally feel that every person in IT should be CCNA certified at the beginning of their career no matter what path they choose. Not because I’m a Cisco shill, quite the opposite actually, I don’t care what provider but you need to know the basics: Private IP verus Public IP, NAT, Firewall Rules, etc. At a minimum, you should try to visualize a path networking traffic takes between two devices.
    • So you will never master everything in those categories as each are infinite in depth where you can spend your whole career getting deeper and deeper, so you should strive to have a SysAdmin level knowledge (hint: go for level 50 ) in each.
    • The best advice above all is to learn to troubleshoot. The way you troubleshoot something is you have to visualize how it works as deep as you can. Have you heard of the “what happens when you google?” repo? Do this but with EVERYTHING that you can.
  2. How to Advance:
    • Look for a new demanding job once you feel you have learned all you can and you don’t see upwards mobility.
      • Make sure to interview them more than they interview you :)
      • Try to give your current position 3 years minimum, it can look bad if you jump ship too often.
    • Try to never be the smartest person the room.
      • I’m a fan of skills checklists so that I’m always learning something new, see above.
    • Be a tinker by nature:
      • When you install programs, do you modify the themes, settings, sync options, encryption options? See my tweaks tag for example. For example, it drives me crazy that people install vscode and don’t know about settings.json tweaks and extensions.
      • Do you regularly go out of your way to learn how $x works? See this list of things you can install in your homelab (newer version here).
        • See my setup tag for example.
        • After you stand something up, take notes of each step and then post them on a blog so you can showcase your skills.
          • This can be a self hosted Wordpress instance or preferably, Github Pages with many blog links pointing to your Github repos.
      • Last but not least, focus mostly on scripting. I would do powershell for Windows and bash/python for linux servers.
        • I always explain scripting to be like legos - Super small chunks of things that you learn that build the foundation for any kind of automation you can think of. If you are interested in learning I would suggest Powershell or Python (or both)
        • You will never not have an in-demand job if you know how to write scripts, especially if built on a SysAdmin foundational knowledge (how to build servers, how to picture networking, how to use orchestration tools for example)
    • Work on your people skills yo!
    • Get certifications with tech you plan to use the most, especially with cloud providers if you plan to work in cloud!
    • Create different Github Repos for different tech that you learn. This will help conceptualize the technologies based on categories. For example my Github has:

My Certs:

  1. 2021-10-02: Azure Solutions Architect
    • Solutions Architect
    • 2021-10-02: Microsoft Azure Architect Design (AZ304)
    • 2021-08-01: Microsoft Azure Architect Technologies (AZ303)
    • Verify
  2. 2020-05-16: Microsoft Azure Administrator (AZ103)
    • AZ103
  3. 2016-06-17: Cisco Certified Network Associate: Routing and Switching (CCNA R&S)
    • CCNA
  4. 2015-05-02: Testout Network Pro
    • TestOut Network Pro

Archived:

Looking for the older version of this page? Check here.