Full-stack developer based in Canada with hands-on experience in React, Node.js, MongoDB, and Redis. I have professional co-op experience building Python automation tools, data extraction scripts, and internal applications. I recently built and deployed a production trading simulator (rookiebulls.com) with Docker, CI/CD, and JWT authentication on a Linux VPS. I write clean, maintainable code and I’m comfortable working across frontend and backend systems. Available for full-time remote work.
Skills
Language
Work Experience
Education
Qualifications
Industry Experience
- JWT access + refresh token rotation
- Refresh tokens stored in HTTP-only cookies
- Token invalidation on logout and rotation on every refresh
- Email verification via crypto-generated tokens with 24hr expiry
- Hard login block until email is verified
- Rate limiting across register, login, and resend endpoints (express-rate-limit)
- Each user receives $100,000 in virtual credits on registration
- Full transaction ledger — every credit movement is recorded
- Wallet state is recomputed from ledger, not mutated directly
- Market buy and sell orders against delayed real prices
- Position tracking with average buy price (weighted average on partial fills)
- PnL calculated per position and across the full portfolio
- Simulated trading fees applied per transaction
- Delayed equity prices sourced from Stooq
- Redis caching layer reduces external API calls by 97%
(from ~39,000 to ~400 per day at current polling intervals) - Cache-aside pattern: stale reads served from Redis, refreshed on TTL expiry
- Market data module is fully decoupled — replaceable without touching trade logic
- Real-time portfolio value computed from live Redis-cached prices
- Day change and total PnL surfaced per position and at portfolio level
- Holdings, trade history, and position data served from separate endpoints
- Custom design system — no component library dependency
- 8 pages: Login, Register, Verify, Profile, Summary, Holdings, Trade History, Quote
- Candlestick chart — custom SVG renderer using OHLC data
- Trade panels and confirmation modals
- Live price polling via interval-based fetch
- Light/dark theme — user preference persisted via ThemeContext
- Fully responsive layout — mobile, tablet, and desktop via useBreakpoint hook
A full-stack stock trading simulator built for educational purposes.
Users receive $100,000 in virtual credits and simulate buying and selling
equities using delayed North American market data. No real money. No live trading.
This project is not a financial product. It does not provide financial
advice or access to real markets.
Status: Active development — live in production at rookiebulls.com
Live Demo
**[rookiebulls.com](https://www.twine.net/signin
Deployed on a DigitalOcean VPS — Docker Compose, Nginx reverse proxy,
Let’s Encrypt SSL, Cloudflare DNS and CDN. CI/CD via GitHub Actions on push to main.
Key Features
Authentication
Virtual Wallet
Trade Simulation Engine
Market Data Pipeline
Portfolio Service
Frontend
Disclaimer
RookieBulls is an educational simulation platform only.
No real money is involved. Market data is delayed and used for
learning purposes only. This platform does not constitute financial advice.
Hire a Full Stack Developer
We have the best full stack developer experts on Twine. Hire a full stack developer in Hamilton today.