Senior+ Software Engineer

Job Description

ConvertKit is a creator marketing platform built to empower creators to earn a living online. We help them own their audience and turn fans into customers. For makers, authors, chefs, musicians, athletes, and anyone else making a living by creating the culture we all love, there isn’t a better tool for reaching inboxes. More importantly, there isn’t a team more committed to helping creators earn a living doing work that matters.

We’re on a mission to help creators earn $1 billion using our SaaS marketing platform. We have always been 100% independent and 100% remote. We are proud to have built a product that our customers love, that 25,000+ creators use to earn a living, and we look for people who have enthusiasm and belief in our mission, vision, and values to join our team.

The Role

You’ll join a strong team of engineers responsible for building and supporting ConvertKit’s core application logic, including our email marketing, visual automation, and API products. This team tackles some of the ConvertKit’s most challenging aspects of the platform, like background processing systems which handle 100 million jobs a day. You’ll collaborate with other engineers, designers, and product managers to build sound, scalable features and refactor code to meet the demands of growth and scale.

To learn more about how our engineering team works, you can peruse our engineering blog.

Requirements

  • At least four years building software in a team environment or equivalent experience. Years of experience doesn’t always capture expertise, so we encourage you to apply if you can demonstrate you’re well versed in building software in a team environment
  • At least two years working professionally on a Ruby on Rails application or equivalent experience. Years of experience doesn’t always capture expertise, so we encourage you to apply if you can demonstrate a confident grasp of Ruby on Rails. Have more experience than that? Even better
  • Experience writing code that is accessible, scalable, maintainable, and performant
  • Experience working with background job processing environments – like Sidekiq and Redis
  • Experience writing complex queries for relational databases – we use MySQL.
  • Comfortable working remotely in an autonomous environment – you don’t mind asking questions and problem solving in public communication channels.
  • Able to work in US time zones – you don’t have to live in those time zones, but you have to be able to collaborate with your teammates during those times
  • Belief in our mission, vision, and values

To get a better idea of the type of work you’ll do with us, here are some examples of our recent work:

  • Enable queries to a replica database to handle varying levels of acceptable latency
  • Optimize our business logic to prevent unnecessary table scans in MySQL
  • Migrate data and queries from MySQL to Elasticsearch and ensure data consistency
  • Pitch an improvement to our Elastic Stack cluster architecture
  • Conceptualize Graph Theory and pinpoint where our logic may be overly expensive
  • Respectfully poke holes in a discussion about pub/sub implementation across our codebase
  • Set a dynamic Cassandra bucket threshold to prevent long hashing times
  • Upgrade our application to newer versions of Ruby and Rails!

Benefits

ConvertKit has standardized salaries based on position, no matter where you live. We have six engineering levels. For this role, we’re hiring at a level 4 ($174,000) or level 5 ($197,000). The level is based upon your experience, our interview process, and our engineering matrix.

Other benefits include:

  • Profit Sharing – Learn about profit sharing and compensation at ConvertKit
  • Four weeks paid vacation per year
  • $1,000 yearly vacation bonus for taking five consecutive days of vacation, fully unplugged from work
  • Equity in ConvertKit – when you join and when you help us hit company targets
  • 401k with a 5% match
  • 10 paid holidays a year
  • Two weeks of paid sick + mental health and wellbeing time per year
  • Up to six weeks of paid bereavement leave, medical leave, and disaster after six months of employment, two weeks of each paid leave in your first six months
  • 12 weeks paid parental leave and flexible scheduling in your child’s first year
  • $3,000 annual childcare benefit
  • Monthly medical benefits up to $1,600 a month toward premiums. Dental and vision premiums covered 100%
  • Gender-affirming benefits
  • $4,000 equipment allowance for your first two years, $3,000 budget every following two years (US employees only)
  • $3,500 annual learning & development budget
  • Four-week, paid sabbatical after five years with the team
  • The team gathers twice a year for fantastic virtual or in-person retreats

How to Apply

We know that interviewing can be a stressful and anxiety-inducing process (we relate!). We aim to make it as good an experience as we can, and part of that includes keeping you informed during the process.

Here’s what the full set of hiring steps looks like:

  • Complete your application, which includes two, short-answer questions
  • Phone screen with the hiring manager
  • Complete a short, 2-hour coding and writing assignment
  • Technical interview to discuss the homework assignment and your technical knowledge with two engineers on the team
  • Culture contribution interview with a product team member and another person from the team
  • Technical storytelling interview with two members of the team (at least one from engineering)

To get started, complete this application, including answers to the questions on the next page. We read every single application, and your responses to our application questions help put your experience into context.

ConvertKit is an equal opportunity employer. We value diversity in all of its forms, and we hire the best person we can for each role, no matter your personal background. Research tells us that applicants who are female or non-binary, as well as applicants who are people of color, are less likely to apply for roles they do not feel 100% qualified for. If you think you meet more than 50% of our requirements but fewer than 100% of them, please apply. We’re imperfect communicators, so think of our job postings as the starting point for discussion rather than proof that you shouldn’t apply.