Senior Software Engineer, Ruby on Rails - remote

Wildbit
Posted 3 years ago

Wildbit is the team behind Postmark, Beanstalk, DMARC Digests, and People-First Jobs. We’re self-funded, profitable, and have been working remotely since 2000. We believe that businesses are human, and our team is committed to proving you can grow a profitable company while prioritizing people first. We exist to support our team, and our values and products reflect the care and intention that we operate with. You would be joining a team of ~30 people, where you will initially be spending your time becoming an expert on the Postmark product.


Our technology
Postmark is Wildbit's largest product, a distributed email-as-a-service system that is capable of processing 1000+ emails per second. We make it easy for our customers to integrate email communication into their applications via a fully-featured REST API, as well as through the standard SMTP protocol. Our Ruby on Rails and JavaScript stack powers the customer-facing product, which includes a web interface and developer APIs. In addition to Rails and React, you will also be working with MySQL, Elasticsearch, RabbitMQ, New Relic, Bugsnag, and Cloudwatch, as well as interfacing with our internal C# APIs.


Our engineering team
Engineers at Wildbit are given a tremendous amount of autonomy to guide the technical direction of our products, but with great power comes great responsibility. 🕷️🕸️ The team holds themselves to a high standard for the reliability, maintainability, and usability of code they write and the systems they design — all in service of creating the best possible experience for customers. As such, engineers are encouraged to be product-minded, considering extensible design patterns to enable building the best solution for today, while planning ahead for future growth.


About you
You will be a great fit for this role if you have a strong technical point of view that is coupled with pragmatism and an ability to execute. We're a remote-first team that believes in the value of "deep work," so you should be very comfortable with written forms of communication. We respect and care deeply about each other as individuals, so though we are seeking a self-motivated teammate, we're also looking for someone who will support and encourage others to do their best work.


Ideally you will have:
  • Played a significant role in designing, building, and operating complex Rails applications, and have had to account for the scalability, reliability, and performance of those applications
  • Experience with managed cloud infrastructure (eg. AWS, GCP, Azure, etc.) and developer tools for CI/CD, builds, containers, and testing
  • Passion for guiding systems and software towards improved standards and practices. (We're big fans of Twelve-Factor App.)
  • (Nice to have) Familiarity with email-specific topics, such as SMTP, SPF, DKIM, DMARC, etc.

What you will be responsible for
  • Designing and implementing software that strikes the right balance between delivering on business needs and delivering the quality of code you are proud to ship
  • Guarding the health of our systems — you’ll be part of an on-call schedule and help mitigate system abuse by spammers
  • Being a steward for developer standards, best practices, and quality
  • Advocating for improving our developer tools and workflows
  • Setting clear expectations around your work, knowing when to break down nebulous tasks into manageable parts, and communicating that to your teammates
  • Being a partner to Customer Support, Product, and Design, and collaborating with those teams cross-functionally

What are we looking for
  • Someone with the ability to look at problems objectively before coming up with solutions - As a small team, we are constantly having to take into account a number of possible non-functional factors when designing software, eg. complexity of work, impact to customers, monetary cost, business urgency, etc. Considering these factors is a key part of informing our team goal setting and prioritization process.
  • Someone with the ability to approach work interactions with kindness - Our team is a group of people who carry a lot of respect and trust for one another, which is rooted in kindness. Kindness is constructive and candid (and perhaps not always "nice"), and implies a genuine desire to see others succeed. (Here is somebackgroundreading if you are unfamiliar with this concept.)
  • Someone who thrives on digging into complex systems to make them less complex - Postmark is a product that has been around for a decade, so it should come as no surprise that there are certain areas of the system that are less known and less robust than others. We are steadily addressing these areas as the need arises, and are bringing them into more modern design patterns and tooling.

The interview process
So you know what to expect, this is the structure of our interview process. It is conducted entirely remotely, via email and Zoom audio and video.

  • Introductory call (30m): This call with one of our recruiters will assess for a mutual fit for the role
  • Engineering call (1h): Meet an engineer you’d be working with and have in-depth conversations about building software, working with a team, and decision making
  • Asynchronous technical assignment (~2h): The assignment helps us understand the thought process around your problem solving, as well as how you synthesize written information
  • Assignment review (45m): This is a live working session with someone from the engineering team to dig deeper into the details of your technical assignment and how you collaborate
  • Design and Product calls (2h split across separate calls): You’ll meet with our head of product and a designer from our team to discuss culture, our customers, and remote work
  • Founder call (45m): Meet our co-founder and CTO, Chris Nagele, to learn more about where we're headed as a company