I started at You Need a Budget (YNAB) about a year ago as a software developer. I was super excited about joining the YNAB team, had a bunch of enthusiasm built up and and was very curious to see what things looked like on the inside. Why? Well, because from the outside, things looked really good. From a company, business, financial, product, job, culture, reputation, etc. etc. perspective, YNAB looked kind of amazing. The jobs page will give you an idea of what I’m talking about.

The Interview Process

Straight up, the interview process was long. Like, 9 steps long. Toward the end, I kept thinking “Surely this is the last step!”. There was the initial application with cover letter, a questionnaire, an initial “how’s it going, tell us about yourself call”, a couple of technical interviews and another chat or 2 with different members of the team. Ok, so, YNAB has a rigorous hiring process, to be sure. However, I now know, from the inside, that when YNAB posts a job, there are hundreds and hundreds of applications submitted. And, the quality of candidates is very high. So, I’ve learned the reason the process is so long is because they want to be sure they have the right people in place and they have the fortunate luxury of being very selective and careful. It was worth the wait.

The First Week

The weekend before I started I received a package in the mail. It was a welcome kit from YNAB, filled with YNAB stickers, general new hire info and most importantly, a collection of welcome letters from the team. Everyone on the team wrote a personal letter to me, welcoming me to YNAB and writing things that were specific to me, not just canned letters sent to everyone. What a way to start!

The first week of work was fairly typical. I had my first meeting with Chance, our COO. He had created an On-Boarding Trello board for me, to walk me through all the steps. Everything was very well documented and straight-forward. By the time I finished going through the Trello board, all my accounts were setup, benefits initiaited and I already had a pretty good feel of how to get around inside the company. Most importantly I was added to all the important Slack channels where most all of the commuication takes place.

I then met with Taylor, our CTO, who gave me a technical overview of the YNAB stack and product process. He was very welcoming and wanted to make sure I felt right at home and understood everything I neeed to. As I asked questions, he walked me through things to the point I felt pretty confident about how to get started and start shipping stuff.

He gave me my first tackle task, which was to make some changes to our Jenkins build process so we could scale out and move faster. I love that sort of thing so I was pumped to get going. He also setup a few meetings with a few other members of the dev team to dive deep on different parts of the stack. Those meetings proved very helpful in making me feel like I could get around and start working, for real.

People knew I was starting, they were welcoming and genuinuiely wanted to set me up for success. This was a nice start.

Getting to Work

Over the next year, I got down to business and worked on shipping stuff. All along the way, the rest of the team was willing to help when I bumped into issues or had a question. We had daily stand-ups, bi-weekly demos and retrospectives, and there was a weekly 1:1 with my boss, Taylor. Communication was good and the team was really clicking.

During this time, I mainly worked on mid and back tier pieces (you know, stuff the user doesn’t see) and focused on making things perform better and support feature development. But, I also got to do some stuff on the UI which was fun.

During this time, I really appreciated working with such a talented group of people. Everyone on the product team is super sharp and good at what they do.

Tech Stack

Something I was impressed by was the technical stack YNAB is using. We use a stack with enough diversity to keep things interesting, not sacrficing modern or fun.

  • Ember.js
  • CoffeeScript/TypeScript
  • Rails
  • Node.js
  • Stylus
  • PostgresSQL
  • SQLite
  • Heroku
  • Jenkins
  • GitHub (of course!)

Of particular note, our GitHub/Jenkins/Heroku build process pushes PR branches out to an isolated Heroku app for review. It’s awesome and I love it.

Tools

In addition to our tech stack we use all sorts of tools, mainly for communication and process:

  • Slack (of couse!)
  • GitHub Issues/PRs
  • Trello
  • Skype
  • Google Hangouts (for small meetings)
  • Zoom Cloud (for big meetings)

The Retreat

One of the things that intrigued me when I first read the job spec from YNAB was that the team did an annual “retreat”. This is where all the full timers get together and hangout for a week, get to know each other and have fun. Really? I’ve never experienced something quite like that before with coworkers. That sounds fun.

Well, it was. Really fun. We all met up in a ginormous cabin in the mountains outside of Salt Lake City and hung out for about a week. We did a little bit of work but it was mostly just having fun, getting to know each other and a time of refreshment. We went curling, played Laser Tag, played board games, swimmed, hot-tub(ed?), slacklined, flew drones and played Spike Ball. Oh, and we ate a lot of food. It was a seriously neat experience and I walked away feeling more connected with the team, refreshed and motivated!

YNAB is Legit

So, if you weren’t able to tell by now, I really like working for YNAB. I am so glad I applied for the job and have had the opportunity to be a part of the YNAB team.

I can truely say YNAB has heart and is a genuine group of talented people that really care about taking the stress out money and helping others. From the top down, everybody is skilled, friendly and cares. I couldn’t be happier to have joined this team as a developer and am looking forward to what is to come!