Senior Ruby Software Developer

  • Product
  • Indianapolis, United States

Senior Ruby Software Developer

Job description

We’re a small team of friends who build awesome software together. Expected Behavior is profitable, self-funded, and currently runs two SaaS products: Instrumental (an application monitoring platform) and DocRaptor (an HTML-to-PDF API).


We’re looking for an experienced developer who thrives in a fast-paced, highly-collaborative environment.


As a software developer at Expected Behavior, your responsibilities will include:

  • Building scalable and reliable product features

  • Participating in the product vision and roadmap decision process

  • Identifying and resolving complex production issues

  • Conducting design and code reviews

  • Testing code for robustness, including edge cases, usability, and reliability

  • Maintaining current knowledge of the latest development tools and techniques

You’ll generally work on a two or three-person team with frequent pair programming.  While we love working at the office and hanging out together, we also strongly support flexible schedules and working from home (or anywhere) when convenient. Meetings will be rare, as we communicate primarily via Basecamp and chat.


Most of your work will be in Ruby with some JavaScript. Our primary tech stack includes Rails, Postgres, Mongo, MySQL, Redis, React, Webpack, and many AWS products -- though we also have important projects in Scala, Node, PHP, and other tools.


Working at Expected Behavior

We experiment, examine, and change both our processes and our products frequently. We love solving challenging technical problems, such as how to process over two million streaming events every second or performing zero-downtime database migrations. We prefer collaboration to ego-driven decisions and self-direction to needing frequent oversight. We try to solve problems with technology and automation.


We believe the pursuit of personal happiness produces incredible work. Happiness means working on things that make us excited to get out of bed in the morning. It means working where we want. It means setting our own schedules so we can pick our kids up from school or start playing Fallout 4 as soon as we have it in-hand. We encourage quarterly vacations, at a minimum, and we frequently take a week off from our “regular work” just to explore new technologies that excite us.


In addition to a highly competitive salary, everyone here receives full benefits packages including healthcare, a 401k plan with matching, a standing desk, a top-of-the-line MacBook Pro (and peripherals and accessories), and a cell phone plan with the phone of your choice.


We value diversity. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

We will consider local candidates and have a relocation allotment for non-local candidates. This is not a remote job. Applicants must be U.S. citizens or permanent residents.

Job requirements

Experience & Education Level:

  • 3-10+ years of professional development experience; we value expertise and fit over the number of years you've worked

Must Haves:

  • Demonstrated strong written communication skills

  • Demonstrated experience with application development using Ruby, JavaScript, HTML, CSS, and an RDBMS

  • Demonstrated experience with full application lifecycle including prototyping, testing, development, review, deploying, and monitoring

  • Familiarity with data-driven application concepts including monitoring, data warehousing, reporting, and A/B testing

  • Familiarity with *nix environments

  • Willingness to learn new programming languages

Nice to Haves:

  • Prior SaaS or API development experience

  • Comfortable with the full development stack, from HTML to DevOps

  • Experience with MongoDB and NoSQL database design

  • Strong grasp of fundamental Computer Science concepts

  • Experience with high-throughput and high-availability systems

  • Familiarity with Application Performance Monitoring tools (Instrumental, NewRelic, AppDynamics, etc.)

  • Familiarity with cloud hosting providers (AWS, Google Cloud, etc.)

  • Experience with TDD/BDD

  • Experience with React and modern JavaScript build and testing tools