Aha! engineering is a mid-sized, fully remote team. We are centered around North American time zones so we can collaborate during the workday.
Our core values
The Responsive Method: These 8 principles drive how we operate Aha! and serve customers and employees.
- Moving quickly: We ship code multiple times a day. We believe in getting new features in front of customers and iteratively improving as we learn what works and what does not.
- Product over process: We want our engineers to have the time and focus to solve complex challenges. We aim to minimize the overhead introduced by heavyweight processes and excessive meetings.
- Collaboration: We each bring unique experiences and skills to the table. Working together to share that knowledge benefits the entire team and helps us produce the best results for our customers.
Who we're looking for
We believe that being a kind person who elevates the rest of the team is just as valuable as writing great code. We look for strong problem-solving skills and experience working on important functionality for a cloud-based product. We need people who are humble, eager to learn, and always willing to help others learn as well. We want to work with people who enjoy picking up a problem and solving it, regardless of the technologies and techniques involved.
Most of our features involve writing significant Ruby on Rails code, so we need meaningful past experience working in a Rails codebase. We also write a lot of React, but we are happy to help you learn that part on the job.
Our sole product is the Aha! web application. It is a single-instance, multi-tenant Ruby on Rails monolith supported by Postgres (database), Redis (background jobs), and memcached (Rails caching). We also run a Node.js webserver to support collaborative editing and real-time updates. Our application is hosted on Amazon Web Services and architected with ECS for reproducibility and scalability.
We utilize a growing amount of React on the frontend to build rich client-side experiences, including our fully collaborative text editor and our slide presentation editor. We balance the strengths of both technologies — Rails for its conventions and simplicity and React for more powerful interactive functionality.
We embrace new technologies that help us deliver a lovable product, but we also remain cognizant of the maintenance overhead that a new library or platform brings. We solve the problems in front of us rather than prematurely optimizing to address issues that may never materialize.
We do most of our collaboration and planning in Aha! itself, which we find especially rewarding. We also utilize GitHub, Slack, and GoToMeeting for video calls.
What you’ll be doing
We work on a broad range of features across the full stack. Your work will include:
- Implementing new features for our users, touching each layer of the MVC as needed
- Building deeply interactive reporting interfaces using React
- Working proactively with product and UX to refine and iterate on specifications as the feature takes shape
- Investigating slow performance and optimizing queries to ensure Aha! is snappy and satisfying to use
- Interfacing directly with users to quickly squash bugs as part of our regular customer support rotation
- Documenting components in our style guide to help drive consistency
If this sounds appealing, we would love to hear from you. A real human reviews every application, so please use the form to help us learn more about you.