Harvest is an independent software company that makes tools to help businesses run more smoothly. We believe that businesses only succeed by using their time intentionally. Our products support our customers through time tracking, reporting, and forecasting features.
Harvest started in 2006 as a team of three and has grown to today’s current team of almost 60 with Harvesters working from around the globe. We’ve worked as a remote team since the beginning and we continue to hire the right people for the job no matter where they call home.
We also strive to create a workplace culture where everyone feels valued, included, and heard. One important aspect of this is continuing to create spaces for diverse life experiences and work histories. If you are a member of a group that is historically underrepresented and disadvantaged in tech, business, and society in general, we want to meet you and we encourage you to apply.
The DevOps Team and Why We’re Hiring
The Harvest DevOps Team currently consists of the DevOps Lead, five Operations Engineers, and one Database Engineer. Collectively, the DevOps Team is responsible for keeping all applications running smoothly. The team has a wide range of responsibilities and lots of leeway to have fun in the process. Engineers on the DevOps team can self-select which projects to work on, choosing what interests them most.
We are currently looking for another Database Engineer to work closely with our Senior Database Engineer. We are designing new production systems in Google Cloud and this will be a good opportunity for someone who has specific experience designing cloud database infrastructure.
Database Engineer Responsibilities
Working alongside our friendly Senior Database Engineer, we’d be looking to you to guide our efforts in all areas of database design, performance, and reliability. You’ll champion performance, and encourage best practices, on all database projects across multiple teams. We rely heavily on MySQL to store our data, but we also use Elasticsearch, Redis, and Memcache currently.
Collaborating with product developers, and operations team members, you’ll be working to make sure our database infrastructure performs reliably. This typically includes translating application requirements to schema, examining indexes, query analysis, deploying clustering tools, designing backup solutions, investigating caching issues, and more.
You might see an opportunity to provide value to Harvest customers with enhanced data reporting functionality, and we’d be looking to you to collaborate with different teams across the organization to help roll new product features out.
Experience and Qualifications
- Managing MySQL infrastructure which is processing tens of thousands of queries per second
- Collaborating with developers to design great data models and schemas. If you can read Ruby code and wrestle with Ruby on Rails opinions, you’ll fit in really quickly here.
- Troubleshooting and tuning complex SQL queries
- Improving schema migration processes on large, busy tables
- Working with ActiveRecord
- Implementing caching strategies
- Deploying tools like Orchestrator for high availability
- Devising monitoring tools for database infrastructure
- Understanding cloud infrastructure
- Experience with the Go programming language and Kubernetes operators is a big plus, though not required
When You Apply
In your cover letter, please include responses to the following:
- Tell us a bit about yourself – what are your hobbies and interests outside of work?
- Why did you decide to apply to Harvest specifically?
- Let us know what you like about MySQL, or what you really dislike about MySQL. Perhaps you have some strong opinions about PostgreSQL? Do you have a story about an SQL query that was challenging to optimize? Share some thoughts with us that let us know you have spent quality time working with an Open Source RDBMS in a production setting, and we’ll know to pay careful attention to your application.
We are a flexible remote-first work environment, and we are looking for candidates who are able to work hours with a 2-hour to 3-hour overlap to Central Standard Time.