The Joys of a New Job

I'm a few weeks into a new job and I'm remebering what it's like to be the new guy.

Illustration of multiple smart devices being connected to a computer.
careerremote work

Posted on Sep 22, 2025 | 6 minutes to read

New people, policies, and processes

What’s the process for getting a pull request approved? Who do I ask about this issue? Do I have to work certain hours or stick to my regular 6:30 am to 4-4:30 pm schedule? How do I ask for time off? These and many other questions are things I’ve found myself asking lately. It’s strange being with a company for over five years and then transitioning into a new role at a different company. You go from knowing pretty much everything you’d ever need to know to not knowing much of anything.

My first week was mainly spent doing training courses and having orientation meetings, and so many of my questions regarding the company-wide policies and procedures were answered. Additionally, I’d say they do a fairly decent job helping new hires understand the product offering. Since we create software for IT departments and providers, this is pretty important as I can’t imagine many people have prior experience with the product before starting here.

At the end of my first week, I joined a meeting with my new team and got to meet everyone. They seemed pretty awesome and knowledgeable, so that was a good start. I grabbed my first task which was merely adding myself to the CODEOWNERS file. While this change is straightforward, learning how to open a PR in Bitbucket, request reviews and approvals, deal with flaky tests in CircleCI (I was used to Gitlab CI), etc., was the real challenge. It was a learning experience, as I’m sure it’s intended to be. Learn by doing!

New systems, code bases, and workflow

MacBook Pro that is partially closed

Here are some of the notable differences of software between my previous job and this one (new job vs previous job):

  • Bitbucket vs Gitlab
  • CircleCI vs Gitlab CI
  • Microsoft 365 vs GSuite
  • MacOS vs Linux
  • JS/Flow vs Typescript
  • Copilot plugin vs Cursor editor
  • Monorepo vs micro frontend architecture
  • Docker Desktop vs a custom, in-house container management system
  • Kotlin as the primary backend language vs Typescript/Node.js as the primary backend language (at least on the projects I used to work on)

After years of happily using a high-spec Dell running Ubuntu, I was given a MacBook Pro for my new job. So part of my first week was spent figuring out Apple’s terrible OS (and yes, it really is terrible whether you want to admit it or not). Buttons are reversed, hotkeys are different, and even the window buttons are on the wrong side — and no, you can’t switch them to the right where they belong. I also wasted some time on my first day trying to figure out why my work MacBook couldn’t connect to my third monitor. Turns out mine has an M4 Pro chip, and you need an M4 Max to connect to three monitors. Of course, the answer is always “spend more money” when you’re using Apple products. I really despise Apple as a company, and being handed a high-spec MacBook Pro only reinforced that. I’ve figured out enough about it that it no longer seriously impedes my work, though I still encounter the occasional annoyance.

Getting used to a monorepo for the frontend has been interesting, and I’ve been reminded of why I prefer micro-frontend architectures. Aside from the repo being massive which makes finding the file you need to change much more of a challenge, there’s also the problem of having so many developers opening PRs against the same codebase all day. This means your PR will quickly fall behind and is more likely to have conflicts. Thankfully, there’s some talk about moving to a micro-frontend architecture soon, and I’d gladly throw my hat into the ring to be part of that effort.

I’ve also been reminded that having deep knowledge of the product you work on is very important. This is something I’ve taken for granted more than any other aspect of my job…until now. Since I was not only an IT professional but also someone who wrote a desktop application to automate many of my repetitive IT tasks, establishing a general understanding of NinjaOne’s product was a breeze. Unfortunately, when you’re building and maintaining software products, that general understanding isn’t even remotely enough. What matters more for developers are things like: who owns which portion of the app, the history of many sections and features, dependencies between different parts, and what parts have caused the most problems. This knowledge takes time to accumulate, but I feel I’m well on my way.

It’s funny how, when you start work as a software engineer at a new company, your ability to write good code suddenly isn’t quite as important as your ability to adapt to new systems, codebases, workflows, etc. Being productive as a code slinger consists of so much more than just writing good code. I’ve been reminded of this a lot over the past few weeks. It’s okay, though. I’m figuring it out and feel like that moment where I go from being a timid newbie to a strong, senior engineer is coming this next week!

The grass IS greener, at least for now

Shoes in a green, grassy field

I loved my colleagues at Indeed. I thought I loved my job there as well, but the past few weeks at a different company have led me to the conclusion that I was in something adjacent to an abusive relationship while at Indeed. Now I’m in an environment where ticket count doesn’t matter, performance evaluations are no longer a top-of-mind concern creating anxiety, etc.

I’m having a difficult time letting go of my subconscious need to crush copious amounts of tickets each week. The best thing right now is that I have zero sense of impending doom regarding layoffs. I had this same situation during my first couple years at Indeed, but once they conducted a layoff, it became an annual occurrence that absolutely destroyed morale. We were all essentially just waiting for our number to come up, and it really sucked the life out of the company.

Now, I work for a company seeing incredible growth which means they are hiring like crazy. There’s not even a sliver of concern that I’ll be laid off right now. It really is like a weight has been lifted off my shoulders. I’m enjoying my new job at NinjaOne, the people with whom I work, and the product I’m building. God willing, I’ll be here for a long time!