Software Engineer (AI-Native)
- Compensation
- Not disclosed
- Location
- Dublin, Dublin, Ireland
- Work setup
- Hybrid
- Seniority
- Not specified
- Employment
- Contract
- Experience
- 3+ years
- Category
- Software engineering
- Posted
Skills
Must have
- 3+ years building and shipping production software, with hands-on experience on both the frontend and backend of real applications
- Frontend: production React + TypeScript - solid component design, hooks, rendering behavior, and experience with server/client state management (React Query, Redux, or Redux-Saga)
- Backend: strong CS fundamentals (data structures, algorithms, software design) and professional experience building services in a high-level language (Elixir, Ruby, Python, Go, or similar), including
- AI features: experience building or integrating LLM-powered features - streaming responses, AI-driven personalization, or otherwise designing for non-deterministic behavior
- AI-native workflow: you use AI coding agents (Claude Code, Cursor) as a real part of how you build - prompting for scaffolding, reviewing output critically, and knowing when to push back
- Strong product sense and judgment - you care about the user experience and about system correctness in equal measure
- Self-management and a continuous-improvement mindset - we don’t over-prescribe how the work gets done
Nice to have
- Elixir and the Phoenix framework with OTP - it’s what our backend runs on, and its patterns (supervision trees, cache invariants, channel rules) exist for good reasons
- Building and operating reliable real-time systems at scale and knowing what “reliable” actually means in production
- Kafka, RabbitMQ, ClickHouse, Broadway, or similar high-throughput data tooling
- MUI or design-system experience - we build on top of MUI with a custom layer (Blueprint)
- Monorepo tooling (Nx, Turborepo, or similar)
- Chrome Extension development, or SDK / embeddable-script work with size and performance constraints
- Familiarity with spec-driven development - writing or working from specs that drive both human and AI implementation, and knowing what makes a good one
- Contributing to developer experience or agentic infra - agent context files (AGENTS.md, CLAUDE.md), runbooks, architectural decision records, slash commands, linting rules, scaffolding
- Optimizing cloud and infrastructure costs through caching or more efficient data processing
- Technical leadership on an engineering team
- Open source contributions
- Writing tests (unit, integration, e2e) - we won’t gate on it, but we’ll notice
Full 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
This is a full-stack, AI-native role. You’ll work across the entire product from the React dashboard and embedded SDK down to the Elixir services and real-time pipelines, and you’ll do it in a spec-driven, agent-assisted way. You’ll also help build the AI-powered features our customers use, not just use AI to build everything else.
We’ve stopped treating frontend and backend as separate jobs. We hire engineers who can follow a problem wherever it leads, and who use AI tooling to go deeper and faster rather than to paper over gaps in judgment.
What You’ll Work On
- The Userpilot dashboard: a React monorepo (Nx + Vite + Yarn Workspaces) with 50+ product domains, shared design-system components, and live analytics views
- The JavaScript SDK: a lightweight, performance-critical script embedded in customer applications that renders personalized UI experiences
- Real-time backend services: the Elixir/Phoenix channels, Kafka consumers, ClickHouse write buffers, and RabbitMQ-backed integrations that ingest analytics events and make them available for queries and engagement triggers in near real-time
- WebSocket infrastructure: the persistent connections that keep hundreds of thousands of concurrent users in sync
- AI-powered product features: LLM-driven personalization, streaming experiences, and in-product intelligence, including the non-deterministic UI and backend states they require
- Agentic development infra: the AGENTS.md, CLAUDE.md, DESIGN.md, slash commands, and architectural rules that make AI coding tools safe and effective across both a complex React codebase and a strict Elixir/OTP one
What You’ll Do
- Design, build, and operate features end-to-end - from accessible React/TypeScript UI through to the Elixir/Phoenix services, pipelines, and data stores behind them
- Build AI-powered product features and the infrastructure around them - streaming responses, AI-driven personalization, and the guardrails that make non-deterministic behavior safe in production