Senior Full-Stack Engineer
Elsa Widget & Backend Console
Location: Remote (Workday overlap ±3 hrs from IST)
Engagement: 4-month contract → option to convert to FTE
Start: Immediate — first deliverable is the 1-week MVP sprint covering both the in-page Widget and the multi-tenant Admin Console
About the company
Elsa gives any dApp an AI concierge that can answer knowledge-base questions and build & submit on-chain transactions directly inside a chat bubble. You'll own the next leap: a production-ready Widget + Console stack that partners can drop into their sites and operate without touching code.
What You'll Own
Front-end — Widget Client (35%)
Built with Next.js 14 and React 18, embedded via an asynchronous script
- • Minified Loader: elsa.js (< 25 kB gzipped)
- • Chat iFrame: PostMessage handshake, streaming GPT-4o responses
- • Theme API: Customizable logo and color palette, RTL support
- • Accessibility & Performance: a11y compliant with Lighthouse scores ≥ 85
Back-end — Admin Console & Public APIs (35%)
Built with Django 5, Django REST Framework (DRF), Channels, and Celery
- • Admin Features: Project wizard, knowledge-base uploader
- • APIs: REST + SSE/WebSocket endpoints (JWT-scoped and rate-limited)
- • Background Tasks (Celery): index_doc, monitor_tx, analytics cron jobs
- • Query and transaction logs, metrics dashboard
Blockchain & AI glue (15%)
- • Transaction Builders: prepareTx implementations for EVM and Solana
- • AI Data Layer: Pinecone vector upsert with RAG-based prompt templating
- • Error Intelligence: LLM-powered transaction-error summarizer
DevOps & Observability (10%)
- • CI/CD Pipeline: GitHub Actions → Docker builds → Deployments
- • Data & Monitoring: PlanetScale (MySQL) + Upstash (Redis) clusters
- • Quality & Security in CI: k6 load-testing and OWASP-ZAP security baselines
Security & QA mentoring (5%)
- • Security for Integrators: Automatic CSP/SRI generator
- • Access Control: Object-level RBAC via Django Guardian
- • Testing & Coverage: Comprehensive Playwright and pytest suites with ≥ 90% coverage
Tech You'll Touch
- • FE: Next 14 (App Router), React 18, Tailwind, shadcn/ui, SWR, Victory charts
- • BE: Python 3.12, Django 5 + DRF, Celery, Redis 7, MySQL 8, Channels
- • AI / Data: OpenAI embeddings, GPT-4o streaming, Pinecone, PDFMiner
- • Blockchain: web3.py, solana-py, EIP-1193 wallets, ethers.js signatures
- • Ops: GitHub Actions, Docker, Vercel, Render, PlanetScale, Upstash, Sentry
Must-Haves
- • 5+ yrs shipping production systems in Python/Django and React/Next.
- • Real-time experience (WebSockets/SSE) plus background jobs (Celery/Sidekiq).
- • Strong SQL schema design & query optimisation.
- • Hands-on with at least one blockchain stack or a deep willingness to learn fast.
- • Proficiency in CI/CD pipelines and containerised deployments.
- • Security mindset: JWT, CSP, CSRF, secret rotation, least-privilege RBAC.
- • Comfortable reading OpenAPI & swaggering your own endpoints.
- • Clear written communication; able to turn a PRD into epics & stories.
Nice-to-Haves
- • Previous work embedding third-party widgets (Intercom, Stripe Elements, etc.).
- • Retrieval-Augmented Generation pipelines in production.
- • Solidity or Rust smart-contract basics.
- • Vercel edge functions, Render Blueprints, or similar PaaS chops.
- • Design sensibility with Tailwind/shadcn for snappy admin UIs.
First-90-Day Scorecard
- • Week 1: MVP widget & console sprint passes ACs from PRD.
- • Week 4: p95 < 500 ms across `/chat/query` & `/tx/prepare`; testnet swap confirmed via widget in staging.
- • Week 8: ≥ 90% automated test coverage; 0 High issues in ZAP & Snyk on main.
- • Week 12: Multi-tenant console handles 50 projects, 100 RPS load test at p95 < 750 ms.
How We Work
- • Async-first: Jira Kanban, daily Slack check-ins, weekly retro.
- • Ship thin slices: preview deploys on every PR.
- • Code buddy reviews: no lonely merges.
- • Blameless post-mortems: bugs happen; we learn fast.
Interview Flow
- • 30 min culture/fit call
- • 90 min tech deep-dive — pair on building a Celery task & WebSocket handler
- • 60 min system-design — architect the widget–console–blockchain flow
- • Offer within 48 hours
How to Apply
Send the following to [email protected]
Subject: Full‑Stack — Widget + Console
- • A short note (≤ 200 words) on why you'll nail this role.
- • Links to code samples or demos that showcase your Django + React expertise.
- • Your resume or LinkedIn profile.
Help us build the layer that lets every dApp talk, transact, and support users in one elegant bubble.