Work with Joel

Plugin performance audit

For teams that ship an IntelliJ Platform plugin and hear about UI freezes, typing lag or high CPU. One plugin, a fixed scope and a fixed price, with written results and patches.

Who it is for

  • Plugin vendors whose reviews or support inbox mention freezes, "IDE is not responding", slow typing or high CPU.
  • Companies with an internal plugin that their developers complain about.
  • Teams preparing a release for a new IDE version who want the cost on the UI thread measured before users see it.

What the audit covers

  • Reproduction. Your plugin runs in a clean IDE for each version you support, with freeze detection set to 500 ms and thread dumps captured on every freeze.
  • UI thread measurements. Time spent on the UI thread when your settings page opens, when your actions update, when your tool windows open and at startup, each measured cold and warm.
  • Code review for freeze patterns. Blocking read actions in background tasks without cancellation, file or network access and process launches on the UI thread, and waits on other threads while holding the read lock. These patterns are behind many of the freeze reports in JetBrains' issue tracker.
  • Your existing reports. Thread dumps or idea.log excerpts that users already sent you are traced to the code that caused them.

What you receive

  • A written report: each finding with its measurement or stack trace, why it blocks and its priority.
  • Proposed patches as a pull request or a diff, with tests where the fix allows them.
  • Before and after measurements for every finding that gets a patch.
  • One round of follow-up questions by email after delivery.

How it works

  • You send the plugin build or access to the repository, the IDE versions you support and any freeze reports you have.
  • Within 2 business days you receive the scope in writing: plugin, IDE versions, delivery date and price.
  • 50% is paid when the work starts and 50% on delivery. Delivery is within 10 business days of the start, or 15 for an extended scope.
  • The work is asynchronous: email and the pull request. A call is available if you prefer one.

Price

  • USD 10,500, fixed, for one plugin and up to 3 IDE versions, delivered within 10 business days.
  • USD 15,000, fixed, for an extended scope: more than 3 IDE versions, or a plugin with several background subsystems, language servers or external processes. Delivered within 15 business days.
  • Paid by international bank transfer in USD, against an invoice.

Terms in short

  • The patches are yours once the invoice is paid.
  • Your code and your data stay confidential. Signing your NDA is fine.
  • The audit reports what it finds and cannot promise that no other freeze exists. Liability is limited to the price paid.

Track record

  • Freeze bugs in IntelliJ's own code, reported to JetBrains with the root cause, a measurement and a proposed fix, plus 8 pull requests to intellij-community, all still open: see JetBrains Platform tickets.
  • Background ReadAction Freeze Companion, a plugin that flags the blocking read action pattern in your own code.
  • 146 plugins in this catalog, each checked against the IDE versions it supports before release.

Start