Helping clients to address performance and instability issues.
Looking for ways to improve system's both physical and logical architecture.
Planning and executing performance load and stress tests.
Analyzing common application problems like thread contention and memory leaks with WinDbg.
Investigating of performance bottlenecks with assistance of tools like: Dynatrace, App Dynamics, JProfiler and Yourkit.
Collecting and analyzing thread and heap dumps.
Developing and executing microbenchmarks using JMH framework to prove or disprove potential performance gains.