Humbly Confident Senior Full Stack Developers
You Need A Budget · Remote
About Us and Why We’re Hiring
We build “You Need a Budget,” the best budgeting software and educational resources around. (Those in the know call us YNAB, which is pronounced “why-nab.”) For more than a decade, people have been buying YNAB and then telling their friends what a difference it has made in their lives. Google us, or read some of our reviews on the app store, and you’ll see what we mean. We love building something that has a huge positive impact on people’s lives.
We have big plans for our entire app ecosystem, including our web app and API. All of those plans necessitate changes on our back-end that runs on Rails/Postgres and our front-end Ember app written in TypeScript. That’s where you come in!
We have one overarching requirement when it comes to joining our team: our Core Values Manifesto has to really click with you. If you’re nodding emphatically while reading this, you’ll probably like it here, and we can’t wait to connect with you!
Of course, we have some firm* requirements too, like five years of professional full-stack web application development experience. For us, this means you know the server-side really well and have some client-side experience, or you’re an absolute expert on front-end development and have some server-side know-how, or you have extensive expertise in test infrastructure and automation for SaaS apps.
*Well, firm-ish. If you know you’re a great fit for this role but fall a little short of the five-year requirement, we encourage you to go ahead and apply. We don’t need you to be the perfect candidate on paper.
On a similar note, we know imposter syndrome can be a powerful force, and may discourage fantastic people from applying. Please apply anyway. Many of us here have it too, so you’re in good company.
YNAB is hiring four people for this position: three to focus on product development, and one on technical leadership for our QA team.
Okay, let’s talk about life at YNAB, and then we’ll go into detail about what we’re looking for.
Who You’d Be Working With
Our development team is about 30 people strong, and we frequently operate in cross-functional teams, so you’ll get to work with awesome people from all different parts of the company.
Regardless of their varied interests, all of our developers have one thing in common: They are a joy to work with. You won’t find heated arguments and raised voices here. We save our competitive spirit for YNAB’s external competitors (or the occasional lively board game session), but internally we build up our teammates and celebrate their successes. We all love to program and solve problems in creative ways, and we regularly take time to geek out and show each other something cool we built or found to make our lives easier.
And of course, as a developer, you’ll work closely with our amazing designers. They have the awards (including at least one actual Emmy®) to prove they’re good at designing stuff. More importantly, they welcome feedback and suggestions during the development process and are happy to tweak an interaction if you tell them it will save you significant development effort.
How You’ll Work at YNAB
We also work really hard, together, to make working at YNAB an amazing experience, and we were (humbly) proud to be named Fortune’s #1 Best Small Company to Work For the last two years. We have a team of truly exceptional people—the kind you’ll be excited to work with. Here’s how we operate:
Responsibility and Empowerment
YNAB appreciates, respects, and trusts the expertise and judgment of our developers. We empower them to do what they think is right.
We also work collaboratively. We continuously seek the right amount of structure and unity necessary to maximize productivity. Where it makes sense, we designate someone to make a call.
Even though our developers are right a lot, it's okay to make mistakes here. Exploration and calculated risks are vital to velocity and growth. We freely admit when we're wrong. If something doesn't go as expected, we learn, bounce back, and make corrections.
You won't be alone; others will be there to help, review, reassure, and back you up. We own our processes and collective outcomes as a team.
Live (Almost) Anywhere You Want
We’ve always been a fully remote team, and have people all over the world. For this role, you’ll need to be located somewhere between the Pacific Time Zone (UTC-8) and the Central European Time Zone (UTC+1). Wherever you are, just make sure you have a reliable internet connection.
No Outrageous Hours
We want everyone to have a full life outside of YNAB, and we seldom work more than 40 hours per week. There have been a few occasions where things got busy and people had to put some extra time in. But then they took some extra time off, so it all balances out. We work hard and smart, but we’re in this for the long haul.
Take Vacation (Seriously)
We want you to take vacation. In fact, we have a minimum vacation policy of three weeks per year. Five weeks feels about right (plus two extra weeks for our company-wide December break). It’s important to get plenty of downtime and get out and do something. We’ll look forward to seeing pictures of your adventures in our #office_wall Slack channel.
The YNAB Retreat
When the pandemic isn’t keeping us from traveling, we get the whole team together once a year to catch up on spreadsheets and powerpoints in a Best Western conference room. Just kidding. So far, we’ve done Costa Rica, a gigantic cabin in the mountains, a beach house in the Outer Banks, a ranch in Montana, and most recently, Laguna Beach. We do really fun things at these retreats, but the highlight is inevitably just being together and having a blast.
Up Your Game
We’re serious about helping you improve your craft. We budget for it (hey-o!). Think conferences, Lynda/Skillshare subscriptions, books, and dedicated time away from work to learn something new. We love to see our people grow.
International is Absolutely Okay
Our team is spread across the globe, including Switzerland, Mexico, Canada, Brazil, the United Kingdom, and all over the United States. We set up team members in the US and UK as employees, and those in other countries as independent contractors.
As mentioned above, we have some time zone restrictions for this role, but as long as you're between UTC-8 and UTC+1, we’re good!
We offer excellent health, dental, and vision insurance for our US employees, where we cover 100% of the premium for you and your family. No need to check your vision, you read that right—100%. Although if you did need to check your vision, we’ve got you covered!
We also have a Traditional and Roth 401k option. YNAB matches your contributions, up to six percent of your paycheck. Matches vest immediately. (Are you a personal finance junkie like our founder Jesse? He set up YNAB’s 401k to have the lowest fee structure possible, where all plan costs are paid by YNAB, not your retirement nest egg. The investment funds available are fantastic, passively-managed, ultra low-cost index funds. Not a PF junkie? Trust us, it’s awesome.)
For UK employees, we also contribute six percent to your pension.
Typically, the starting salary range for this position is $131,000-$162,000 USD annually. We consider raises every year, and have a bi-annual profit-share bonus. YNAB wins, you win—that kind of thing.
- Once you start, we DEMAND (in a friendly, ALL CAPS IS YELLING way) that you fill out your “Bucket List” spreadsheet with 50 items. (That’s harder than it sounds!)
- The bucket list really helps in deciding what we should give you for your birthday and the holidays.
- We’re all adults. There’s no need to punch a clock or ask for permission to take off early one afternoon to go see the doctor. We look at what you accomplish, not how long you sit (have you tried standing?) in front of a computer.
- We want you firing on all cylinders so we’ll set you up with a top-of-the-line computer and will replace it regularly.
- Did we mention we make a huge, positive difference in people’s lives?
If this sounds like your ideal environment, read on because now we want to talk about you. You will play a big part in building something easy and joyful to use that helps millions of people discover budgeting as an essential financial and life-planning tool. You will change lives.
You, Our New Senior Full Stack Developer
You’re a full-stack developer with at least five years of experience building, shipping, monitoring, and maintaining SaaS apps at scale (not just websites).
You’re an expert in at least one modern server-side framework (Rails, ASP.NET, Node, Django, etc).
Some client-side experience is required as a minimum, meaning you know enough HTML/CSS/some-client-side-framework to get stuff on the screen matching a designer’s spec. We work in small, cross-functional teams where you will likely find yourself responsible for implementation on both the back-end (Rails and Postgres), as well as the front-end (using Ember or Vue and written in TypeScript).
If your focus has been more on front-end development, then you're among the best of the best with a client-side framework such as Ember and also have some server-side depth.
Or you're the sort of full-stack developer who obsesses about software quality and enjoys using your development expertise to build the kind of efficient automation infrastructure that gives the entire team leverage to deliver every release with high confidence.
You’re not necessarily the “Ops” person where you work, but you certainly understand the infrastructure well enough to aid in architecting and maintaining scalable solutions. We host on Heroku, so experience there is a bonus, but experience with AWS or other popular IaaS/PaaS is just fine.
You’ll do things like help vet and improve our server-side layer, implement new features, integrate with third-party APIs, and shepherd our application. We might have conversations that start like this:
- “How can we be certain that our application is going to scale as we grow? How did the other apps you worked on handle similar load conditions?”
- “We want to expose these parts of the API to 3rd party developers. Will that API need to differ from our internal API, and if so, how?”
- “We want to make it possible for users to sort their transactions in a new way, and we are thinking of using drag-and-drop to make that possible. What changes on our client and server will be necessary to accomplish this?”
- “We need to integrate a new data aggregation partner to connect bank accounts and import transactions. How do we set it up so that we can reuse most of that work if we bring on another partner later?”
- “Our developers spend a portion of their time building out the tests that accompany functional changes. What improvements can we drive in our technical infrastructure to make this as efficient as possible?”
You’re our person if:
- You are an excellent developer that can adapt to new languages quickly.
- You write code that is easy for other programmers and your future self to understand and use.
- You have plenty of war stories to tell about the last time you launched a big SaaS application, or weathered a massive spike in load, or recovered from an outage.
- You know your way around SQL and relational databases. If the database layer turns out to be the culprit behind an issue, it’s not a black box to you. (Experience with Postgres is a bonus.)
- You have an understanding of algorithms and data structures beyond arrays and “for loops.” That doesn’t mean you have to be a computer science PhD or even that you have to know “Big O” notation, but you should know when to use a Dictionary/Map, and why finding an element in a sorted array is faster than finding an element in an unsorted array.
- While perhaps not a security specialist, you are aware of how websites and services can be exploited, are security conscious while you code, and protective of customer data and privacy.
- You have excellent debugging skills. You know how to find problems and how to architect apps so that problems are discoverable in the first place.
- You have a quality focus and are great at crafting efficient automated integration, API, and UI tests.
- You already use and love YNAB. (Not a requirement, but we’ll give you bonus points for this one.)
Examples of things you might work on at YNAB:
- Integrating with 3rd party APIs like Aggregation Providers, Payment Gateways, and Analytics Services
- Profiling our most common API calls using tools like pganalyze or Sumo Logic and acting on the information to reduce response times
- Helping improve our public and private APIs to make them easier for external and internal developers to use
- Working with our external database and security consultants to make sure we haven’t missed anything
- Installing monitoring tools like Rollbar to help us detect client-side and server-side issues
- Updating behavior or adding a new UI component to our web app
- Writing automated tests for new features or improving our existing test suites
- Submitting and reviewing PRs in GitHub, collaborating in Basecamp, and jumping on a Slack call to get an extra pair of eyes on a gnarly bug
YNAB is an equal opportunity employer. We believe a diversity of backgrounds, beliefs, abilities, and experiences is critical to our success. We are passionate about creating a welcoming, supportive, and collaborative environment for all employees. All are encouraged to apply as we continue to grow a smart, experienced, and diverse team that loves working together to build something that matters.
How to Apply
Please apply here by 11:59pm PST on January 16, 2022. Firm. It's a real deadline. The kind you love.
We're excited to hear from you!