Principal Software Engineer (Backend)
Appcues is a SaaS business dedicated to helping our customers build products their users love. We offer a suite of products and services that let our customers design and publish user experiences, product tours, and flows to their sites with a simple, code-free interface.
Your work as a principal backend engineer will empower thousands of Appcues customers to improve their SaaS products with unique in-app experiences such as onboarding guides, checklists, and surveys, without writing any code. Our customers (think Toast, OpenTable, ProfitWell, IBM etc.) depend on our backend services to deliver these in-app experiences to 100s of millions of users. This role is also a unique opportunity to mentor other backend engineers to hone their skills, leading by example, with exceptional engineering practices.
At Appcues you'll have the chance to:
- Manage services that process customer rules for personalization, segmentation, and targeting.
- On a typical day, you may help a customer with an issue, build a feature, plan a technology migration, add a 3rd party integration, drive consensus on a new practice, or mentor another engineer.
- You will wear the hat of an engineer, technical lead, and mentor as required. On any given project, you will develop or refactor distributed data services and APIs written in Elixir or Node and provision, tune, and manage data in DynamoDB, PostgreSQL, or whatever is needed.
- You’ll collaborate with backend engineers across teams to maintain and improve our service and storage strategies, architectural patterns, tech stack, standards, and security posture. Together you will also instrument, monitor, and ensure the performance and availability of the Appcues platform.
- Our engineers are involved in all stages of development, including conception, design, and user-testing, with an eye toward rapid, agile iteration.
- Our engineering teams are co-located and work in one or two-week iterations, managing their work via Github, Clubhouse, and Slack.
- You’ll collaborate across the organization with design, customer success, technical support, and sales to translate customer needs into high-quality code.
You might be a fit if:
- You have designed and built modular system architectures to support the rapid growth of large distributed applications.
- You have excellent judgment across several backend frameworks and a solid understanding of the current landscape of data storage and processing technologies.
- You are pragmatic, not dogmatic, and are aware of the strengths & weaknesses of your tools.
- You are comfortable influencing cross-team standards, practices, and tools by rolling up your sleeves and showing how things can be better. You can clearly describe the business implications of your technical decisions.
- You are excited to develop a vision & future technical roadmap of a distributed systems platform.
- You enjoy mentoring other engineers and helping them grow technically. You often have become a key go-to person in your company, even on projects outside your project area.
- You have led the delivery of several large backend projects. For example, systems that have ingested and processed data at significant scale, managed elastic workloads using queue/worker or streaming architectures, or migrated to more current technologies while maintaining high availability.
- You can demonstrate expert-level skills working with AWS and Linux and believe in a DevOps mindset. You are intimately familiar with current platform-as-a-service offerings.
- You have experience with functional programming, or a desire to learn. We can teach you Elixir.
- You are comfortable and capable acting as architect and technical lead on large projects.
- You have performed expert-level debugging of complex, distributed systems.
- You are energized working in a highly collaborative environment at a customer-driven startup.
Tools We Use:
Elixir, Node, React
PostgreSQL, DynamoDB, S3, Redis, Snowflake
At Appcues, our mission is to help teams build products their users love. With Appcues, you can create in-product experiences (user onboarding, feature announcements, checklists, and more) without writing any code. We believe it’s the non-technical people who often have the best information about a user’s needs and desires, and we give them the tools to act.
We’re a dynamic group of talented teammates who challenge, trust, and care about each other, the work we do, and the success story we are writing. We live by our values, our benefits are real, and sometimes we have donuts!
Appcues is an equal opportunity employer. We believe a diverse team is a stronger team.