Job VC
Senior Frontend Developer (slots)
Technologies
Description
The Slot Frontend Engineer is the slot-client authority across Whimsy's slot-development engagements. The role builds and maintains the slot-game client codebase from scratch and owns it through integration, launch, and live operations.
Technical Constraints
Language:
TypeScript
Renderer:
PixiJS v8
Animation:
Spine-Pixi v8 (skeletal), GSAP (tweening)
Build tool:
Vite
HTTP client:
Axios
Architecture:
strict 5-layer separation + typed HFSM at gameplay layer
Platform integration:
third-party slot SDK via pluggable BackendAdapter only
Regulatory model:
jurisdiction-aware client behaviour via configuration (no code rewrites per market)
Version control:
Git
Target platforms:
modern mobile browsers (iOS Safari, Android Chrome) + desktop browsers in use
Responsibilities
Own the slot-client codebase.
Own the typed HFSM modelling the slot spin lifecycle, including free spins, bonus rounds, and error / recovery transitions.
Own the offline mocked backend used for development, QA.
Own jurisdiction-aware compliance UI: a single client able to satisfy the rule set of different markets under audit without per-market code forks.
Own session recovery and reconnection behaviour for mid-spin, mid-free-spins, and mid-bonus states.
Own client-side performance budgets and the asset, atlas, and texture-memory strategy.
Author and maintain frontend technical documentation: layer contract, HFSM state and transition diagrams, asset manifests, jurisdiction-profile schema.
Actively use and document the use of AI tools (ChatGPT, Gemini, Claude) for scaffolding, refactor proposals, and documentation. Document outcomes alongside prompts so the workflow is reproducible by the team.
Requirements
Strict layered architecture: Presentation / HFSM / Domain / Network / Platform; cross-layer access is Non-Compliance.
Typed HFSM for slot lifecycle (idle, bet, spin request, etc.).
Robust session recovery: correct resume mid-spin, mid-free-spins, mid-bonus without state inconsistency.
Full externalisation of game data: paytables, reel strips, RTP, jurisdiction profiles, feature flags must be server/config-driven.
PixiJS v8 slot rendering for mobile/desktop within performance budgets, with no visual artifacts during reels, cascades, or bonus flows.
Spine-Pixi v8 expertise for skeletal animations (symbols, characters, bonus presenters), including layered states and event hooks.
GSAP orchestration for complex sequences: spin-stop, win reveal, cascades, jackpots, bonus entries.
Tunable animation parameters (easing, timing, anticipation, win effects).
Asset strategy: atlases, texture packing, and memory-optimized loading for mobile draw-call and RAM constraints.
Server-authoritative model: client never controls outcome, RNG, balance, or probability.
Jurisdiction rules must be configuration-based, not code changes per market.
No secrets/keys/SDK credentials in source, fixtures, or Git history.
Performance targets: 60 FPS mid-tier mobile, 30 FPS minimum on low-end devices.
Defined bundle-size and cold-load budgets under poor network conditions.
Profiling expertise for rendering, animation, and runtime bottlenecks.
Knowledge of GPU/render optimization: atlases, sprite sheets, render textures, instancing, and their trade-offs.
Network resilience: timeouts, exponential backoff, idempotent retries (BackendAdapter), deterministic behaviour under packet loss, mid-spin disconnect/reconnect.
Observability: structured client logging with correlation IDs for spin-level backend tracing.
Nice to have
Experience with regulated slot / iGaming frontend
Live ops: jackpots, tournaments, campaigns, A/B tests
Localization: RTL, CJK support
Remote config + A/B testing for mechanics and UX
CI/CD pipelines (lint, type-check, tests, build, deploy, environments)
Strong Git discipline (atomic commits, PR hygiene)
Technical documentation: layer contracts, HFSM diagrams, runbooks (English)
What We Offer
Greenfield backend - you design the architecture, choose the stack, own the outcome
Small focused team: no bureaucracy, direct access to decision-makers
Fully remote, async-friendly
Competitive compensation, discussed individually
A product that ships - not an endless pre-production
Technical Constraints
Language:
TypeScript
Renderer:
PixiJS v8
Animation:
Spine-Pixi v8 (skeletal), GSAP (tweening)
Build tool:
Vite
HTTP client:
Axios
Architecture:
strict 5-layer separation + typed HFSM at gameplay layer
Platform integration:
third-party slot SDK via pluggable BackendAdapter only
Regulatory model:
jurisdiction-aware client behaviour via configuration (no code rewrites per market)
Version control:
Git
Target platforms:
modern mobile browsers (iOS Safari, Android Chrome) + desktop browsers in use
Responsibilities
Own the slot-client codebase.
Own the typed HFSM modelling the slot spin lifecycle, including free spins, bonus rounds, and error / recovery transitions.
Own the offline mocked backend used for development, QA.
Own jurisdiction-aware compliance UI: a single client able to satisfy the rule set of different markets under audit without per-market code forks.
Own session recovery and reconnection behaviour for mid-spin, mid-free-spins, and mid-bonus states.
Own client-side performance budgets and the asset, atlas, and texture-memory strategy.
Author and maintain frontend technical documentation: layer contract, HFSM state and transition diagrams, asset manifests, jurisdiction-profile schema.
Actively use and document the use of AI tools (ChatGPT, Gemini, Claude) for scaffolding, refactor proposals, and documentation. Document outcomes alongside prompts so the workflow is reproducible by the team.
Requirements
Strict layered architecture: Presentation / HFSM / Domain / Network / Platform; cross-layer access is Non-Compliance.
Typed HFSM for slot lifecycle (idle, bet, spin request, etc.).
Robust session recovery: correct resume mid-spin, mid-free-spins, mid-bonus without state inconsistency.
Full externalisation of game data: paytables, reel strips, RTP, jurisdiction profiles, feature flags must be server/config-driven.
PixiJS v8 slot rendering for mobile/desktop within performance budgets, with no visual artifacts during reels, cascades, or bonus flows.
Spine-Pixi v8 expertise for skeletal animations (symbols, characters, bonus presenters), including layered states and event hooks.
GSAP orchestration for complex sequences: spin-stop, win reveal, cascades, jackpots, bonus entries.
Tunable animation parameters (easing, timing, anticipation, win effects).
Asset strategy: atlases, texture packing, and memory-optimized loading for mobile draw-call and RAM constraints.
Server-authoritative model: client never controls outcome, RNG, balance, or probability.
Jurisdiction rules must be configuration-based, not code changes per market.
No secrets/keys/SDK credentials in source, fixtures, or Git history.
Performance targets: 60 FPS mid-tier mobile, 30 FPS minimum on low-end devices.
Defined bundle-size and cold-load budgets under poor network conditions.
Profiling expertise for rendering, animation, and runtime bottlenecks.
Knowledge of GPU/render optimization: atlases, sprite sheets, render textures, instancing, and their trade-offs.
Network resilience: timeouts, exponential backoff, idempotent retries (BackendAdapter), deterministic behaviour under packet loss, mid-spin disconnect/reconnect.
Observability: structured client logging with correlation IDs for spin-level backend tracing.
Nice to have
Experience with regulated slot / iGaming frontend
Live ops: jackpots, tournaments, campaigns, A/B tests
Localization: RTL, CJK support
Remote config + A/B testing for mechanics and UX
CI/CD pipelines (lint, type-check, tests, build, deploy, environments)
Strong Git discipline (atomic commits, PR hygiene)
Technical documentation: layer contracts, HFSM diagrams, runbooks (English)
What We Offer
Greenfield backend - you design the architecture, choose the stack, own the outcome
Small focused team: no bureaucracy, direct access to decision-makers
Fully remote, async-friendly
Competitive compensation, discussed individually
A product that ships - not an endless pre-production