Node JS
Python
API Design: 5/10
Data Layer & Database: 5/10
Scalability & Performance: 4/10
Active 18 days ago
Invite to interview
Message
Download CVCV
Overview
Technical skills
Roles
Overview
Backend engineer focused on API-driven services and LLM-powered crypto analytics at a senior-entry level with pragmatic production-minded patterns. The strongest proven skill is integrating and hardening external LLM/HTTP services with timeouts, retries, post-processing and a cooldown circuit as implemented in src/services/openaiService.js. The public codebase lacks enterprise-grade observability, secret handling hygiene and formal API versioning or pagination contracts across services.
Technical skills
Node JS• Middle
Python• Middle
Node JS
Knex.js
Axios
Express
Python
Django
Databases
PostgreSQL
SQLite
Middle Backend Developer
Confidence: Medium API Engineer
Backend engineer focused on API-driven services and LLM-powered crypto analytics at a senior-entry level with pragmatic production-minded patterns. The strongest proven skill is integrating and hardening external LLM/HTTP services with timeouts, retries, post-processing and a cooldown circuit as implemented in src/services/openaiService.js. The public codebase lacks enterprise-grade observability, secret handling hygiene and formal API versioning or pagination contracts across services.
API Design
5/10
How well APIs are designed
Reasonable REST endpoints with filtering, pagination and error responses; lacks explicit versioning and idempotency keys but shows considered query filtering and transactional endpoint for subscription extension.
Evidence
vtpbv12/crypto-sentiment-agent/src/api/subscribe.js: GET /users with limit/offset, search and status filters
vtpbv12/crypto-sentiment-agent/src/api/subscribe.js: POST /users/:telegram_id/extend with transaction and notify logic
vtpbv12/crypto-sentiment-agent/src/bot/commands/start.js: bot command handlers and callbacks defining operational API surface
Data Layer & Database
5/10
Working with databases
Uses knex with onConflict merge, explicit transactions and Django migrations/models with integrity constraints; select_related used to avoid N+1 in views.
Evidence
vtpbv12/crypto-sentiment-agent/src/bot/commands/start.js: knex insert().onConflict('telegram_id').merge()
vtpbv12/crypto-sentiment-agent/src/api/subscribe.js: trx = await knex.transaction() and commit/rollback in POST /users/:telegram_id/extend
vtpbv12/cashflow_project/cashflow/migrations/0001_initial.py and vtpbv12/cashflow_project/cashflow/models.py: migration with unique_together and model constraints
Scalability & Performance
4/10
Handling load and speed
Shows conscious concurrency control and rate-friendly patterns (p-limit, delays, cron schedules) and retries, but lacks advanced caching, load-testing artifacts or distributed scaling design.
Evidence
vtpbv12/crypto-sentiment-agent/src/cron/priceAndNewsChecker.js: uses p-limit to limit concurrent sends and limitDb for DB concurrency
vtpbv12/crypto-sentiment-agent/src/services/openaiService.js: retries with delays and withHardTimeout timeouts for external requests
vtpbv12/crypto-sentiment-agent/src/bot/commands/broadcast.js: paced message sending with setTimeout(100) between sends
System Architecture
4/10
Overall system structure
Clear module boundaries between bot, services, cron and api, and use of dotenv for config; overall architecture is monolithic but well-organized for a single-service deployment.
Security & Auth
3/10
Protecting data and access
Some input validation and safe DB usage via ORM/knex; however there are hygiene issues like hardcoded defaults and credentials in code and no explicit auth/versioning for admin API surface.
Evidence
vtpbv12/cashflow_project/cashflow/forms.py: clean() enforces business validation between tx_type, category and subcategory
vtpbv12/crypto-sentiment-agent/src/bot/commands/broadcast.js: ADMIN_IDS constant used for admin checks (hardcoded)
vtpbv12/crypto-sentiment-agent/src/services/openaiService.js: PROXY_URL default contains credentials as a literal default
Reliability & Observability
4/10
Stability and monitoring
Thoughtful reliability patterns are present: request timeouts, retries with backoff, a simple cooldown/circuit-breaker and fallbacks to local indicators; observability is console-based rather than structured metrics and no alerting shown.
Evidence
vtpbv12/crypto-sentiment-agent/src/services/openaiService.js: withHardTimeout, axios timeout, retry logic and startCooldown/inCooldown circuit breaker
vtpbv12/crypto-sentiment-agent/src/services/openaiService.js: extensive console logging around request lifecycle and post-processing
vtpbv12/crypto-sentiment-agent/src/cron/priceAndNewsChecker.js: error handling around cron tasks and guarded early exits when no subscribers
Expertise
Node.js• Middle
Python• Middle
Backend AI & LLM• Middle
Industries
Data & Analytics• Middle
Financial Services• Middle
Technologies
Python• Middle
Node JS• Middle
PostgreSQL
Express
Django
SQLite
Axios
Knex.js
FastAPI• mentioned only
Recommendations
- Develop LLM-backed backend components and integrations that require request resilience, post-processing and fallback logic - ideal tasks include improving or extending src/services/openaiService.js.
- Implement and operate Telegram and messaging-based notification systems and admin tooling, expanding features in src/bot/commands/* and broadcast flows.
- Build and maintain transactional subscription management endpoints and billing hooks using knex transactions and DB migrations similar to src/api/subscribe.js.
- Harden production readiness: secret management, structured logging and metrics, and automated deployments for single-service backends.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
