performance-engineer

charon-fan/agent-playbook · updated Apr 8, 2026

$npx skills add https://github.com/charon-fan/agent-playbook --skill performance-engineer
0 commentsdiscussion
summary

Specialist in analyzing and optimizing application performance, identifying bottlenecks, and implementing efficiency improvements.

skill.md

Performance Engineer

Specialist in analyzing and optimizing application performance, identifying bottlenecks, and implementing efficiency improvements.

When This Skill Activates

Activates when you:

  • Report performance issues
  • Need performance optimization
  • Mention "slow" or "latency"
  • Want to improve efficiency

Performance Analysis Process

Phase 1: Identify the Problem

  1. Define metrics

    • What's the baseline?
    • What's the target?
    • What's acceptable?
  2. Measure current performance

    # Response time
    curl -w "@curl-format.txt" -o /dev/null -s https://example.com/users
    
    # Database query time
    # Add timing logs to queries
    
    # Memory usage
    # Use profiler
    
  3. Profile the application

    # Node.js
    node --prof app.js
    
    # Python
    python -m cProfile app.py
    
    # Go
    go test -cpuprofile=cpu.prof
    

Phase 2: Find the Bottleneck

Common bottleneck locations:

Layer Common Issues
Database N+1 queries, missing indexes, large result sets
API Over-fetching, no caching, serial requests
Application Inefficient algorithms, excessive logging
Frontend Large bundles, re-renders, no lazy loading
Network Too many requests, large payloads, no compression

Phase 3: Optimize

Database Optimization

N+1 Queries:

// Bad: N+1 queries
const users = await User.findAll();
for (const user of users) {
  user.posts = await Post.findAll({ where: { userId: user.id } });
}

// Good: Eager loading
const users = await User.findAll({
  include: [{ model: Post, as: 'posts' }]
});

Missing Indexes:

-- Add index on frequently queried columns
CREATE INDEX idx_user_email ON users(email);
CREATE INDEX idx_post_user_id ON posts(user_id);

API Optimization

Pagination:

// Always paginate large result sets
const users = await User.findAll({
  limit: 100,
  offset: page * 100
});

Field Selection:

// Select only needed fields
const users = await User.findAll({
  attributes: ['id', 'name', 'email']
});

Compression:

// Enable gzip compression
app.use(compression());

Frontend Optimization

Code Splitting:

// Lazy load routes
const Dashboard = lazy(() => import('./Dashboard'));

Memoization:

// Use useMemo for expensive calculations
const filtered = useMemo(() =>
  items.filter(item => item.active),
  [items]
);

Image Optimization:

  • Use WebP format
  • Lazy load images
  • Use responsive images
  • Compress images

Phase 4: Verify

  1. Measure again
  2. Compare to baseline
  3. Ensure no regressions
  4. Document the improvement

Performance Targets

Metric Target Critical Threshold
API Response (p50) < 100ms < 500ms
API Response (p95) < 500ms < 1s
API Response (p99) < 1s < 2s
Database Query < 50ms < 200ms
Page Load (FMP) < 2s < 3s
Time to Interactive < 3s < 5s
Memory Usage < 512MB < 1GB

Common Optimizations

Caching Strategy

// Cache expensive computations
const cache = new Map();

async function getUserStats(userId: string) {
  if (cache.has(userId)) {
    return cache.get(userId);
  }

  const stats = await calculateUserStats(userId);
  cache.set(userId, stats);

  // Invalidate after 5 minutes
  setTimeout(() => cache.delete(userId), 5 * 60 * 1000);

  return stats;
}

Batch Processing

// Bad: Individual requests
for (const id of userIds) {
  await fetchUser(id);
}

// Good: Batch request
await fetchUsers(userIds);

Debouncing/Throttling

// Debounce search input
const debouncedSearch = debounce(search, 300);

// Throttle scroll events
const throttledScroll = throttle(handleScroll, 100);

Performance Monitoring

Key Metrics

  • Response Time: Time to process request
  • Throughput: Requests per second
  • Error Rate: Failed requests percentage
  • Memory Usage: Heap/RAM used
  • CPU Usage: Processor utilization

Monitoring Tools

Tool Purpose
Lighthouse Frontend performance
New Relic APM monitoring
Datadog Infrastructure monitoring
Prometheus Metrics collection

Scripts

Profile application:

python scripts/profile.py

Generate performance report:

python scripts/perf_report.py

References

  • references/optimization.md - Optimization techniques
  • references/monitoring.md - Monitoring setup
  • references/checklist.md - Performance checklist

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.633 reviews
  • Chaitanya Patil· Dec 24, 2024

    performance-engineer has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Kiara Johnson· Dec 16, 2024

    Keeps context tight: performance-engineer is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Advait Thompson· Dec 16, 2024

    I recommend performance-engineer for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Yusuf Sethi· Dec 16, 2024

    performance-engineer reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Piyush G· Nov 15, 2024

    Keeps context tight: performance-engineer is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Rahul Santra· Nov 7, 2024

    Solid pick for teams standardizing on skills: performance-engineer is focused, and the summary matches what you get after install.

  • Isabella Iyer· Nov 7, 2024

    performance-engineer has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Tariq Lopez· Nov 7, 2024

    Registry listing for performance-engineer matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Pratham Ware· Oct 26, 2024

    I recommend performance-engineer for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Kiara Chawla· Oct 26, 2024

    performance-engineer fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

showing 1-10 of 33

1 / 4