borghei/sales-engineer
> Analyzes RFP responses for coverage gaps, builds competitive feature matrices, and plans proof-of-concept engagements for pre-sales engineering
npx skills add https://github.com/borghei/Claude-Skills --skill sales-engineer
A production-ready skill package for pre-sales engineering that bridges technical expertise and sales execution. Provides automated analysis for RFP/RFI responses, competitive positioning, and proof-of-concept planning.
Role: Sales Engineer / Solutions Architect
Domain: Pre-Sales Engineering, Solution Design, Technical Demos, Proof of Concepts
Business Type: SaaS / Pre-Sales Engineering
| Metric | Description | Target |
|--------|-------------|--------|
| Win Rate | Deals won / total opportunities | >30% |
| Sales Cycle Length | Average days from discovery to close | <90 days |
| POC Conversion Rate | POCs resulting in closed deals | >60% |
| Customer Engagement Score | Stakeholder participation in evaluation | >75% |
| RFP Coverage Score | Requirements fully addressed | >80% |
Before producing the deliverable, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the deliverable.
Objective: Understand customer requirements, technical environment, and business drivers.
Activities:
Tools: Use rfp_response_analyzer.py to score initial requirement alignment.
Output: Technical discovery document, requirement map, initial coverage assessment.
Objective: Design a solution architecture that addresses customer requirements.
Activities:
Tools: Use competitive_matrix_builder.py to identify differentiators and vulnerabilities.
Output: Solution architecture, competitive positioning, technical differentiation strategy.
Objective: Deliver compelling technical demonstrations tailored to stakeholder priorities.
Activities:
Templates: Use demo_script_template.md for structured demo preparation.
Output: Customized demo, stakeholder-specific talking points, feedback capture.
Objective: Execute a structured proof-of-concept that validates the solution.
Activities:
Tools: Use poc_planner.py to generate the complete POC plan.
Templates: Use poc_scorecard_template.md for evaluation tracking.
Output: POC plan, evaluation scorecard, go/no-go recommendation.
Objective: Deliver a technical proposal that supports the commercial close.
Activities:
Templates: Use technical_proposal_template.md for the proposal document.
Output: Technical proposal, implementation timeline, risk mitigation plan.
Script: scripts/rfp_response_analyzer.py
Purpose: Parse RFP/RFI requirements, score coverage, identify gaps, and generate bid/no-bid recommendations.
Coverage Categories:
Priority Weighting:
Bid/No-Bid Logic:
Usage:
# Human-readable output
python scripts/rfp_response_analyzer.py assets/sample_rfp_data.json
# JSON output
python scripts/rfp_response_analyzer.py assets/sample_rfp_data.json --format json
# Help
python scripts/rfp_response_analyzer.py --help
Input Format: See assets/sample_rfp_data.json for the complete schema.
Script: scripts/competitive_matrix_builder.py
Purpose: Generate feature comparison matrices, calculate competitive scores, identify differentiators and vulnerabilities.
Feature Scoring:
Usage:
# Human-readable output
python scripts/competitive_matrix_builder.py competitive_data.json
# JSON output
python scripts/competitive_matrix_builder.py competitive_data.json --format json
Output Includes:
Script: scripts/poc_planner.py
Purpose: Generate structured POC plans with timeline, resource allocation, success criteria, and evaluation scorecards.
Default Phase Breakdown:
Usage:
# Human-readable output
python scripts/poc_planner.py poc_data.json
# JSON output
python scripts/poc_planner.py poc_data.json --format json
Output Includes:
| Reference | Description |
|-----------|-------------|
| references/rfp-response-guide.md | RFP/RFI response best practices, compliance matrix, bid/no-bid framework |
| references/competitive-positioning-framework.md | Competitive analysis methodology, battlecard creation, objection handling |
| references/poc-best-practices.md | POC planning methodology, success criteria, evaluation frameworks |
| Template | Purpose |
|----------|---------|
| assets/technical_proposal_template.md | Technical proposal with executive summary, solution architecture, implementation plan |
| assets/demo_script_template.md | Demo script with agenda, talking points, objection handling |
| assets/poc_scorecard_template.md | POC evaluation scorecard with weighted scoring |
| assets/sample_rfp_data.json | Sample RFP data for testing the analyzer |
| assets/expected_output.json | Expected output from rfp_response_analyzer.py |
../../marketing/../../product-team/../../c-level-advisor/../customer-success-manager/Parses RFP/RFI requirements and scores coverage using Full/Partial/Planned/Gap categories. Generates weighted coverage scores, gap analysis, effort estimation, and bid/no-bid recommendations.
python scripts/rfp_response_analyzer.py rfp_data.json
python scripts/rfp_response_analyzer.py rfp_data.json --format json
| Flag | Type | Description |
|------|------|-------------|
| rfp_data.json | positional | Path to JSON file with RFP requirements and coverage data |
| --format | optional | Output format: text (default) or json |
Bid/No-Bid Logic:
Generates feature comparison matrices, calculates weighted competitive scores, identifies differentiators and vulnerabilities, and produces win themes.
python scripts/competitive_matrix_builder.py competitive_data.json
python scripts/competitive_matrix_builder.py competitive_data.json --format json
| Flag | Type | Description |
|------|------|-------------|
| competitive_data.json | positional | Path to JSON file with feature comparison data |
| --format | optional | Output format: text (default) or json |
Scoring: Full (3), Partial (2), Limited (1), None (0)
Generates structured POC plans with phased timelines, resource allocation, success criteria, evaluation scorecards, risk registers, and go/no-go frameworks.
python scripts/poc_planner.py poc_data.json
python scripts/poc_planner.py poc_data.json --format json
| Flag | Type | Description |
|------|------|-------------|
| poc_data.json | positional | Path to JSON file with POC scope and requirements |
| --format | optional | Output format: text (default) or json |
Default Phase Breakdown: Week 1 Setup, Weeks 2-3 Core Testing, Week 4 Advanced Testing, Week 5 Evaluation
| Problem | Likely Cause | Resolution |
|---------|-------------|------------|
| RFP coverage score below 50% triggering No-Bid | Product gaps in must-have requirements or incorrect coverage assessment | Review gap items -- distinguish true gaps from items addressable via configuration, integration, or roadmap commitment; reassess before declining |
| Competitive matrix shows vulnerabilities in 3+ categories | Product gaps relative to a specific competitor, or scoring does not reflect actual competitive dynamics | Validate scoring with field SEs who have competed against this vendor; focus battlecard on differentiators where you lead, not where you trail |
| POC-to-close conversion below 60% | POC scope too broad, success criteria not aligned with buyer priorities, or wrong stakeholders involved | Narrow POC to 3-5 use cases tied to buyer's stated pain; get written agreement on success criteria before starting; ensure executive sponsor participates in evaluation |
| Win rate below 30% | Technical win but commercial loss, late involvement in deal, or poor discovery leading to misaligned demos | Engage earlier in sales cycle; improve discovery quality using MEDDIC framework; align demo storyline to buyer's language not product features |
| Demo-to-POC conversion below 40% | Demo did not address buyer's specific use case or was too generic | Customize every demo to buyer's stated requirements; use their data or industry-specific scenarios; include Q&A and next-step proposal at end |
| RFP response time exceeds 2 weeks | Manual response process without templates or pre-built content library | Build a response library indexed by requirement category; use rfp_response_analyzer.py to prioritize effort on must-have items |
| Stakeholder engagement score below 75% | Key decision-makers not involved in technical evaluation | Map stakeholder roles early; ensure executive briefing alongside technical deep-dives; send personalized follow-up to each stakeholder |
In scope: RFP/RFI response analysis and scoring, competitive feature matrix construction, proof-of-concept planning and evaluation, demo preparation frameworks, technical proposal structure, win/loss analysis methodology, and stakeholder engagement tracking across the 5-phase pre-sales workflow (Discovery, Solution Design, Demo, POC, Proposal).
Out of scope: Sales strategy and territory planning (account executive function), pricing and commercial terms negotiation (use pricing-strategy), post-sale implementation and customer success (use customer-success-manager), marketing content and competitive messaging (use marketing skills), and product roadmap decisions based on RFP gaps (use product-team). Tools analyze static data exports -- no integrations with CRM systems (Salesforce, HubSpot) or RFP platforms (Loopio, Arphie).
Limitations: Bid/no-bid thresholds are configurable but defaults assume B2B SaaS with 30%+ win-rate targets. Competitive matrix scoring is only as accurate as the input data -- validate scores with field experience against specific competitors. POC timelines assume standard 5-week engagement; highly regulated industries (healthcare, government) may require 2-3x longer. AI-assisted RFP tools (emerging in 2025-2026) can reduce response time 60-80% but are not integrated here.
Last Updated: March 2026
Status: Production-ready
Tools: 3 Python automation scripts
References: 3 knowledge base documents
Templates: 5 asset files
Take borghei/sales-engineer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.