Staff Software Engineer - remote

BuildBook
Posted 1 year ago
About the Job

Our core technology is Ruby on Rails and ReactJS on the web, along with a hybrid React Native mobile app.  You’ll be joining us in a period of rapid growth, so your primary directive will be to roll up your sleeves and build stuff.  

Our goal is for our product to be invisible to our users - it shouldn’t get in the way of their work, it shouldn’t be confusing, it shouldn’t require training.  That requires us to be very considerate of our experience, very collaborative in how we build our software, and very close to our customers through the sales and support process.

You’ll work closely with business, design and customer support to craft the future of our product line, and occasionally spin up wholly new products and codebases.  At a minimum, you’ll need to be able to use your experience to work through ambiguity, identify issues, and offer suggestions.

Here are a few concrete things that we’ve done lately and a few things on our short term roadmap to give you an idea of what kinds of things we’re up to and what you might do:
  • Integrating our internal calendar system to sync with Google Calendar and others.
  • Using our APM software to monitor and identify a bottleneck in a specific API endpoint and resolve it through various possible techniques.
  • Addressing a user-reported bug in our React Native app where the keyboard, when it was active, was pushing some content outside of the accessible viewport.
  • Using Twilio’s Conversations API to create a fully custom, integrated chat experience in our app for people on a project to talk with one another.
  • Adding the ability to drag and drop to rearrange items in a to-do list.
  • Identifying an issue in an open source project we rely on, fixing it, and getting that fix approved and merged.
  • Adding in robust CSS3 and JavaScript animations to provide users with more fine-grained and delightful UI feedback.
  • Spinning up a big net new feature behind a beta flag and slowly rolling it out to a test group.
  • ...and so much more.
Our team is small but growing, and our roadmap is full of so much more than we could ever build right now.  In joining us, you’ll have an outsized impact on the success of the product and company. 

About You

We’re looking for someone who is prolifically productive - which generally means you’re quite comfortable with Rails and/or React (or something similar, like Vue), you know how to put things together, and you can get things done. 

We’re looking for someone with experience creating and shipping software in a production environment, and can show us or talk to us about it.  We don’t do whiteboard interviews or algorithm lottery questions. Instead, we think the strongest indicator of whether you can do this type of work is whether you have successfully done this type of work before.  And for this role, we’re going to ask you a lot about your past experience building products.

Our company is fully remote, and has been since before COVID.  Our only current limitations on remote work are that you reside in the continental United States and mostly work during US time zones.

We’re looking for someone who works and communicates well with others.  Building software is a collaborative process;it requires a diverse team with different types of experts who all work together regularly (and sometimes have to disagree and commit).  Teamwork like this is even more important in a distributed remote environment, where effective collaboration is a bit more challenging.

We’re looking for someone who has technical leadership experience or the strong desire to be in a technical leadership role. 

To be considered, you’ll need…

Staff Engineers at BuildBook play the role of technical leaders on our teams - we view them as mini CTOs.  The job is to know and grow a product or featureset, as well as the small team of engineers that work on that project.  Technical leaders have the autonomy to make day-to-day engineering decisions on their own, but should also understand when to collaborate with other teams or reach out for help. The job is to collaborate with their team to produce an amazing product and solve real-world problems for our customers.

Staff level technical leaders are still Individual Contributors, and while they might be providing some amount of mentorship to their team, they aren’t people managers and won’t have direct reports.  They tend to lead through experience, the results of which are seen in the amazing features and products their teams produce.  They’re more of a maker than a manager.

Successful tech leads at BuildBook tend to be people who have a good bit of experience in building products from start to finish in a collaborative, cross-functional team environment.  You’re comfortable with a little ambiguity sometimes and can use your past experience to guide things from raw concepts to buildable products.  You understand that good engineering decisions are about finding the best path forward given the constraints you’re working with. 

Our requirements are somewhat flexible for this role, as we’d rather be as inclusive as possible. As such, the following are requirements:
  • At least 5 years of professional software development experience working in a team environment.  A successful Staff Engineer tends to have more experience than this, though.
  • The ideal candidate will have 1+ years of experience with some form of non-managerial technical leadership, but we’re also willing to consider people looking to intentionally move into this type of role.
  • Experience with Ruby on Rails and/or React;OR experience in a similar tech stack and a willingness to learn Rails and/or React.
  • Strong communication skills and/or experience with remote work.
  • Residence in North America and the ability to work in a North American time zone.
Nice to have: BS in Computer Science, Math, EE, or other applicable degrees.