We wanted an agent to map a web application so that the next agent could write tests against it. The transcript was the wrong shape for that, so we put the graph where it belongs and the agents around it.
OpenAI shipped Operator in January. We built a smaller one inside Mockingjay, using the accessibility tree where we can and falling back to vision when it comes up empty.
We let GPT-4 pick selectors and run actions on a real page during a test. The demo went great. Then we met a virtualized list.
Why we shipped a GPT-4 feature on a weekend a few months back, and the prompt I'm still not proud of.
Why we moved off BullMQ to RedPanda once a Go service had to consume from the bus, and the part that was just curiosity.
Why Mockingjay runs its own browsers in containers instead of shipping a Chrome extension, and what that costs.
A side project I stopped maintaining, why it kept growing anyway, and an Oracle trademark notice somewhere in the middle.
Recorder vs code tests, for automation engineers who have already picked a side.
Why e2e test codebases rot, and the founding bet behind Mockingjay.
Inheriting an AWS account at a small fintech after the vendor was fired, with no handover and no AWS on my resume.
How I shipped JaDX inside an Android app by rewriting 2 of its methods at build time, without forking it.
Looking back at the dozen or so GSoC posts I wrote in 2016, which turned out to be something other than what I thought they were.
I’m Niranjan, a software engineer in India, 10 years in. Right now I’m co-founding Vulneron, an AI-native SOC, and I look after the engineering side of it. Before this there was Mockingjay, Konfirmity and 7 years at Canopy, a Singapore fintech, where I ended up doing DevOps by accident.