Skip to main content
Daria
Head of Community
August 12, 2026
Challenge

Challenge: Engineering Meetup in Prague: Evaluating Java Virtual Threads in qTest

  • August 12, 2026
  • 3 replies
  • 49 views

Attended our meetup in Prague? This challenge is for you!
Java Virtual Threads show us how modern technologies can rethink old engineering problems.

Tell us about a time you did the same - which modern technology helped you solve a long-standing challenge and why was it a better approach?

The most creative answer wins the merch.
 

 

    3 replies

    Apprentice
    August 12, 2026

    I was developing a case insensitive search functionality for an internal application and managed to 12x the performance using Java Vector API which is still in the incubator, yet it already delivers nontrivial performance boost in special cases like this. It was a better approach thanks to utilizing byte-wise SIMD.

    Ramanan
    Ace Pilot
    August 13, 2026

    Good day ​@Daria ,

    Here is my response 🙂

     

    One Browser, a Thousand Sessions

     

    For two years, our nightly regression suite was the bottleneck everyone quietly hated. We ran UI tests through a Selenium Grid, and the rule was simple: one browser process per session. That meant a full, heavyweight Chrome instance its own memory footprint, its own OS overhead for every single test. Scale up parallel sessions and you weren't scaling logic, you were scaling machines. We topped out around 30 concurrent sessions before the grid nodes started swapping and tests began failing for reasons that had nothing to do with the product. The "fix" was always the same: request more hardware, spread runs across more nights, or just accept a six-hour suite and go home.

    The shift happened when we stopped spinning up a browser per test and started spinning up a browser context per test instead one browser process, hundreds of isolated, cookie-separated sessions multiplexed inside it. Suddenly the expensive resource (the browser) and the logical unit of work (a test session) weren't tied 1:1 anymore. We went from ~30 parallel tests to over 400 on the same hardware, and the nightly run dropped from six hours to about 40 minutes.

    What I didn't expect was how familiar that idea would feel later, reading about virtual threads. Both are the same trick wearing different clothes: stop pretending your logical unit of work has to map directly onto the expensive physical resource underneath it. Threads got cheap when the JVM stopped tying them 1:1 to OS threads. Our test suite got fast when we stopped tying a test session 1:1 to a browser process. Different layer of the stack, same insight the bottleneck was never the work itself, it was the accounting we'd built around it.

     

    Thanks,

    Ramanan

    Hunt the bugs, ensure the hugs. Quality is everything.
    Daria
    DariaCommunity ManagerAuthor
    Head of Community
    August 18, 2026

    🏁 Challenge Closed. We Have a Winner!

    Thank you to everyone who participated!

    We're happy to announce that @tom123  is our winner! 🎉 His answer on using the Java Vector API to achieve a 12x performance boost on a case-insensitive search was a great example of applying modern technology to rethink an old problem.

    @tom123 , we'll reach out shortly to collect your details and get your merch shipped! 🎁

    Quality Beyond Testing