I work as a product support engineer.

I’ve so far learnt about

Now, I am looking to go in a new topic:

  • It should be achievable to learn within 1 month(50-100 hrs) of effort.
  • It should be interesting to learn(something novel, I mean)
  • It should help me learn something new as well.
  • I don’t have a cloud to practice aws etc and can’t purchase them either.
  • I should be able to self host it in my lenovo thinkpad with 16gb ram and intel i5 7th generation processor

I can:

  • write shell script for basic installation purposes.
  • Install applications on linux server & troubleshoot if something wrong occurs.(example: LEMP etc)
  • Configure NGINX web servers
  • Troubleshoot using command line utilities.
  • Create VMs in virtualbox.
  • Basic SQL(can read).
  • configure kubernetes on linux server.

So, I am now wondering what can I do that can drastically enhance my skillset.

I’ve asked this to ai bots(deepseek,chatgpt) and they all tell me un-creative answers. They say to do ci/cd with github actions & kubernetes. But the problem is I don’t know how to write yamls.

They say:

  • use helm -->I don’t know yamls
  • Setup SIEM
  • log aggregation with loki & grafana—>I don’t know programming language spring boot to centralize its logs
  • terraform—> I don’t know yamls
  • gitops–>I don’t know yamls
  • REST API in java–> I don’t know spring boot

It seems like I need to learn yamls. However, really having tough time finding a resource

1 Spice up

https://yaml.org/spec/1.2.2/

Well DevOps is not about yaml, it is about how you think about systems.
I would advise:

  • Get to know Linux at the foundational level. If you know how to configure and troubleshoot the OS confidently that will save your bacon going forward.
  • Get to know virtualization, any virtualization but ensure you can justify why you configure it XYZ instead of ZYX.
  • Get to know Docker, the innards not just a couple of command line switches.
  • Learn about one hyperscaler at medium level and have a overview about the capacities of other hyperscalers.
  • Learn Kubernetes inside out, deploy, break fix and again be able to tell someone else why you did XYZ instead of ZYX.
  • Learn one of the CI/CD platforms yes you probably will have to play around with Yaml, use VSCode or some similar IDE to help you with the formatting :slight_smile:
  • You don’t need to know yaml to use terraform :slight_smile: but you do need to understand how HCL translates to real world resources, once you understand one of the hyperscalers turn to terraform and deploy infrastructure as code, once you have mastered IaC convert that into a pipeline and deploy automatically, half-way there … :slight_smile:
  • Then you can start to worry about other items :slight_smile:
2 Spice ups

It sounds like you’ve got a solid foundation! I’d recommend learning Ansible. It’s simple, uses YAML (but in a manageable way), and doesn’t require cloud resources. You can automate server setups, NGINX configurations, and more, all locally on your machine. Plus, it’s a great way to get comfortable with YAML without the complexity of tools like Helm or Terraform.

Thanks good sir

Understanding YAML is easy:

I find creating and amending long YAML config files mind-numbing and laborious compared to other languages but that’s my own hang up. If you’re serious about DevOps, you won’t be able to avoid using YAML for certain things.

To provide something not listed, you could install Localstack using Docker or Podman and use it to learn AWS basics without needing an AWS instance: Integrations | Docs

If you’re not open to trying something like AWS CDK with TypeScript, look at using plain awscli.

1 Spice up