Lessons Learned Building and Maintaining a 71-Microservice Cryptocurrency Platform Serving 31 Paying Subscribers
Anubis Bot represents a complete, production-grade cryptocurrency intelligence platform that monitored 1.86 million token launches on the Solana blockchain over 220 days of operation (November 2024–January 2026), achieving 99%+ uptime while serving 31 peak paying subscribers. The system processed 54,000+ events daily through 71 interconnected microservices, utilized a 5-model machine learning ensemble generating 5.65 million predictions, and generated between $150–480 monthly recurring revenue.
More importantly, Anubis Bot demonstrates the full spectrum of production systems engineering: from real-time WebSocket data ingestion through complex multi-stage pipeline processing to revenue system implementation and continuous operational management. The project succeeded technically but encountered market realities that led to strategic shutdown and pivot to freelancing.
Technical Achievements:
Business Reality:
In November 2024, the cryptocurrency space faced an acute information problem:
Problem Context:
Market Research Findings:
Hypothesis: A production-grade system with 99%+ uptime and sophisticated ML could command recurring revenue ($15–50/month per subscriber) and generate $3,000–5,000/month at 100–300 subscribers.
Reality Check (January 2025): Entered BEAR market mid-project. Same system, identical features, 50% reduction in win rate and profitability. Decision made to continue to completion and learn, then shutdown strategically.
Anubis Bot consisted of 71 interconnected microservices organized into logical domains:
┌─────────────────────────────────────────────────────────────────┐
│ ANUBIS BOT: 71-SERVICE ARCHITECTURE │
└─────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────┐
│ DATA INGESTION TIER (8 Services) │
│ │
│ Helius WebSocket → RPC Monitoring → Token Enrichment │
│ (35 RPS capacity, real-time blockchain stream) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ SCORING & ANALYSIS TIER (2 Services) │
│ │
│ Anubis Score V5 (primary intelligence) → Snapshots │
│ (Market-aware, regime-adaptive scoring) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ ML PREDICTION TIER (3 Services) │
│ │
│ ML_3X_V3 (XGBoost) → 5.65M predictions stored │
│ ML_V4 (LightGBM) → Outcome tracking │
│ The Chosen Filter (Meta-learner) → Final decisions │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ ALERTING TIER (6 Services) │
│ │
│ Initial Call (Discord) → 2X, 3X, 5X, 10X Milestones │
│ (Text alerts, image generation, image verification) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ PUBLIC DISTRIBUTION TIER (12 Services) │
│ │
│ Gallery System (Telegram channels, 90-second delay) │
│ (Public channel, Elite channel, Forum channel) │
│ (Image processing, threading, milestone milestones) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ REVENUE TIER (6 Services) │
│ │
│ Subscription Management → Wallet Management │
│ Payment Processing (Stripe + Solana Pay) │
│ Access Control (role-based, tier-based) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ INTERACTION TIER (4 Services) │
│ │
│ /lookup (token details) → /positions (portfolio) │
│ /leaderboard (rankings) → Routing (request dispatcher) │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ INTELLIGENCE TIER (15 Services) │
│ │
│ Developer Tracking → Social Sentiment → Bundle Detection│
│ Jito MEV Analysis → CoinMarketCap Integration │
│ Wallet Clustering → Pattern Recognition │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ OPERATIONS TIER (7 Services) │
│ │
│ Health Monitoring → Error Handling → Backup Management │
│ Database Maintenance → Circuit Breaker → Rate Limiting │
└──────────────────┬───────────────────────────────────────┘
│
┌──────────────────▼───────────────────────────────────────┐
│ MAINTENANCE TIER (4 Timer Services) │
│ │
│ Backfill Jobs → Monthly Reports → Stats Aggregation │
│ Data Cleanup → Autovacuum Management │
└──────────────────────────────────────────────────────────┘
| Category | Technology | Implementation |
|---|---|---|
| Language | Python 3.11 | 394,767 lines across 1,353 files |
| Concurrency | asyncio/aiohttp | 71 concurrent services, <100ms response times |
| Database | PostgreSQL 15 | 29GB database, 15 schemas, 165 tables, 1.86M rows |
| Caching | Redis | Pub/sub messaging, circuit breaker state, hot data |
| Process Management | SystemD | 100 service files, auto-restart, health checks |
| ML Stack | XGBoost + LightGBM + scikit-learn | 5-model ensemble, 40 features, imbalanced class handling |
| External APIs | Helius (35 RPS), Jupiter, DexScreener, CoinGecko | Real-time blockchain + price data |
| Payment | Stripe + Solana Pay | Subscription management, wallet detection |
| Notifications | Telegram Bot API | 6 different bots, multi-channel distribution |
| Hosting | DigitalOcean | $250/month droplet, $499/month Helius, $0 Managed DB |
Uptime & Reliability:
Data Volume:
Processing Capacity:
The ML system tracked 40 different features for each token at prediction time:
Market Features (15):
Social Features (10):
Blockchain Features (10):
Temporal Features (5):
Rather than relying on a single model, Anubis used a meta-learning approach:
Raw Features (40) → Standardization → Feature Selection
│
├─→ XGBoost (Model 1) → 0.65 score
│
├─→ LightGBM (Model 2) → 0.68 score
│
├─→ Isolation Forest (Model 3) → Anomaly scoring (0.0-1.0)
│
├─→ One-Class SVM (Model 4) → Outlier detection
│
└─→ Logistic Regression (Model 5) → Calibrated probability
(baseline, feature importance)
│
└─→ Meta-Learner (XGBoost) → Ensemble prediction
(Takes 5 model outputs as features)
│
└─→ Final Score (0.0-1.0) → ALERT or SKIP
Reasoning Behind This Design:
Performance Metrics:
Critical innovation: Every prediction was tracked through outcome
Prediction Made (Day 0)
↓
Milestone Tracking (Snapshot at +1h, +4h, +24h, +7d)
├─ Did token reach 2X? (within 24h of launch)
├─ Did token reach 3X? (within 7d of launch)
├─ Did token reach 5X? (within 30d of launch)
└─ Did token rug-pull? (detected via contract verification)
↓
Outcome Storage (PostgreSQL "The Gold Mine" table)
├─ Ground truth: Did 2X actually happen? (Y/N)
├─ Timing: When did it happen?
└─ Context: What was market regime at time?
↓
Weekly Retraining
├─ Pull outcomes from past 2 weeks
├─ Retrain all 5 models with new data
├─ Evaluate meta-learner performance
└─ Deploy updated models if AUC improves
Why This Matters for Freelancing: This outcome tracking represents production-grade ML practice that most freelance projects never achieve. Standard approaches:
Anubis approach:
Anubis offered three subscription levels via Telegram:
| Tier | Price | Features | Audience |
|---|---|---|---|
| Standard | $15/month | Gallery alerts (90s delay), read-only access | Casual traders |
| Elite | $35/month | Elite channel (30s delay), /lookup command, manual lookup | Active traders |
| Founder | $50/month | All above + /positions, leaderboard, early access to features | Serious traders |
Payment Methods:
Customer Retention:
| Period | Market Regime | Subscribers (Peak) | MRR (Peak) | Status |
|---|---|---|---|---|
| Nov 2024 | BULL | 8 | $180 | Growing, new feature development |
| Dec 2024 | BULL | 18 | $420 | Marketing push, referral incentives |
| Jan 2025 | BULL→BEAR | 31 | $480 | Peak subscribers, but declining |
| Feb 2025 | BEAR | 12 | $180 | Heavy churn, new signups rare |
Financial Reality:
The Core Problem: Memecoin fundamentals are terrible
Statistical Reality:
Why Anubis Couldn’t Fix This:
Comparable Services & Their Fates:
Lesson Learned: Selection bias in market timing. Launched during BULL market enthusiasm, hit steady state during BEAR market withdrawal.
July 2025 (6 months in): System fully operational, but revenue declining with market
August 2025: Serious discussion—continue investing or acknowledge market reality?
Factors in Decision:
Decision Made: Complete controlled shutdown, capture learnings, pivot to freelancing
Shutdown Process:
Final Costs:
Monthly Savings: $750/month (Helius + hosting) available for other projects
Realization: All skills gained from Anubis Bot are highly marketable
Portfolio Value of Anubis Bot:
Freelance Applications:
Market Validation (Post-Shutdown):
Every active service requires ~11.3 hours/month of operational overhead:
Hours/Month Breakdown
├─ Monitoring & alerting (2 hours)
├─ Bug fixes from production issues (3 hours)
├─ Database maintenance & optimization (2 hours)
├─ Dependency updates & security patches (1.5 hours)
├─ Customer support & troubleshooting (1.5 hours)
├─ Documentation & knowledge transfer (1 hour)
└─ Unexpected incidents & firefighting (0.3 hours)
────────────────────────────────────────
Total: ~11.3 hours/month per service
For 71 services: 71 × 11.3 = ~800 hours/month just for maintenance
Mitigations Used:
Lesson for Freelancing: Services-based work has lower overhead than product maintenance. 1 service maintained for 100 customers = 800 hours/month. 1 project delivered for 100 customers = 0 hours/month after delivery.
Production crisis (August 2025): Database grew to 28 million dead tuples, causing query timeout
Resolution Process:
What This Teaches:
54,000 events/day ≈ 37.5 events/minute at average rates, but 200+ events/minute at peaks
Lessons:
Never encountered “unexplained” issues because of systematic approach:
Example: Cache miss rate spiked from 2% to 18%
Alert Triggered → Runbook Consulted → Investigation
├─ Check Redis connection status (healthy)
├─ Check connection pool saturation (normal)
├─ Check key expiration rates (elevated)
├─ Check TTL settings (accidentally lowered in recent deploy)
└─ Resolution: Revert TTL change, monitor for stabilization
Total time: 15 minutes from alert to resolution
When presenting Anubis Bot to potential clients or platforms:
Technical Depth:
Production Maturity:
Problem-Solving:
For Gun.io / Arc.dev / Toptal:
“I built a production cryptocurrency intelligence platform that processed 54,000 events daily across 71 microservices with 99%+ uptime over 220 days. The system included a 5-model machine learning ensemble generating 5.65 million predictions with outcome tracking, a 29GB PostgreSQL database managing 1.86 million tokens, and a complete revenue system handling Stripe + Solana Pay subscriptions for 31 paying customers.
While the product didn’t succeed due to unfavorable market fundamentals (memecoins are inherently volatile), the technical execution was production-grade: comprehensive monitoring, systematic debugging, database optimization under scale, and disciplined software engineering practices.
This proves I can build and maintain complex systems that actually work in production, not just in tutorials.”
Monthly Costs:
Revenue at Peak:
Why This Matters: Most SaaS advice assumes:
Reality for this project:
Lesson: Revenue of $15–50/month per customer works only at 1,000+ customer scale. At 31 customers, infrastructure costs dominate.
Product Model:
Freelancing Model:
Shift Impact:
Time Commitment:
Anubis Bot demonstrates that this developer:
✅ Doesn’t Just Talk About Concepts
✅ Makes Pragmatic Decisions
✅ Delivers Production-Grade Code
✅ Understands Business Realities
The skills and practices demonstrated in Anubis Bot directly transfer to freelance projects:
For Clients Hiring This Developer:
Competitive Advantages in Freelancing:
Anubis Bot Status: Archived in DigitalOcean Spaces (1.9GB backup) Timeline: 220 days of operation (November 2024–January 2026) Final Status: Controlled shutdown, strategic pivot, lessons captured
Key Metric for Reviewers: A developer who built AND shut down a production system learns more than someone who only builds. This demonstrates maturity and business judgment.