The Role
We are looking for a senior frontend or SDK engineer to work on our browser-based Userpilot SDK repository. This person will be responsible for the reliability, performance, release process, and long-term maintainability of the JavaScript SDK that powers in-app experiences, surveys, autocapture, session recording, checklists, resource centers, and related client-side functionality.
Responsibilities
- Own day-to-day maintenance of the SDK repository, including bug fixes, feature support, code reviews, dependency updates, and release readiness.
- Maintain and improve the SDK build system using Webpack, Babel, ESLint, and related tooling.
- Manage SDK builds, including versioning, CDN/S3 upload workflows, Cloudflare cache purging, and release validation.
- Improve SDK reliability across customer environments, including iframes, CSP constraints, browser compatibility, DOM mutation behavior, and third-party app edge cases.
- Monitor bundle size and runtime performance, and use bundle analysis to keep the SDK lightweight.
- Maintain CI/CD workflows and coordinate with the separate end-to-end Cypress test suite.
- Maintain clear technical documentation for local development, release steps, debugging, and SDK architecture.
- Collaborate with product, backend, QA, customer success, and support teams to triage production issues and deliver SDK improvements safely.
Required Skills
- Strong JavaScript experience, especially browser runtime behavior and DOM APIs.
- Experience maintaining production frontend SDKs, widgets, embeds, tracking scripts, or similar client-side libraries.
- Solid understanding of Webpack, Babel, npm, ESLint, and modern frontend build pipelines.
- Comfortable debugging issues across browsers, iframes, customer websites, CSP policies, network conditions, and asynchronous script loading.
- Experience with CI/CD, GitHub Actions, release automation, and deployment workflows.
- Strong ownership mindset: able to triage issues, prioritize risk, communicate clearly, and keep the repo healthy over time.
Nice To Have
- Experience with session replay or analytics tooling, especially rrweb.
- Experience with CDN-hosted JavaScript SDKs and cache invalidation strategies.
- Familiarity with Cypress or browser-based end-to-end testing.
- Experience modernizing JavaScript codebases incrementally.
- Knowledge of privacy, masking, consent, and data collection concerns for client-side SDKs.
Success Looks Like
- SDK releases are predictable, tested, and low-risk.
- Production bugs are triaged quickly and fixed with minimal regressions.
- Build and release documentation is clear enough for other engineers to follow.
- Bundle size, browser compatibility, and runtime performance are actively managed.
- The repository becomes easier to understand, test, and evolve over time.