Full-Stack Developer

    Published • Application due

    Tofugu is looking for a full-time full-stack developer to help maintain and build features for WaniKani (our kanji learning application) and Tofugu (our blog). We will accept applications until Sunday, September 8, and then begin our hiring process on September 9 (for more information on our hiring process, please see our jobs page).

    “Full Stack” can mean a lot of things, but we are looking to hire someone who leans slightly towards the “front-end” spectrum of “full-stack,” has a high level of proficiency in Ruby and Ruby on Rails, and loves working in a team environment. As a generalist, you have deep-but-not-as-deep experience with various front-end technologies and languages, and a working knowledge of how to make it appear as a working website on the internet. Your experience and abilities should be at a level where you can immediately make contributions and take ownership of projects.

    Your work will have a direct impact on potentially millions of people studying Japanese. You may even get thank you cards from appreciative customers. We want to build the things that take a student to the point where they are able to read a book in Japanese. Hiring you will help to accelerate those goals. You will be the fourth member of our development team.

    About You

    • You love, live, and breath Ruby and Ruby on Rails.
    • You are very good at JavaScript, HTML, and (S)CSS.
    • You have real-world experience with modern Javascript frameworks, especially React or Vue.
    • You can make your way around relational databases (we use PostgreSQL), memory stores (Redis), creating and consuming RESTful APIs, version control (Git/Github), and various cloud services (Heroku and AWS).
    • You think test-driven development is where it’s at. We roll with RSpec and Capybara.
    • You have a familiarity with a variety of other programming languages. Bonus points if you have a familiarity in the language called Japanese. Familiarity with WaniKani doesn’t hurt, either.
    • You work well with a team and put the team above yourself. People around you become better at their jobs when you’re around. You enjoy pair programming, contribute to meetings, are happy to do code reviews, and you’re both coachable and a good coach.
    • At the same time, you’ll also need to be skilled at working alone. You should hold yourself to a high standard even when nobody is watching. You should be able to make good decisions, too. You understand and embrace the responsibility that comes with freedom of judgement. When you make a mistake, you own it, learn from it, and help others to learn from it, too.
    • As a company that has embraced a remote culture, you’ll need to be able to work both alone and asynchronously with other members of the team. That means excellent written, video, and in-person communication. You are good at simplifying difficult concepts—for all ability levels—without losing its meaning in the process.

    The Work

    Here are some real examples of work we’ve done recently as well as some of the projects you’ll probably work on. We want to give you an accurate idea (both the boring and the exciting) of what exactly you’ll be doing.

    • Build an updated version of the public RESTful API for the WaniKani community.
    • Ongoing modernization of archaic components of the WaniKani application.
    • Create a program in WaniKani that teaches the user verb and adjective conjugation.
    • Develop a WaniKani prerequisite helper that teaches users hiragana and katakana.
    • Updating our subscription and transaction code to make sure we can be in compliance with the new SCA rules in the EU.
    • Squashing customer bugs like typos, minor Javascript bugs, and stuck reviews.
    • Build the features that get us closer to our next goalpost: help the user to read a book in Japanese.

    You’ll have front and center seat on our impact on the Japanese learner.

    Working at Tofugu

    The way Tofugu works is a bit different from a lot of places. It’s not a fit for everybody. Before you apply, please consider how we work and whether or not it’s a place you would thrive.

    Tofugu works on well-defined projects over a 6-week cycle. Every cycle, you are part of a small team (usually 2-3 people) that’s responsible for getting the project done.

    You and your team have the ability to decide how to get the project done, what’s important, what needs to be hammered out, and just about everything in-between from start to finish. In other words you won’t be micromanaged, you’re trusted, and you and your team will work together to figure out how to arrive at the station on-time.

    During cycles, most people and teams are just given a single project to work on. This means you get total focus. When the cycle is done, the project is done. If it’s not done, there is no extension. Every cycle is a strict schedule, but the perk of that is every cycle is also a clean slate. In a world of backlogs, feature-creep, and non-stop fires to put out, we find this to be quite refreshing. We think we ultimately make more tangible process for our users as well.

    Between 6-week cycles, there is a 2-3 week “cooldown period.” You can use this time to fix bugs, work on pet projects, make improvements to things you think need improvements, and so on. This dynamic between six weeks on and two-ish weeks off is a lot of fun. Because progress is clear, you can actually see and feel that progress. You are completing a project all the way to its conclusion in a six week period. You’re never stuck in feature-creep hell.

    To learn more about the work processes we’ve adopted, you can read about them here. At some point we drank the Kool-aide that is Basecamp and have been iterating from there. Make sure you’re willing to drink the punch, too.

    Outside of work, we also value all of the team having a life. We’re looking for people who work forty hours a week, who won’t martyr and burn themselves out every two months by working insane hours. Instead, you just get your work done in a reasonable amount of time because you just “do the hard work.” There’s no fuss and you make progress at a consistent, constant rate. When you’re on, you’re on. When you’re off, you’re off. You spend time with family, doing your hobbies, sleeping, and all the things that recharge your batteries.

    If this sounds like you, we’d love to talk!


    • Job Type: Full-time
    • Compensation: Industry competitive salary and benefits. Please see our jobs page for more detail.
    • Work Location: Remote or from our Portland, Oregon, USA office

    To apply, please send a cover letter (pdf) letting us know why you are the one to do this job. Also include a resumé (pdf) with relevant work experience. You can email your application to, and if you want to help us out in terms of our own organization, use the subject line "Full Stack Developer: Cornbo". Thanks!