Home › Companies › Userpilot › Software Engineer - JavaScript SDK
Software Engineer - JavaScript SDK
Userpilot · Dublin, Dublin, D01 V3P0, Ireland · Active · BambooHR
Job facts
| Field | Value |
|---|---|
| Company | Userpilot |
| Title | Software Engineer - JavaScript SDK |
| Normalized title | - |
| Department / team | Engineering |
| Location | Dublin, Dublin |
| Work model | - |
| Employment type | Full Time |
| Salary | - |
| Status | active |
| ATS provider | BambooHR |
| Posted / first seen | 2026-06-05 / 2026-06-23 |
| Changed / last seen | 2026-06-23 / 2026-06-23 |
Related slices
| Page | What it contains | Open |
|---|---|---|
| Company jobs | Active postings from Userpilot. | Open |
| Company breakdowns | Role, location, ATS, and work model facets for this company. | Open |
| ATS provider jobs | Active postings observed through BambooHR. | Open |
| Provider filtered search | The same provider as a filtered job collection. | Open |
| City jobs | Active postings in Dublin. | Open |
| Department jobs | Active postings in Engineering. | Open |
| Lifecycle events | Open, update, close, and reopen events for this posting. | Open |
| Original posting | Canonical source or apply URL captured from the ATS. | Open |
Linked records
| Company | Userpilot |
| Source | d1d0a264-b9a8-4c6f-a23d-a39ea66937e5 |
| ATS provider | BambooHR |
Description
About Userpilot
Userpilot is a leading product analytics and user engagement platform used by product teams at hundreds of companies to understand, segment, and activate their users. The product spans a performant JavaScript SDK that runs inside customers' web apps, a Chrome Extension for building in-app UI without code, and a React dashboard that handles complex real-time data, all backed by a distributed Elixir/Phoenix backend that sustains hundreds of thousands of concurrent WebSocket connections, high-throughput Kafka event ingestion, and real-time content delivery at scale.
We move fast, we ship often, and we believe the best engineers care as much about the product they're enabling as the systems and interfaces they build.
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.
Right to Work
Candidates must have the right to work in Ireland. We are not in a position to offer visa sponsorship for this role.
Equal Opportunities Statement
Userpilot is an equal opportunity employer. We are committed to creating an inclusive environment for all employees and applicants. We do not discriminate on the basis of gender, civil status, family status, age, disability, race, religion, sexual orientation, or membership of the Traveller community, in accordance with the Employment Equality Acts 1998–2015.
Data Privacy Notice
By applying for this role, your personal data will be processed by Userpilot for the purposes of recruitment and candidate evaluation. We will retain your information for no longer than is necessary for this purpose.
Full job record
| Job ID | 6091a6b20fcc52932381dc7b3e9b6e1687583e39 |
| Org ID | 71c140e6-310c-4f06-b7e7-563aaed99a2a |
| Source ID | d1d0a264-b9a8-4c6f-a23d-a39ea66937e5 |
| Board ID | d1d0a264-b9a8-4c6f-a23d-a39ea66937e5 |
| Provider | bamboohr |
| Provider Job Key | 126 |
| Title | Software Engineer - JavaScript SDK |
| Normalized Title | — |
| Status | active |
| Active | yes |
| Location Text | Dublin, Dublin, D01 V3P0, Ireland |
| Department | Engineering |
| Team | — |
| Employment Type | full_time |
| Workplace Type | — |
| Remote Policy | — |
| Country | — |
| Region | Dublin |
| City | Dublin |
| Salary Raw | — |
| Salary Min | — |
| Salary Max | — |
| Salary Currency | — |
| Salary Period | — |
| Source URL | https://userpilot.bamboohr.com/careers/126 |
| Apply URL | https://userpilot.bamboohr.com/careers/126 |
| First Seen At | 2026-06-23 10:47:38Z |
| Last Seen At | 2026-06-23 10:47:38Z |
| Last Checked At | 2026-06-23 10:47:38Z |
| Last Changed At | 2026-06-23 10:47:38Z |
| Inactive At | — |
| Source Posted At | 2026-06-05 00:00:00Z |
| Source Updated At | — |
| Raw Payload Uri | s3://job-postings-prod-raw-590183727216/raw/provider=bamboohr/board=userpilot/date=2026-06-23/2026-06-23T10-47-36-852Z-19bee7914bf9be3ecd0cf8ab678e15fbdf577cbb8525f8262298fc5cb1945981.json |
Event Fields
{
"content_hash": "5e9bab9b7b19cf4643422ff657cf7a559734fe2b41139556dacb74d4dfa466e2",
"source_hash": "4b828da63bcccaa0b810b470a530188c45a459a7786e8b96abee28c58533d1e6",
"last_changed_at": "2026-06-23T10:47:38.354Z",
"active_status": "active"
}Parsed Structured
{
"dedupe": null,
"language": "en",
"location": {
"raw": "Dublin, Dublin, D01 V3P0, Ireland",
"city": "Dublin",
"region": "Dublin",
"country": null,
"is_remote": false,
"confidence": 0.8
},
"salary_max": null,
"salary_min": null,
"inferred_at": "2026-06-23T10:47:38.347Z",
"launch_scope": {
"reason": "bamboohr_production_catalog",
"included": true,
"location": {
"raw": "Dublin, Dublin, D01 V3P0, Ireland",
"city": "Dublin",
"region": "Dublin",
"country": null,
"is_remote": false,
"confidence": 0.8
},
"countries": []
},
"remote_policy": null,
"salary_period": null,
"workplace_type": null,
"salary_currency": null
}Extensions
{}Native Structured
{
"list_job": {
"id": "126",
"isRemote": null,
"location": {
"city": "Dublin",
"state": "Dublin"
},
"atsLocation": {
"city": null,
"state": null,
"country": null,
"province": null
},
"departmentId": "18573",
"locationType": "2",
"jobOpeningName": "Software Engineer - JavaScript SDK",
"departmentLabel": "Engineering",
"employmentStatusLabel": "Full-Time"
},
"detail_errors": [],
"detail_job_opening": {
"location": {
"city": "Dublin",
"state": "Dublin",
"postalCode": "D01 V3P0",
"addressCountry": "Ireland"
},
"datePosted": "2026-06-05",
"atsLocation": {
"city": null,
"state": null,
"country": null,
"countryId": null
},
"description": "<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">About Userpilot</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Userpilot is a leading product analytics and user engagement platform used by product teams at hundreds of companies to understand, segment, and activate their users. The product spans a performant JavaScript SDK that runs inside customers' web apps, a Chrome Extension for building in-app UI without code, and a React dashboard that handles complex real-time data, all backed by a distributed Elixir/Phoenix backend that sustains hundreds of thousands of concurrent WebSocket connections, high-throughput Kafka event ingestion, and real-time content delivery at scale.</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">We move fast, we ship often, and we believe the best engineers care as much about the product they're enabling as the systems and interfaces they build.</span></p>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">The Role</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">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.</span></p>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Responsibilities</span></p>\n<ul>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Own day-to-day maintenance of the SDK repository, including bug fixes, feature support, code reviews, dependency updates, and release readiness.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Maintain and improve the SDK build system using Webpack, Babel, ESLint, and related tooling.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Manage SDK builds, including versioning, CDN/S3 upload workflows, Cloudflare cache purging, and release validation.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Improve SDK reliability across customer environments, including iframes, CSP constraints, browser compatibility, DOM mutation behavior, and third-party app edge cases.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Monitor bundle size and runtime performance, and use bundle analysis to keep the SDK lightweight.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Maintain CI/CD workflows and coordinate with the separate end-to-end Cypress test suite.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Maintain clear technical documentation for local development, release steps, debugging, and SDK architecture.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Collaborate with product, backend, QA, customer success, and support teams to triage production issues and deliver SDK improvements safely.</span></li>\n</ul>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Required Skills</span></p>\n<ul>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Strong JavaScript experience, especially browser runtime behavior and DOM APIs.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Experience maintaining production frontend SDKs, widgets, embeds, tracking scripts, or similar client-side libraries.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Solid understanding of Webpack, Babel, npm, ESLint, and modern frontend build pipelines.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Comfortable debugging issues across browsers, iframes, customer websites, CSP policies, network conditions, and asynchronous script loading.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Experience with CI/CD, GitHub Actions, release automation, and deployment workflows.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Strong ownership mindset: able to triage issues, prioritize risk, communicate clearly, and keep the repo healthy over time.</span></li>\n</ul>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Nice To Have</span></p>\n<ul>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Experience with session replay or analytics tooling, especially rrweb.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Experience with CDN-hosted JavaScript SDKs and cache invalidation strategies.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Familiarity with Cypress or browser-based end-to-end testing.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Experience modernizing JavaScript codebases incrementally.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Knowledge of privacy, masking, consent, and data collection concerns for client-side SDKs.</span><br></li>\n</ul>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Success Looks Like</span></p>\n<ul>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">SDK releases are predictable, tested, and low-risk.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Production bugs are triaged quickly and fixed with minimal regressions.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Build and release documentation is clear enough for other engineers to follow.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">Bundle size, browser compatibility, and runtime performance are actively managed.</span></li>\n<li><span style=\"font-family: arial, helvetica, sans-serif; font-size: 12pt\">The repository becomes easier to understand, test, and evolve over time.</span></li>\n</ul>\n<p><br><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Right to Work</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif\">Candidates must have the right to work in Ireland. We are not in a position to offer visa sponsorship for this role.</span></p>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Equal Opportunities Statement</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif\">Userpilot is an equal opportunity employer. We are committed to creating an inclusive environment for all employees and applicants. We do not discriminate on the basis of gender, civil status, family status, age, disability, race, religion, sexual orientation, or membership of the Traveller community, in accordance with the Employment Equality Acts 1998–2015.</span></p>\n<p><br></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif; font-size: 14pt; font-weight: bold\">Data Privacy Notice</span></p>\n<p><span style=\"font-family: arial, helvetica, sans-serif\">By applying for this role, your personal data will be processed by Userpilot for the purposes of recruitment and candidate evaluation. We will retain your information for no longer than is necessary for this purpose.</span></p>",
"compensation": null,
"departmentId": "18573",
"locationType": "2",
"seekPromoted": false,
"jobCategoryId": null,
"jobOpeningName": "Software Engineer - JavaScript SDK",
"departmentLabel": "Engineering",
"jobOpeningStatus": "Open",
"minimumExperience": "Experienced",
"jobOpeningShareUrl": "https://userpilot.bamboohr.com/careers/126",
"employmentStatusLabel": "Full-Time"
}
}Get this page with API
Rendered from the bluedoor Job Postings API. Reproduce it:
GET https://api.bluedoor.sh/job-postings/v1/jobs/6091a6b20fcc52932381dc7b3e9b6e1687583e39?include=descriptionJSONGET https://api.bluedoor.sh/job-postings/v1/orgs/71c140e6-310c-4f06-b7e7-563aaed99a2aJSONGET https://api.bluedoor.sh/job-postings/v1/sources/d1d0a264-b9a8-4c6f-a23d-a39ea66937e5JSONGET https://api.bluedoor.sh/job-postings/v1/jobs/6091a6b20fcc52932381dc7b3e9b6e1687583e39/eventsJSON