Quimbee is growing! We’re looking to add a new full-time member to our core team. This position is 100% remote (U.S. only). All you need is an internet connection and a quiet place to work.
Quimbee is one of the most widely used e-learning platforms for law students in the United States. Simply put, our mission is to help law students get A's in their law school courses.
Since 2007, Quimbee has helped over a hundred thousand law students prepare for classes and final exams. We provide law students with access to a comprehensive database of case summaries, video lessons, practice questions, a legal dictionary, and a growing library of content. We have become one of the most widely used and trusted sites for law students, serving both institutional clients, such as Yale University, American University, and University of Illinois, as well as thousands of individual law students.
We prefer a small and highly effective engineering team, so every new team member is vital to the success of the company.
We are looking for our first site-reliability engineer (SRE). As our SRE, you must have strong experience with Ruby on Rails based applications. Ideally, you're an experienced Ruby on Rails developer with a passion for operations tasks. Your focus will be on improving our deployment practices, maintaining, troubleshooting, documenting, and improving the systems that keep our Heroku hosted system running securely and smoothly with the least downtime possible. Eventually, we might also consider alternative hosting platforms in the future, and we expect you to help with that too. There will be a lot of monitoring, alerting, and prioritizing what is worth our attention and what's not. You're expected to investigate and mitigate single points of failure, performance bottlenecks, slow SQL queries, errors, or any other identified issues trying to solve them yourself or with the help of the other developers in the team.
You'll have the opportunity to help us define and shape processes, tools, and best practices in the context of our platform. You'll work closely with our team of developers to determine the current state of our platform as well as defining the future of it. Strong candidates will bring strong engineering and operations acumen, combined with the ability to move fast (and fix things).
We're looking for collaborative, detail-oriented people who are ready for a challenge. In this role, you'll be responsible for working on the critical task of ensuring our backend systems are rock solid and scalable.
You’ll join a small, 100% remote tech team. Your voice will be heard when we need to make new technical decisions as our product grows. We expect you to go beyond coding to give input on the product roadmap, design, and architecture.
We look for:
- A Ruby developer. You have deep software engineering experience and are comfortable writing code in Ruby as well as at least one other programming language.
- A DevOps advocate. You believe in the benefits of immutable infrastructure and understand what it takes to implement it from the operating-system level up to datacenter deployments.
- A data-driven engineer. You know the difference between an MTTR and MTTD and have the skills necessary to optimize them.
- A great process and code debugger. You feel comfortable leading robust and thorough root cause analysis (RCA) sessions to attack problems at their core and ensure they don’t recur.
- A self-starter. You take responsibility for projects from idea to completion, proactively seeking assistance as needed while guiding the work to successful outcomes.
- A versatile engineer. You know what you don’t know and feel comfortable learning new skills. You’re not ashamed of recognizing mistakes and take measures to avoid falling again.
- A team player. You share code ownership as much as possible. You don't mind fixing other people’s code or stepping in to help a teammate.
- A minimalist. You believe a new feature should be built only when the evidence supports it. You’re willing to push back when you believe this rule is being ignored or violated.
- A great communicator. You communicate your ideas, feedback, and criticism thoroughly, clearly, and courteously. You believe there’s no such thing as over-explaining or over-clarifying because that’s how miscommunication is avoided.
- A business-minded engineer. You have a deep understanding of the importance of building maintainable, efficient, clean code while balancing that with the urgency of the business needs.
Working with us, you could be asked to (solo or as part of a team):
- Create and maintain documentation about our platform and all the third-party services it depends on, defining a plan of development for failover mechanisms to improve our platform's resilience.
- Investigate issues reported by our automated systems or our customer support or QA teams, determine impact and root cause, then prioritize and document them, and solve them yourself when possible or sync with our devs team to solve it.
- Streamline our deployment process so that deployments are as smooth as possible both for our users as well as for our teams, considering the possibility of having to rollback.
- Educate engineers throughout the company on how to ensure their projects meet our reliability, performance, and security requirements.
- Reduce the server-side and front-end latency of our application to deliver a lightning-fast user experience.
- Optimize our hosting bill by increasing throughput and resource efficiency, while planning capacity for the next two years of growth.
- Determine and configure a core set of metrics and alerts to make sure our apps and servers are running smoothly and that we can react fast if something bad happens.
- Develop and maintain performance and load tests.
- Possible on-call responsibilities.
- Experience hosting apps in Heroku, monitoring, and scaling them up/down
- B.S. computer science or related field
- 5+ years of software-engineering experience
- 2+ years of site-reliability engineering (or similar) experience
- 1+ years of direct Ruby on Rails experience
- Strong experience profiling and optimizing applications for speed and memory consumption
- Strong knowledge of SQL in general and PostgreSQL in particular
- Experience with at least one programming language other than Ruby and JS
- Extensive Git (or similar) experience solving complex merging conflicts
- Know how the web works under the hood: TCP, HTTP, DNS, IP, caches, etc.
- Native fluency in English
- U.S. based
- Hosting apps in AWS or similar, monitoring, and scaling them up/down
- Experience working on a SaaS application or with subscription-based businesses generally
- Experience contributing to Open Source
- Experience working on a remote team
- Join a small team who loves what they do.
- 100% remote work for unlimited flexibility.
- A competitive salary.
- Untracked paid time off and sick leave.
- Healthcare coverage (including dental) for you and your family.
- 401(k) with 3% company matching.