Senior Software Engineer (Front-End) at Appcues
Your work as a Senior front-end engineer will empower thousands of Appcues customers to improve their products without writing any code. The Appcues platform you will work on is currently is made up of two major front-end applications. First, the Appcues Flow Builder Chrome extension allows customers to drag and drop to craft unique experiences such as in-app onboarding guides, checklists, and surveys. Second, the Appcues Web app enables customers to segment, personalize, and target these experiences to millions of end-users, and report on their effectiveness.
About the Role:
- The engineering team currently has 23 people across 4 small teams. We are looking to expand our Studio team, which today has five engineers responsible for segmentation, analytics, reporting, sign up, and administration. On a typical day, you may build a new feature, work on a technology migration, collaborate on a new front-end practice, or mentor another engineer.
- Our front-end engineers use React/Redux with styled-components to create experiences that communicate with internal APIs (Node and Elixir), or integrate with 3rd party services. We write tests in Jest, Cypress and RainforestQA.
- The engineering team is mostly co-located and works in two-week iterations. We are committed to iterative agile development and manage our work via Github, Clubhouse, and Slack. When you are ready, you’ll create and send a pull request with tests and tag your team for review. We use CI pipelines to deploy to production and are investing in them to deliver higher quality software faster.
- You’ll collaborate across the organization with product, design, customer success, technical support, and sales to translate customer needs into working code and a delightful UX. You will be involved in all stages of development including conception, design, and user-testing of new features and products.
- You have worked on non-trivial client-rich applications using React. For example, apps that have implemented interactive reporting and visualizations, undo/redo, or drag and drop experience building.
- You are confident debugging challenging issues such as race conditions. You have experience measuring and improving perceived front-end performance (e.g. speed to load and change routes) with a deep understanding of browser internals and the DOM.
- You are passionate about unit and integration testing strategies, the testing pyramid, CI pipelines, and the challenges sustaining test suites over the long term. You believe in testing your own work.
- You are comfortable with package management and the related ecosystem of tools, builds, distribution techniques, and component library strategies.