← Back to all jobs
Ruby on Rails Developer
Bonjour, Ruby on Rails + React Developers!
Here's the deal; before our clients hire us, they've often already invested a lot of time, energy, and money into having custom web applications developed to help them solve some business challenges. They come to us looking for a team to provide dependable support and maintenance of their existing Ruby on Rails (and a handful of React) projects. We do this in the form of recurring retainers where we take care of small feature updates, bug fixes, performance improvements, chipping away at their technical debt, and helping them experiment as they navigate their forward as a business.
What we rarely do? Is spin up brand new web applications for them. We learned years ago that there is rarely a long-term client relationship with startups (as they tend to flop in 1-2 years). So, we stopped competing on those projects.
The tradeoff? We get to build lasting partnerships with our clients and have some influence on how they're planning for their life of their web applications.
So...if you're the type of developer that really enjoys shiny and new things (and/or pitching entire app rewrites)... this probably isn't the position for you.
If you're the type of developer that enjoys jumping into the deep end of complex projects, helping iterate and improve software, likes to take on responsibility and be given opportunities to help lead projects... then we should talk.
Our Core Values
🙋 PROACTIVE - We actively seek opportunities to improve our client’s products, our processes, and our abilities.
🐒 CURIOUS - A natural curiosity for the undiscovered results in remarkable work for our clients – and stronger connections for our team. We ask questions, learn, and aren't afraid to fail.
🤝 DEPENDABLE - We are invested in our work. We manage expectations. We support our clients and teammates. We hold ourselves, our teammates, and our clients accountable.
🕺 VERSATILE - We readily adapt to change and encourage innovation because our team and work are transparent and flexible.
🙃 DELIGHTFUL - We choose to set a mindful, positive tone that allows everyone to flourish.
We are a small team and wear many hats. In addition to the list of responsibilities below we also expect all of our team members to participate in our marketing efforts, whether that’s you writing blog posts, offering to speak at a conference, or coming up with ideas for new initiatives.
What you'll typically be focused on...
- Participating in short daily standups to outline what you completed yesterday and are aiming to accomplish today
- Jumping between ~2-5 client projects/week (sometimes a few each day)
- Keeping an eye out for your teammates. Perhaps you could lend them a hand to tackle a challenge and/or vice versa
- Getting your head wrapped around a subset of our client projects and their business goals
- Partnering up with your project manager to figure out how to best prioritize your work this coming week
- Collaborating with your team members to help with these projects (from planning, estimating, coding, testing, and bug fixing)
- Documenting the tricks and lessons you learn to share with the dev community on our blog
- Asking clients for clarification on requirements that you aren't sure that you understand
- Being an advocate for the long-term health and maintainability of our client's projects
- Saying, "I don't know (yet) ... but I'll help figure it out!" to clients and peers
- Improving the overall test coverage of our client projects
- Helping pick out music to play on the studio stereo system (unless you're remote)
- Performing code reviews on your teammate's pull-requests
- Googling weird error messages...a lot
- Sharing praise when someone on the team does something amazing
- Occassionally helping out with DevOps/sysadmin tasks
- Sending your code for peer review
- Stumbling across possible fixes in API docs, Stack Overflow, and Github issues
- Taking advantage of our flextime scheduling to swing by the gym, go for a run before the rain starts, or maybe sitting in the park with a book
- Rolling your eyes as you look at that code that wasn't working and realizing the silly typo
- Capturing your "lesson learned" to share with the team this next Monday morning
- Communicating directly with clients to help define features/user stories, improvements to existing applications
- Writing, refactoring, and improving our client's web applications and APIs (...we have a few internal projects, too)
- Sending clients a link to a staging environment so they can test out your changes before you deploy to production
- Deploying code to staging/production environments
- Petting the dog that swings by your desk to say hi (unless you're remote...do you have your own dog to pet?)
- Tracking time for our client work so that we can pay our bills
- Appreciating when your teammates share their failures with you
- Sitting down with interns/junior developers to hone your mentoring skills (or popping on a screen share if you're remote)
- Removing noise in the README files that we probably should have cleaned up a while ago
- Thanking clients when they provide great requirements that helps you out
- Sharing your hard lessons/failures with your peers
- Noticing inefficiencies in our existing processes and taking note to raise it at our next team meeting
- Adding useful information to the README files that will help your teammates
- Carving out a little time each week to try out some new tools
- Sharing useful links with your peers in Slack
- Preparing a 5-to-10-minute talk on how to use said new tool for our next company workshop series
- Helping us become a better version of ourselves than we were yesterday
- 3.141592653+ years of experience with Ruby on Rails
- Ability to convey your thoughts/ideas verbally and written...with a delightful (and competent) tone
- Experience collaborating with clients/stakeholders/decisionmakers/mimes. (bonus points if you can read their minds)
- Some general concepts of how SQL database work and how to navigate them
- Comfortable with a Apple Mac environment (maybe you even like to dabble with Linux?)
- Know more than enough Git to be dangerous
- Experience writing automated tests for Ruby on Rails apps
- Using Capistrano, Git, etc to handle Rails deployments
- Knowledge of HTML and understanding of CSS/Sass
- Knowledge of software design patterns and experience with implementation
NOTE: If you're not in the Portland area -- you might be our first full-time remote employee! We have much to learn about working in that way. We have some good ideas on how to make this work well -- and will be mindful to take healthy steps together. It'll not be perfect but we want to explore this with you.
Responses from freelancers, design studios or recruiters offering their services will be ignored.
After three months of full-time employment, we provide:
- Medical & dental insurance (PLANET ARGON pays 80% of premium);
- SIMPLE IRA with 3% of employee salary match;
- Paid vacation that increases with your length of employment; (15 days accrued the first year, 20 days after the first year, and 25 days after three years)
- Five days of sick time each calendar year;
- Six paid holidays yearly;
- Periodic bonuses dependent upon company and employee performance; and
- Participation in our flexible work time policies.
We will perform background checks and request professional references from finalist candidates.
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.