# 163 Java Profiling Refactor

> Use when you need to refactor Java code based on profiling analysis findings — including reviewing docs/profiling-problem-analysis and docs/profiling-solutions, identifying specific performance bottlenecks, and implementing targeted code changes to address CPU, memory, or threading issues. This should trigger for requests such as Refactor the code with profiling; Apply profiling; Refactor the code with profiling; Optimize hot path. Part of cursor-rules-java project

- Skill: `majiayu000/163-java-profiling-refactor` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/163-java-profiling-refactor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/163-java-profiling-refactor/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/163-java-profiling-refactor

---

# Java Profiling Workflow / Step 3 / Refactor code to fix issues

Implement refactoring based on profiling analysis: review profiling-problem-analysis-YYYYMMDD.md and profiling-solutions-YYYYMMDD.md, identify specific performance bottlenecks, and refactor code to fix them. Ensure all tests pass after changes.

**What is covered in this Skill?**

- Review analysis notes: docs/profiling-problem-analysis-YYYYMMDD.md, docs/profiling-solutions-YYYYMMDD.md
- Identify specific bottlenecks from the documented findings
- Refactor code to address CPU hotspots, memory leaks, threading issues, or other performance problems
- Run verification: ./mvnw clean verify or mvn clean verify

**Scope:** Changes must pass all tests. Apply fixes incrementally and verify after each significant change.

## Constraints

Verify that changes pass all tests before considering the refactoring complete.

- **MANDATORY**: Run `./mvnw clean verify` or `mvn clean verify` after applying refactoring
- **SAFETY**: If tests fail, fix issues before proceeding
- **BEFORE APPLYING**: Read the analysis and solutions documents for specific recommendations
- **EDGE CASE**: If request scope is ambiguous, stop and ask a clarifying question before applying changes
- **EDGE CASE**: If required inputs, files, or tooling are missing, report what is missing and ask whether to proceed with setup guidance

## When to use this skill

- Refactor the code with profiling
- Apply profiling
- Refactor the code with profiling
- Optimize hot path
- Performance refactoring

## Workflow

1. **Review profiling analysis artifacts**

Read `docs/profiling-problem-analysis-YYYYMMDD.md` and `docs/profiling-solutions-YYYYMMDD.md` to select target bottlenecks.

2. **Apply targeted performance refactors**

Implement focused code changes for documented CPU, memory, or threading hotspots, incrementally and safely.

3. **Verify behavior and performance build integrity**

Run `./mvnw clean verify` or `mvn clean verify`; if tests fail, fix issues before continuing.

4. **Prepare handoff for verification phase**

Summarize implemented changes and expected metric improvements for Step 4 comparison.

## Reference

For detailed guidance, examples, and constraints, see [references/163-java-profiling-refactor.md](references/163-java-profiling-refactor.md).

