About the practice
A crash desk in Taman Kepong Indah, not a product team in a diagram.
Kernel Pulse Grid started after the same pattern kept repeating: Android apps built and tested on a handful of flagships, then failing on the Xiaomi and Oppo units that actually sit in Malaysian pockets.
Why the work looks like this
Play Console already tells you that user-perceived crash rate moved. Crash reporters already catch stacks. What was missing, for the teams who first sat with us, was someone whose job for two weeks was only to name the clusters — Java against native, ANR against fatal, Samsung against Xiaomi — and write it in a pack that did not need a translator.
We stayed a service on purpose. Hosting another console would have put us in the same queue as the tools you already pay for. The useful part is the reading: mapping files, tombstones, OEM skins, and a small bench of retail handsets in Kepong.
The office is at No. 29 Jln 2/1A Taman Kepong Indah. Readouts happen there, on a video call, or at your Klang Valley office if the finding pack is easier to walk with the whole engineering group in the room.
People who read the traces
The same names on the pack and on the call
Hafiz Rahman
Native crash reading, NDK and JNI
Hafiz reads tombstones and JNI boundaries. He spent years on Android media apps where vendor .so files failed on a handful of chipsets. He runs the Kepong bench when a cluster names a library that never dies on a Pixel.
Priya Menon
Java and Kotlin crash clustering
Priya groups Play Console and Crashlytics exports by signature, version code, and OEM. She is the person who notices a flavour mapping went missing, and the person who writes the finding pack in sentences an engineering manager can hand to a sprint without translation.
Lim Wei Shan
OEM reproduction and ANR traces
Wei Shan keeps the Samsung, Xiaomi, Oppo, Vivo, and Realme units current enough to match Malaysian retail. She walks tester videos on those skins and writes whether the freeze held, with API level and skin build in the first line of the note.
How we sit with a team
Intake is a conversation about application ID, version codes, and what already failed in the last release. We do not ask you to migrate crash capture. We do ask for mapping files, and we will delay the clock if they are missing rather than invent names for obfuscated frames.
We write in English. We use the vocabulary Android engineers already use: tombstone, ANR trace, R8 mapping, Application Not Responding, OEM skin. We do not rename those things to sound gentler.
If a cluster is a vendor WebView after a Chrome train, the pack says so. If it is your JNI, the pack says that too. The point of the practice is to stop both kinds of crash from sitting in the same undifferentiated red chart.
How an engagement runs