4

Hey ya'll, I was wondering if you could give me a career advice. I'm a front end dev with about 3 yrs of experience, and would like to do more cloud architecture/devops. How would I go about it, considering that I've only used aws, gcp, and azure for my hobby/side projects? Should i get certified? Who would hire me?

I'd really appreciate any advice/tip!

Comments
  • 2
    Disclaimer: I'm only a student. However I'm a huge devops enthusiast, so I may be able to answer some questions.

    What are your experiences with things like docker and networking? CI/CD?
  • 4
    Get certified
  • 1
    Certification is certainly good to have, an add-on but not sufficient for getting hired. Do a portfolio of projects, write about it, publish in GitHub, better live lab in cloud, present in meetups, network with relevant people, then any good company worth working for would hire you.
  • 0
    @KasperNS same level: side projects, nothing big, nothing commercial.
  • 0
    @steaksauce cool, thanks! @ajit555 good stuff, thank you! :)
  • 3
    @XanderCage well at least you don't have to start from nothing then ;)

    I think your first step should be to install VMware or VirtualBox, and fire up Ubuntu server. Set ssh up on it, and remote into it. Get used to only working in cli, that'll help you so incredibly much. If you feel like it, you can also get a droplet on digital Ocean for 5$/month.

    Then install docker. Really get to know it. I'd recommend taking some of your projects, and writing Dockerfiles for them. Basically you be great off you have a basic understanding of how virtualization works. Also look into docker-compose, so you'll get familiar working with Infrastructure as code. (Btw sorry if you already know all of this).

    Networking is something that you really don't need to know a lot about, to be in devops, but it is going to help you a lot, in terms of understanding how things work. Look into the different classes of ip adresses(level a, b and c). How arp works, how subnets work. Use this in conjuction with docker. Look at what network your containers are on vs. What your host is on. Can you ping your containers from the host and vice versa, why or why not. Hint: look at how default gateways work.

    From here you can do two things. If you want to more about networking, try setting up a Virtual Private Network(VPC) on Google cloud.

    If you want to focus more on the streamlining of the development process, fire up Jenkins, setup a CI pipeline, that builds a docker image on merges with the master branch, and pushes it to the registry. Maybe even set it up so it does builds on pull requests, to give a better insight BEFORE merging to master.

    Oh and btw, you can get a free trial on Google cloud with 300$. And sorry if this was a big hit of information at once, I've just been living and breathing devops for the past 6 months, so I'm really passionate about it 😅

    But other than that, have fun with it! And feel free to hmu anytime if you're stuck. Here or on reddit, same username both places.
  • 1
    @KasperNS Pretty comprehensive and loaded advice, some single lines may take week to understand. Saving your answer in case somebody asks any advice on starting career in DevOps :)
  • 1
    @ajit555 Yeah I kinda got carried away. It's probably well worth mentioning that I've spent about the past year learning all this, and pretty much nothing else.

    But like you say, one line can take weeks to understand. I guess it's better advice for the people really interested in going the devops way, more than the ones who are just looking into it as a side thing
  • 1
    @KasperNS After working in a product company for 13 year as a product manager, I got laid off due to business restructuring. Took 1 year break for some rest and contemplation and finally about 7-8 months back decided to be a hands on tech person. Programming did not excite me, but DevOps did as I was always fascinated by networking, security, servers, cloud. I was always into Windows technologies. Finally said bye-bye to Windows (still using it as client for my linux servers) and shifted to linux. Getting my hands dirty on docker, kubernetes for past few months. Going through the exact painful initial learning process as outlined by you so was very much able to relate to each word in that.
  • 2
    @ajit555 Man that's rough. And you couldn't be more right. However fun this career path is, it's excruciating to get started.

    While I'm studying CS now, they've chosen to mainly focus on programming, and while I love how programming gives me the possibility, to make things out of nothing, I'm really not excited about the thought, of doing it as a job. The only thing my school teaches me, is that we are taking the Cisco CCNA certification.

    I mean when I started doing 'server-stuff' a year ago, I didn't even know about stuff like CI/CD, and only knew the basic commands like cd and ls. Now I'm basically living in a terminal, and loving every second of it
  • 1
    @KasperNS In order to start earning in any form (teaching, consulting, job etc.), I am planning to set up a portfolio lab on GCP+GKE showcasing CI/CD, docker registry, helm repo, containers, security (certificates + authentication), DNS and kubernetes. Right now, working alone on it. It would be very nice to pair with someone enthusiastic about it.
  • 0
    @KasperNS that is AWESOME! thank you very much for your instructions/plan. I'm gonna definitely do that :) PS i actually am thinking about doing this full-time as a career. Hence, curious about what the right way to start is. :)
  • 1
    @ajit555 DevOps is great and highly in demand. So i think all your effort is going to pay off eventually, esp. if you enjoy doing it. Keep on keeping on! :)
  • 0
    @ajit555 I've got an exam project coming up in about 6-7 weeks, and that sounds almost exactly like what I want to set up. One of the (at least I think) awesome ideas I have, is to have a build on every pull request, and then spin up a pod based on that build, so you can access it via $pull_request_id.staging, and do some manual integration tests. Obviously that comes with setting up a vpn connection to the k8s cluster, but I think it'd be really great. I think that covers most of the things that you want running too, right? The only thing I'm not mentioning is that I'd also set up a reverse proxy, with a letsencrypt cert in place
  • 1
    @XanderCage You're very welcome :) And PS: I have no idea if this is the right way to do it. I'm completely self-taught in the DevOps ways. I'm just thinking that if I could back to last year, that's the way I would've moved forward
  • 0
    @KasperNS exactly on the same page. Regarding reverse proxy, in my home lab, i have setup using nginx controller, but recently I came across new approach in GKE where they are altogether dropping the need for ingress using reverse proxy by substituting it with containers. Need to look into it but looking exciting as it simplifies the design.

    https://cloud.google.com/kubernetes...
  • 0
    @ajit555 To be honest, I've only just started seriously looking into k8s this week, so my knowledge on that is still kinda limited. Have had a lot of school to deal with for the past 2 months...

    But I must say that does really look interesting
Add Comment