About Us and Why We’re Hiring
We’re YNAB (“why-nab”), a financial education company with a spendfulness app that helps people all over the world spend their money (guilt-free!) on what matters most to them. For over 20 years, YNAB’s proven method has been changing lives—and people can’t stop telling their friends about the difference it’s made for them. Think: debt paid off, marriages strengthened, goals achieved, stress erased, and sleep finally restored. But don’t just take our word for it—dive into our vibrant communities on Facebook, TikTok, and Reddit (really!) or skim through our glowing app reviews. You’ll quickly see why people rave about YNAB and why we’re so passionate about creating something that truly changes lives for the better.
YNAB’s software ecosystem includes apps for iPhone, iPad, Apple Watch, Android phones, and web. We have some big plans for our iOS app, and that’s where you come in! You’re the person we’re looking for if you’re passionate about building something easy and joyful to use, that—not for nothing—helps millions of people make their money more meaningful through intentional spending.
What we’re looking for:
We have three hard requirements for this role—you must:
Have at least three years of professional software development experience. (Five or more is better!)
Have at least three years of experience writing native iOS apps.
Live somewhere between the Pacific Time Zone (UTC-8) and the Central European Time Zone (UTC+1). (Think of a world map moving left to right from PT to CET—those time zones are all OK.)
Beyond that, we’re open-minded. We value a wide range of experience and skills and recognize every career path is unique. In case this helps you determine your interest and fit, here’s a glimpse of some of the tech you’ll encounter:
You’d be stepping into a mature codebase with native UI and app infrastructure combined with cross-platform shared business logic in a client-server setting.
The native side is a modern Swift codebase. Extensive use of Swift Concurrency. UIKit appears in older flows, but newer work is SwiftUI. A tiny Objective‑C layer remains for long‑lived utilities.
The app is highly modular, split into many internal Swift Package Manager modules, and grouped into Core, Application, and Presentation packages—so you don’t have to recompile the world when you change one feature.
Feature flags, “Labs” builds, and a dedicated “Debug” module makes it easy to experiment and roll changes out gradually.
We share cross-platform business logic through a packaged JavaScript library and Kotlin Multiplatform. It’s a big plus if you have a little experience with TypeScript or Kotlin.
The app is local-first: data is stored in SQLite through FMDB with a custom query layer and background‑sync engine.
Swift Package Manager manages dependencies and internal modules. Fastlane drives build configurations with Match handling certificates and provisioning profiles. Bitrise runs these pipelines. Around that sit a Makefile, Bash and Ruby helper scripts, pre‑commit Git hooks, SwiftLint, and some other niceties that run automatically.
There are multiple app surfaces: native App Intents, WidgetKit widgets, plus a basic watchOS companion.
While we have a QA team to help, quality is developer-driven. We have dedicated Unit and UI test targets, and run them automatically in CI. A home‑grown page‑object framework and many helper extensions keep UI tests readable and (comparatively) easy to develop.
If you like building consumer‑facing experiences across the entire Apple ecosystem—while working with modern Swift tools, thoughtfully shared logic, a nice CI/CD pipeline, and plenty of room to ship impactful things—you’ll feel right at home here.
A bit about life at YNAB:
That’s a super brief intro to what we’re looking for. But first, you need to know if you’ll even like working with us. We’d love to share more about YNAB, and then we’ll get into (many) more details about this role and how to apply (please read all the way to the end!).
YNAB started in 2004 and we haven’t taken any outside funding—we’re established, profitable, and in this for the long haul. We have one overarching requirement when it comes to joining our team: our original Core Value Manifesto has to really click with you. If you’re nodding emphatically while reading it, you’ll probably really like it here, and we can’t wait to hear from you!
We live our Core Values every day at YNAB, and we mean it when we say we are an equal-opportunity employer. We believe that a diversity of backgrounds, abilities, beliefs, and experiences is critical to our success, and 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, hard-working, and diverse team that loves working together to build something that matters.
We also work really hard, together, to make working at YNAB an amazing experience, and we’re (humbly) proud to have received many of Fortune’s “great place to work” awards over the last several years, including #1 two years in a row! We have a team full of truly exceptional people—the kind you’ll be excited to work with. We’d love to introduce you to a few of them!
Who you’ll be working with:
Our Engineering team is about 45 people strong, including a tight-knit group of six iOS developers. We operate in cross-functional teams, so you’ll get to work with awesome people from all different roles in 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 online 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 PM and Design. Our Product Managers are all about clarity and collaboration. They’re great at setting the stage, understanding needs, mapping out priorities, and inviting and valuing engineering input. And our designers are truly amazing, with the awards (including at least one actual Emmy®) to prove they’re good at designing stuff. YNAB designers 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. With both PM and Design at YNAB, it’s refreshingly not “just build this”; it’s “let’s figure out the best way together.”
How You’ll Work at YNAB
Still with us? Now that you’ve heard about some of your potential future teammates, let’s talk more about YNAB as a company. Here’s how we operate:
Responsibility and Empowerment
At YNAB, we trust our team. We respect each person’s expertise and judgment—and we empower you to make the calls you think are right. We know mistakes happen—and that’s okay. Taking smart risks and exploring new ideas is how we grow. When things don’t go as planned, we learn fast, adjust, and keep moving forward.
We’re big on collaboration, too. We aim for just enough structure to keep things moving smoothly, and when decisions need to be made, we make sure there’s a clear owner. But: You're never on your own here. Whether you need feedback, a gut check, or someone to jump in and help out, we’ve got your back. We take ownership of our work and our outcomes—together.
Live (Almost) Anywhere You Want
We’re a distributed team, so you can live and work wherever you want, as long as it’s somewhere between the Pacific Time Zone (UTC-8) and the Central European Time Zone (UTC+1). (Think of a world map moving left to right from PT to CET—those time zones are all OK.) Proximity doesn’t influence productivity, but it sure does help with communication sometimes. Just make sure you have a reliable internet connection. Like, a really good one. Please.
Work Four Days a Week
We’ve adopted a four-day work week (still 100% paid!) and rarely work more than that. There are occasions and seasons where things get busy and people put some extra time in—but then we encourage them to take some extra time off, too. We’re a product-led organization that takes our work-life balance seriously, so we all prioritize working hard and smart, but at a measured pace. We care deeply about what we do, but we also love our families and about 2,000 other things. We have perspective and, ultimately, we think it makes us—and our work—even better.
Flex Your Work Schedule
We’re fully remote, so a lot of our work is done asynchronously, but we love working together in real time when it makes sense. We try to schedule most meetings between 11AM–2PM Eastern Time, Monday–Thursday. Outside of your meetings, we trust you to set your own schedule by balancing your team’s needs with your own needs. You don’t need to ask for permission to take off early one afternoon to see the doctor, or be “active” on Slack if you’re working deeply on a project. We look at what you accomplish—not when or how long you're in front of a computer.
Take Vacation (Seriously)
We want you to take vacation—it’s good for you, and it’s good for YNAB. Most YNAB team members take three or four weeks per year, plus two additional weeks for our company-wide December Break. It’s important to get plenty of downtime to get out and do something. We’ll look forward to seeing pictures in our #office-wall Slack channel!
Meet the Team IRL
Some of our best work (and bonding!) is done in person. You’ll generally have the opportunity to meet with your YNAB teammates at least once a year, at a small-team work-focused meetup or at our company retreat. At the YNAB retreat, we love to catch up on spreadsheets and powerpoints in a Best Western conference room. Just kidding. (It’s actually hard to write that sentence, even knowing it’s a joke.) So far, we’ve gone to Costa Rica, a gigantic cabin in the mountains, a beach house in the Outer Banks, a ranch in Montana, Laguna Beach, Palm Springs, and most recently, Cape Cod. We work together, play together, and reinforce the bonds we’ve made as a team and company. Every time we meet up, we leave refreshed, motivated, and excited for the year ahead together.
Up Your Game
We’re serious about helping you improve your craft. It’s one of our favorite spending categories, and it’s the most important work of our managers. Think conferences, coaches, online courses and subscriptions, dedicated time away from work to learn something new… It's really up to you and your manager. We love to see our people grow!
Other Benefits
Our team is spread all over the world—mostly in the United States, but also in the UK, Canada, Germany, Brazil, Mexico, and several other countries. Team members who live in the US or UK are set up as employees, and those who live in other countries set themselves up as independent contractors. No matter where you live, you’re eligible for our generous paid family leave, vacation, holidays, and sick time.
If you’re in the US, we also offer fantastic medical, dental, and vision insurance, 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, NBD, we’ve got you covered!) We also have a Traditional and Roth 401(k) option, where YNAB matches your contributions up to six percent, and 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. You’re not a PF junkie? Trust us, it’s awesome.) If you’re in the UK, we also contribute six percent to your pension.
Competitive Compensation
At YNAB, we’re committed to equitable, market-driven, data-based compensation and we aim to offer a competitive benefits package to our team members. The starting salary for this role will be between $145,00 - $190,000 USD annually (with the top of that range reserved only for the most experienced candidates). If we decide to make you an offer, we’ll determine the most appropriate number based on what we know about your experience and competency for the role, and then we’ll make you our best offer and hope that you accept! If you join our team, you’ll also be eligible for a raise once a year and for our profit-share twice a year. (YNAB wins, you win—that kind of thing.)
A Few Final Tidbits
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!)
We love to celebrate with you when you complete something on your bucket list—AND, we love using your bucket list as inspiration for your best birthday present(s) ever.
We want you firing on all cylinders so we’ll set you up with a top-of-the-line computer and phone and will replace them regularly.
Did we mention that YNAB makes a huge, positive difference in people’s lives? You may not think that matters much, but then a few months down the road, you’ll realize it’s made your job really, really enjoyable. Don’t underestimate this one!
If this sounds like your ideal environment, read on because now we want to talk about you, and how you’ll play a big part in changing people’s lives.
Now back to you, our new iOS Engineer....
As our new iOS engineer, you’ll need to be a pragmatic problem solver who takes ownership of your work and thrives in a collaborative environment.
It takes the entire Engineering team to keep YNAB “the software” up and humming. Our engineers work together, which helps ensure we have sound designs and that our code and systems are efficient, maintainable, and as bug-free as possible. You’ll work with other engineers and QA, collaborate on technical strategies and methodologies, and review each other’s work. You’ll also regularly engage with other departments: with a Customer Support representative on reproduction steps for a bug, with a designer to iterate on a feature, or with a PM on the technical feasibility of product ideas.
At YNAB, solving engineering problems means communicating early, often, and thoughtfully across the company. You’ll need to meet our high standards for clear, empathetic communication, and address issues directly with a respectful and constructive approach. There’s not a lot of ego around here, even though we are very proud of the outcomes we achieve together, and this is reflected in our communication style.
On a day to day basis, you’ll:
Architect, design, develop, test, deploy, monitor, troubleshoot, and maintain code for product initiatives, platform roadmaps, and infrastructure projects.
Regularly work closely with PMs, Designers, QA, Marketing, and Support. You’ll:
Brainstorm with product team members on new features and changes to existing functionality.
Review UI/UX designs and offer product-related design suggestions and platform-specific feedback.
Work with PMs and designers to provide technical feasibility and effort guidance and break down designs into tightly scoped development plans.
Work with Support to investigate and solve tricky customer issues.
Collaborate with QA to ensure our combined testing methods give us confidence in our quality.
Periodically serve as the Mobile Release Owner, which means you’ll:
Shepherd the next version of the iOS app through the mobile release process.
Be the single point of contact for the release.
Drive solutions and enlist help from others for any issues or regressions found during the release flow.
Help monitor and maintain all aspects of our iOS platform. For example, you’ll:
Proactively fix production-related issues.
Keep an eye on system logs and crash reports.
Stay current on iOS trends and upcoming versions.
Apply security patches and update third-party libraries.
You may also:
Eventually have the opportunity to contribute to the Engineering team in an additional capacity. Our Engineering department features a unique peer-to-peer, non-hierarchical leadership style with separate roles for technical stewardship and people management.
For example, you could in time serve as a:
DRI (Directly Responsible Individual). A DRI is the point person for one area of our technology. A DRI may not be the technical expert in all aspects of their area, but they keep us pointed in the right direction. And, while we enjoy consensus, DRIs can make a call if necessary to keep us moving forward.
People manager. Engineering managers at YNAB don’t dictate priorities or assign resources. Instead, they serve as the connection between their reports and the company. Engineering managers often do not work on the same project or even in the same platform stack as the people they manage, so this role is less about giving technical feedback (we rely on peers for that) and more about having an affinity for the people side of things, being great at helping others flourish.
Both the DRI and Engineering Manager roles are part-time, only requiring a portion of each workweek. This allows DRIs and managers to remain individual contributors first and foremost—a key part of our structure and culture.
These additional roles are not promotions but simply different ways of contributing.
That’s a lot of bullet points, but let’s still say that your success as an iOS engineer at YNAB will depend on you being a systems thinker who loves to collaborate with others to solve problems. In doing so, you’ll need to consider a solution’s entire architecture and lifespan, and think deeply about the implications of various technical choices, including scalability, security, pragmatism, and future maintenance. You’ll measure your success not just by code shipped or isolated tasks completed, but by problems effectively solved and value added to the overall project. It’s this combination of ownership and teamwork that ensures that our applications and the different parts of our software work well together, ultimately improving the overall quality of our tech.
If this sounds like your kind of place, we can’t wait to hear from you.
How to Apply
Submit your application (including what’s listed below) by Sunday, May 4th at 11:59pm PT. Firm. It’s a real deadline. (And May the Fourth be with you.)
What to include in your application:
A resume. If you don’t have an updated formal resume, that’s fine! An informal overview of your work history and education is all we’re looking for.
A cover letter and answers to three specific questions. But not your typical cover letter. You have our permission to NOT be formal, just help us get to know you.
1. Tell us about a time when you were convinced you were right about something at work, but later changed your mind. What swayed you? Please answer in 1-2 paragraphs.
2. How have you honed your craft as a developer, and how do you see yourself continuing to develop your skills in the future? Feel free to share specific strategies, sources of information or inspiration, and/or your general approach. Please answer in 1-2 paragraphs.
3. Describe a situation where you improved or refactored some code. What was the issue, how did you approach it, and what was the outcome? Please answer in 1-3 paragraphs.
On page 1: We’d love for you to tell us a bit about yourself, what drew you to iOS development, why you’re interested in this role at YNAB, and why you think you’d be a great fit.
On page 2 onward: Please answer these three questions:
Answers to nine quick, informational questions, which you’ll see when you click Apply Now. These include things like your contact information, location, and relevant experience for the role.
A few tips:
If you meet our hard requirements and follow the application instructions, we promise that a real human will review your materials. With that being said, we hope that you’ll feel free to be genuinely yourself in your application; we want to get to know you!
Though we know it’s customary in some areas, please do not share a headshot anywhere in your application materials.
You’ll only be able to apply once, so make sure your answers are final before you click submit. You can always start your application, and then click the “Save application for later” link at the bottom to—you guessed it—finish it up later. (Note: that link will have an expiration date! Check your email for more information if you choose this option.)
Keep an eye out for a confirmation email from @pinpoint.email titled Thank you for applying to YNAB!—this means your application has been received successfully. If you don’t receive it, please try submitting another application.
Our goal is to make the recruitment and hiring process as accessible as possible. If we can help you with an accessibility need, email us at accommodations@ynab.com and indicate in the subject line that you’re applying for the iOS Engineer role. (Please note that we can only respond to messages related to accommodations at this email.)
Finally, please view the “Our Hiring Process” section of the JD to see an outline of what this hiring process will look like. It’s rigorous, but we also hear that it’s fun (truly!). We enjoy getting to know you throughout, and we make sure you have plenty of chances to get to know us, too.
We’re excited to hear from you!
P.S. If you’re not interested in this position right now, but know someone who might be, we’d appreciate you passing this along!