What I learned in my first 2 years as a Software Engineer

Timothy Josefik
4 min readJan 9, 2019

--

I survived it.

A little background on myself first. I graduated with a bachelors degree in Computer Science two years ago and started work right away. I started as one of those new “fancy” DevOps/Cloud/Kubernetes/Platform/SomeOtherBuzzwordThatEveryoneSays Engineers. I did that for a little over a year and developed a love hate relationship with it, more on that in a second though. I am now a POSE (Plain Old Software Engineer) at a different company mostly writing in Ruby and have been at that for 9 months now. Most days I love it a lot more but I am also one of those weird people that look at a UML diagram and see a piece of art.

I want to start off with what most people know me for, my Kubernetes experience. It was the hardest 15 months of my life. I lost a lot during those times, sleep, friends, family. I came out with a completely different outlook on life. Most people will say Kubernetes is hard but it isn’t. It’s the infrastructure that it runs on that is hard :P. I loved Kubernetes and still do but dealing with those servers sucks….here is a little secret, run everything on EKS. On-call when you are running your own cluster is a nightmare but the knowledge you will gain is invaluable. I could sit here and list off everything I learned but that would just get boring and wouldn’t be meaningful to anyone.

For those of you who do not know what Kubernetes is or people just starting out in the tech world just make a quick Google. I wouldn’t really recommend learning something like that out of the gate but if you are a little crazy like me it will open a lot of doors for you.

For the ones that are curious about learning Kubernetes here is what I recommend learning and some things that might not be so worth looking into right away.

Start learning

  • The basic paradigm that is Pods, Controllers, and Services
  • About authenticating with the cluster
  • The API’s

There is tons more to learn but this will get your feet wet.

Runaway and cry in a corner

  • Starting Kubernetes from scratch
  • Looking too deep at the masters
  • ETCD :(

These can all be fantastic things to learn and do but can also scare off even the bravest of people.

Now that I have gotten my little Kubernetes blog scratch itched lets talk about some life tips once you actually get into tech.

Be Humble

The people that know me personally know that I can be an arrogant asshole. I use to be worse. I would never admit that I was wrong and I always felt like I was the best. Don’t be that way, there are enough people like that in the industry already. Don’t be afraid to admit you don’t know something. Don’t be afraid to ask for help. And most importantly DO NOT be afraid to admit that something you did or some idea you had was wrong.

Find a great mentor…or two, or three

If it wasn’t for finding a great mentor I would still be that same asshole that I was when I was in college. They taught me that I was actually generally wrong. Sometimes you will get pushed away, not everyone wants to be a mentor but just keep trying until you find someone who is willing to take you under their wing. And when one of you parts ways at the company keep ties with them.

Learn anything and volunteer for everything

Be ok with failing and take it as a learning. Because I mostly just say yes I have been able to meet some amazing people and do some amazing things. I was able to go to the U.K. and present about Kubernetes at one of our offices (when I was the “fancy” engineer). I was scared to hell and almost didn’t do it but it helped in networking and just learning to talk with people. I agreed to mentor interns after being in tech only 6 months. I knew I would probably fail horribly but I said yes. I said yes because I knew I could learn from those failures.

Switch jobs, try new things

I can’t stress this enough to new people. Switch positions try new things out you never know what you are going to love until you do. Don’t be afraid to go on interviews and explore other options.

Continue to work on those side projects

I have failed at this hard lately and I am hoping to get back into app development soon but seriously work on those side projects. Most people that I have talked to are usually more interested in side projects more than your experience until you pass that 2–3 year mark.

Go to meetups and network

Some places don’t give you the opportunity to go to conferences to learn a new stack or skill but there are meetups everywhere and on almost everything in tech. Just go to some talk with people, learn, exchange information if you see fit. You never know when contacts with other people will come in handy and you never know what you might learn…also free pizza is a plus

You won’t like everything

Sometimes you will be asked to do things that you do not like. Sometimes it will scare you, sometimes you will want to just quit and walk away. Try to persevere through things, you might just end up liking something that you are doing.

Really I can keep going on and on with suggestions on what I went through over the past 2 years but ultimately it is up to you to learn from your own mistakes and work through your own hardships. I just hope you take some of these and keep them in the back of your head as you start your career.

--

--

Timothy Josefik

Vibes Software Engineer Process is my game so we all should do the same