Senior Full-Stack Engineer — Sports Prediction Market Trading Platform
Budget: $25.0 - $70.0
HOURLY / FULL_TIME
⭐ 4.86 (45)
United States
postgresql, next.js, react-js, python, javascript, node.js, api
About the project
We operate a live sports prediction-market copy-trading platform that monitors selected trader wallets, classifies their activity, generates betting signals, and executes orders across multiple venues.
Our platform currently includes:
A central PolyWalletTracker application for managing tracked accounts, monitoring wallet activity, generating signals, and configuring copy rules
A Polymarket trading executor
Separate Kalshi and 4casters trading executors
Multi-venue rule engines covering leagues, market types, sides, position sizing, signal matching, opposing signals, order repricing, partial fills, cancellations, and risk controls
Multiple repositories and Railway services rather than a monorepo
The system is live and manages meaningful internal trading capital. Reliability, visibility, and safe execution are more important than simply shipping features quickly.
We are looking for a senior engineer who can take ownership of the entire platform, stabilize the current architecture, improve operational reliability, and work closely with the founders and existing development team.
The role
This is a full-time Senior Full-Stack Engineer position with significant backend, infrastructure, and production-operations responsibility.
You should be comfortable independently investigating incidents, restoring services, reviewing risky logic, improving architecture, and communicating quickly with the team.
Responsibilities
You will own and improve the complete platform, including:
Maintaining the TypeScript, Node.js, Next.js, React, and Python services
Understanding and documenting all repositories and Railway deployments
Stabilizing the Polymarket, Kalshi, and 4casters execution systems
Maintaining integrations with the Polymarket CLOB API and official Kalshi and 4casters APIs
Improving wallet polling, webhook ingestion, trade detection, signal generation, and market matching
Improving the copy-rule engine, risk limits, daily budgets, and emergency controls
Handling limit orders, cancellations, repricing, partial fills, and resting orders
Preventing duplicate, stale, incorrect, or runaway orders
Improving position and balance reconciliation across trading venues
Separating critical workers from web services where appropriate
Improving PostgreSQL schema management and introducing safe migrations
Improving Redis usage, background processing, and service coordination
Adding automated tests around financially sensitive execution logic
Introducing proper logging, monitoring, alerts, and incident reporting
Improving deployment safety and recovery procedures
Reviewing code written by other developers
Helping manage and guide the engineering team
Proactively identifying risks and recommending better technical practices
Current technical environment
The current platform uses a combination of:
TypeScript
Node.js 20+
Python
Next.js 16 with the App Router
React 19
Tailwind CSS
PostgreSQL
Redis
Raw SQL
Railway
Server-Sent Events
HTTP polling and webhooks
Telegram Bot API
Polymarket CLOB client
Ethers.js
Official Kalshi API
Official 4casters API
The platform is distributed across multiple repositories and Railway services. Some long-running workers currently run inside web processes, and parts of the trading engine contain large, stateful modules that need careful refactoring.
Reliability challenges
The main problem we are solving is not a lack of features. It is a lack of dependable technical ownership.
The current system can experience different issues on a daily basis. When an engineer becomes unavailable, the team may not immediately know how to diagnose the problem, restore the affected services, or safely confirm that order execution has resumed.
The new engineer must help ensure that:
The team is never dependent on one unavailable developer
Every service has documented recovery procedures
Trading failures are detected immediately
Failed services can be restored safely
Open exchange orders remain visible during deployments or outages
A Railway restart or deployment cannot create uncontrolled trading behavior
Repeated order placement cannot continue unnoticed
Critical execution logic has automated tests and safeguards
Required experience
Candidates should have:
At least 6 years of professional software-engineering experience
Strong TypeScript and Node.js experience
Strong full-stack experience with React and Next.js
Experience operating production financial, trading, betting, exchange, or real-time transaction systems
Strong PostgreSQL knowledge
Experience with Redis and background workers
Experience designing idempotent systems
Experience handling retries, duplicate events, race conditions, and partial failures
Experience with REST APIs, webhooks, polling, and real-time event systems
Strong debugging and production incident-response skills
Experience deploying and maintaining multi-service applications
Experience protecting private keys, API credentials, and systems capable of moving funds
Ability to work independently without needing detailed instructions for every task
Ability to review an unfamiliar production system and quickly understand its architecture
Good written English and fast communication
Railway-specific experience is helpful but not mandatory. Strong Docker, cloud infrastructure, and production deployment experience is more important.
Strongly preferred
Experience in one or more of the following areas is highly valuable:
Sports betting
Prediction markets
Polymarket
Kalshi
4casters
Exchange order books
Crypto wallet signing
CLOB APIs
Automated trading
Copy trading
Market and line matching
Moneyline, spread, and totals markets
Order repricing
Position reconciliation
Risk engines and kill switches
The ideal candidate understands that a sportsbook-style market, a prediction-market contract, and an exchange order book may represent the same underlying sporting outcome differently.
Working schedule and communication
The team communicates primarily through Telegram.
The engineer must be actively working and available between:
5:00 PM and 8:00 PM Eastern Time
During this three-hour window, the engineer should:
Be at their computer
Monitor Telegram
Respond to urgent messages in approximately one minute
Be ready to investigate production issues immediately
Coordinate actively with the founders and development team
Outside this window, the engineer will have flexibility in organizing their work. However, because this is a live trading platform, the role includes responsibility for urgent production incidents and system availability.
The role does not require frequent meetings. Fast written communication, ownership, and execution are more important.
What success looks like
First 30 days
Understand all repositories, services, databases, and Railway deployments
Document the full signal-to-order architecture
Create a clear service recovery and incident-response guide
Identify the highest-risk execution and infrastructure issues
Add monitoring for critical services and trading failures
Ensure the founders can understand whether every executor is operational
Add safeguards against duplicate or runaway orders
First 90 days
Reduce dependence on individual developers
Make service recovery predictable and documented
Add automated tests around critical trading logic
Improve deployment and rollback safety
Improve logging, alerting, and reconciliation
Refactor the most dangerous stateful execution components
Ensure Polymarket, Kalshi, and 4casters behave consistently
Independently own production releases and incidents
Help establish reliable engineering practices for the rest of the team
Who should not apply
This role is not suitable for someone who:
Regularly disappears during working hours
Treats production support as optional
Requires detailed instructions for every implementation
Has only frontend experience
Has never maintained a live production system
Is uncomfortable working with financial risk
Cannot communicate quickly during incidents
Wants to contribute only a few hours per week
Relies entirely on AI coding tools without being able to debug the underlying system
Using Cursor or other AI development tools is welcome, but the engineer must personally understand, verify, test, and take responsibility for the resulting code.
Openen op Upwork