# Amanjeet Singh

Amanjeet Singh

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Hunting iOS Memory Leaks: S1E1

DevFeed: [Hunting iOS Memory Leaks: S1E1](<https://devfeed.tech/articles/hunting-ios-memory-leaks-s1e1-28534.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/hunting-ios-memory-leaks-s1e1/>)

Author: Amanjeet Singh Gurtatta

Published: 2026-05-09T09:43:49Z

Content type: article

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Memory Leaks](<https://devfeed.tech/topics/memory-leaks.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [test](<https://devfeed.tech/topics/test.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [ios](<https://devfeed.tech/tags/ios.md>), [memory](<https://devfeed.tech/tags/memory.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [memory-leaks](<https://devfeed.tech/tags/memory-leaks.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [traces](<https://devfeed.tech/tags/traces.md>), [unit-test](<https://devfeed.tech/tags/unit-test.md>)

### AI overview

The first edition of Hunting Memory Leaks describes development of XCTestLeaks, a tool that runs unit test schemes, checks for retain cycles with leaks(1), and produces HTML leak reports. The author reports fixing two memory leaks in Firefox-iOS-related code and outlines a workflow using project-specific GitHub Actions, Claude Code, and optional upstream issues or pull requests.

### Source excerpt

Welcome to the first edition of Hunting Memory Leaks. Another wild week, mostly battling with XCTestLeaks, the tool I've been building on the side. I'll release it once I'm confident the workflow holds up across at least 5 repos. For context, I've

## Discovering iOS Memory Leaks IV: Detecting via Unit Tests

DevFeed: [Discovering iOS Memory Leaks IV: Detecting via Unit Tests](<https://devfeed.tech/articles/discovering-ios-memory-leaks-iv-detecting-via-unit-tests-28531.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/discovering-ios-memory-leaks-iv-detecting-via-unit-tests/>)

Author: Amanjeet Singh Gurtatta

Published: 2026-01-07T01:46:06Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [Memory Leaks](<https://devfeed.tech/topics/memory-leaks.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [macOS](<https://devfeed.tech/topics/macos.md>)

Tags: [ios](<https://devfeed.tech/tags/ios.md>), [macos](<https://devfeed.tech/tags/macos.md>), [memory](<https://devfeed.tech/tags/memory.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [memory-leaks](<https://devfeed.tech/tags/memory-leaks.md>), [tests](<https://devfeed.tech/tags/tests.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

This article explores detecting real iOS memory leaks with unit tests instead of UI tests. It describes running the macOS leaks tool against the Firefox process during unit-test teardown in the iOS simulator to shorten the feedback cycle and broaden coverage.

### Source excerpt

Using unit tests and macOS leaks tool to catch real iOS memory leaks.

## Building GARUD, a Video-Powered Animal Tracking System for the NxEVOS Hackathon

DevFeed: [Building GARUD, a Video-Powered Animal Tracking System for the NxEVOS Hackathon](<https://devfeed.tech/articles/the-one-where-brobots-won-3-5k-28538.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/the-one-where-brobots-won-3-5k/>)

Author: Amanjeet Singh Gurtatta

Published: 2025-06-07T16:01:00Z

Content type: opinion

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Development](<https://devfeed.tech/topics/development.md>), [Hackathon](<https://devfeed.tech/topics/hackathon.md>), [Robotics](<https://devfeed.tech/topics/robotics.md>), [Computer vision](<https://devfeed.tech/topics/computer-vision.md>), [dashboards](<https://devfeed.tech/topics/dashboards.md>)

Tags: [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [dashboards](<https://devfeed.tech/tags/dashboards.md>), [development](<https://devfeed.tech/tags/development.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [robotics](<https://devfeed.tech/tags/robotics.md>)

### AI overview

The article recounts how the authors returned to hackathons as working professionals and developed GARUD, a video-powered animal tracking system, for the NxEVOS Hackathon. The project was inspired by difficulties locating wildlife and was built using the NxEVOS video cloud platform.

### Source excerpt

The Hackathon Bond Jasmeet and I have always loved hackathons. Back in our college days, we collectively participated in over 20 hackathons. For me, they helped shape my early interest in Android development; for Jasmeet, it was robotics. In the beginning, we were just figuring out what we enjoyed --

## Discovering iOS memory leaks III: Automating with Github Action

DevFeed: [Discovering iOS memory leaks III: Automating with Github Action](<https://devfeed.tech/articles/discovering-ios-memory-leaks-iii-automating-with-github-action-28532.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/discovering-ios-memory-leaks-part-three/>)

Author: Amanjeet Singh Gurtatta

Published: 2024-12-01T10:28:06Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Memory Leaks](<https://devfeed.tech/topics/memory-leaks.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [test](<https://devfeed.tech/topics/test.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [github](<https://devfeed.tech/tags/github.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [ios](<https://devfeed.tech/tags/ios.md>), [macos](<https://devfeed.tech/tags/macos.md>), [maestro](<https://devfeed.tech/tags/maestro.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [process](<https://devfeed.tech/tags/process.md>), [test](<https://devfeed.tech/tags/test.md>), [tests](<https://devfeed.tech/tags/tests.md>), [xcode](<https://devfeed.tech/tags/xcode.md>), [yaml](<https://devfeed.tech/tags/yaml.md>)

### AI overview

This third article in a series explains how to automate iOS memory-leak detection in a CI pipeline using GitHub Actions. It covers setting up a macOS runner, building and installing Firefox iOS, launching the app and running a Maestro test, invoking the leaks command, uploading reports, and using a baseline to distinguish known leaks from newly introduced ones.

### Source excerpt

Automating Leak Detection with Github Action

## Stressing the JVM GC on Android

DevFeed: [Stressing the JVM GC on Android](<https://devfeed.tech/articles/stressing-the-jvm-gc-on-android-28537.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/stressing-the-jvm-gc-on-android/>)

Author: Amanjeet Singh Gurtatta

Published: 2024-03-10T08:49:55Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Java](<https://devfeed.tech/topics/java.md>), [Code](<https://devfeed.tech/topics/code.md>), [now-in-android](<https://devfeed.tech/topics/now-in-android.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [android](<https://devfeed.tech/tags/android.md>), [android-vitals](<https://devfeed.tech/tags/android-vitals.md>), [anr](<https://devfeed.tech/tags/anr.md>), [fragmentation](<https://devfeed.tech/tags/fragmentation.md>), [gc](<https://devfeed.tech/tags/gc.md>), [java](<https://devfeed.tech/tags/java.md>), [leak](<https://devfeed.tech/tags/leak.md>), [memory](<https://devfeed.tech/tags/memory.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [mobile-performance](<https://devfeed.tech/tags/mobile-performance.md>), [now-in-android](<https://devfeed.tech/tags/now-in-android.md>), [outofmemory](<https://devfeed.tech/tags/outofmemory.md>), [performance](<https://devfeed.tech/tags/performance.md>), [stress](<https://devfeed.tech/tags/stress.md>), [stresstest](<https://devfeed.tech/tags/stresstest.md>)

### AI overview

This tutorial describes GCStress, a Java application that deliberately creates garbage-collection pressure through repeated random byte-array allocations and cache removals. It explains how to integrate it into Google's Now in Android app, trigger it with an Android broadcast and adb, and observe effects such as skipped UI frames, possible ANRs, and potential out-of-memory errors.

### Source excerpt

This post talks about a way to stress Java garbage collector.

## Discovering iOS memory leaks: A case study with Firefox app II

DevFeed: [Discovering iOS memory leaks: A case study with Firefox app II](<https://devfeed.tech/articles/discovering-ios-memory-leaks-a-case-study-with-firefox-app-ii-28529.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/discovering-ios-memory-leaks-case-study-part-two/>)

Author: Amanjeet Singh Gurtatta

Published: 2024-02-24T11:22:22Z

Content type: article

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Firefox](<https://devfeed.tech/topics/firefox.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Memory Leaks](<https://devfeed.tech/topics/memory-leaks.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>)

Tags: [firefox](<https://devfeed.tech/tags/firefox.md>), [github](<https://devfeed.tech/tags/github.md>), [ios](<https://devfeed.tech/tags/ios.md>), [leak](<https://devfeed.tech/tags/leak.md>), [memory](<https://devfeed.tech/tags/memory.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [memory-leaks](<https://devfeed.tech/tags/memory-leaks.md>), [mobile-performance](<https://devfeed.tech/tags/mobile-performance.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [release](<https://devfeed.tech/tags/release.md>)

### AI overview

A case study of contributing a memory-leak fix to Firefox for iOS. The article describes the pull-request process, an initially unmerged approach, the eventual fix involving a UI kit retain cycle, and lessons about coordinating with open-source maintainers.

### Source excerpt

Discover my experience in contributing to Firefox ios fixing their memory leaks

## Implementing Radial Swipes in UI Tests

DevFeed: [Implementing Radial Swipes in UI Tests](<https://devfeed.tech/articles/doing-a-radial-swipe-in-ui-test-28533.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/doing-a-radial-swipe-in-ui-test/>)

Author: Amanjeet Singh Gurtatta

Published: 2024-02-20T12:36:00Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [ui-testing](<https://devfeed.tech/topics/ui-testing.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Android](<https://devfeed.tech/topics/android.md>), [math](<https://devfeed.tech/topics/math.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [automation](<https://devfeed.tech/tags/automation.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [maestro](<https://devfeed.tech/tags/maestro.md>), [math](<https://devfeed.tech/tags/math.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>), [ui](<https://devfeed.tech/tags/ui.md>), [ui-testing](<https://devfeed.tech/tags/ui-testing.md>), [uitest](<https://devfeed.tech/tags/uitest.md>)

### AI overview

A tutorial on implementing radial swipe gestures for UI tests. It derives points along a circular arc with parametric equations and uses JavaScript and Maestro to generate swipe coordinates for an Android clock alarm test.

### Source excerpt

Discover the intricacies of implementing a radial swipe in UI testing with a step-by-step guide. We'll unravel how to tackle this with an example of Android clock app.

## Discovering iOS memory leaks: A case study with Firefox app

DevFeed: [Discovering iOS memory leaks: A case study with Firefox app](<https://devfeed.tech/articles/discovering-ios-memory-leaks-a-case-study-with-firefox-app-28530.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/discovering-ios-memory-leaks-case-study/>)

Author: Amanjeet Singh Gurtatta

Published: 2023-12-25T21:07:16Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [Memory Leaks](<https://devfeed.tech/topics/memory-leaks.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Firefox](<https://devfeed.tech/topics/firefox.md>), [App](<https://devfeed.tech/topics/app.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [crashlytics](<https://devfeed.tech/tags/crashlytics.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [ios](<https://devfeed.tech/tags/ios.md>), [leak](<https://devfeed.tech/tags/leak.md>), [memory](<https://devfeed.tech/tags/memory.md>), [memory-leak](<https://devfeed.tech/tags/memory-leak.md>), [memory-leaks](<https://devfeed.tech/tags/memory-leaks.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

A case study on detecting and prioritizing memory leaks in iOS apps. It explains automatic reference counting, recommends prioritizing production leaks and monitoring core flows, and uses a Firefox iOS app with UI tests and the macOS leaks command-line tool.

### Source excerpt

Discover how to efficiently detect and manage memory leaks in iOS apps using the leaks command line tool with example

## The Role and Responsibilities of Mobile Platform Teams

DevFeed: [The Role and Responsibilities of Mobile Platform Teams](<https://devfeed.tech/articles/busting-myth-for-the-role-of-platform-team-28527.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/busting-the-myth-platform-team/>)

Author: Amanjeet Singh Gurtatta

Published: 2023-05-03T18:56:29Z

Content type: opinion

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Mobile](<https://devfeed.tech/topics/mobile.md>), [Development](<https://devfeed.tech/topics/development.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [development](<https://devfeed.tech/tags/development.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [ios](<https://devfeed.tech/tags/ios.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [platform](<https://devfeed.tech/tags/platform.md>), [platform-teams](<https://devfeed.tech/tags/platform-teams.md>)

### AI overview

This article examines how mobile platform teams emerge as organizations scale and encounter recurring issues such as slow app launches, crashes, increasing build times, and declining conversion. It explains that these teams address both technical and prioritization concerns, collaborate with product managers and analysts, and are not solely responsible for fixing every issue.

### Source excerpt

Busting myths and bringing the reality of platform teams to light.

## Diagnosing Android ANRs with Runtime Traces and APM Data

DevFeed: [Diagnosing Android ANRs with Runtime Traces and APM Data](<https://devfeed.tech/articles/demystifying-the-anrs-puzzle-28528.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/demystifying-the-anrs-puzzle/>)

Author: Amanjeet Singh Gurtatta

Published: 2022-01-21T17:52:38Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [observability](<https://devfeed.tech/topics/observability.md>), [Application Performance Management (APM)](<https://devfeed.tech/topics/apm.md>), [debug](<https://devfeed.tech/topics/debug.md>), [Traces](<https://devfeed.tech/topics/traces.md>), [Crashlytics](<https://devfeed.tech/topics/crashlytics.md>), [Google Play](<https://devfeed.tech/topics/google-play.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-vitals](<https://devfeed.tech/tags/android-vitals.md>), [anr](<https://devfeed.tech/tags/anr.md>), [apm](<https://devfeed.tech/tags/apm.md>), [crashlytics](<https://devfeed.tech/tags/crashlytics.md>), [debug](<https://devfeed.tech/tags/debug.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [google-play](<https://devfeed.tech/tags/google-play.md>), [mobile-performance](<https://devfeed.tech/tags/mobile-performance.md>), [trace](<https://devfeed.tech/tags/trace.md>)

### AI overview

This article explains why Android Application Not Responding events are difficult to reproduce and diagnose. It describes how the Android runtime responds with SIGQUIT and ANR traces, then introduces approaches APM libraries can use to collect ANR data, including watchdog monitoring.

### Source excerpt

Solving the ANRs Riddle on Android

## Stressing memory on Android

DevFeed: [Stressing memory on Android](<https://devfeed.tech/articles/stressing-memory-on-android-28536.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/stressing-memory-on-android/>)

Author: Amanjeet Singh Gurtatta

Published: 2021-10-15T19:58:26Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [observability](<https://devfeed.tech/topics/observability.md>), [x86](<https://devfeed.tech/topics/x86.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [crashes](<https://devfeed.tech/tags/crashes.md>), [devices](<https://devfeed.tech/tags/devices.md>), [instrumentation](<https://devfeed.tech/tags/instrumentation.md>), [memory](<https://devfeed.tech/tags/memory.md>), [mobile-performance](<https://devfeed.tech/tags/mobile-performance.md>), [native](<https://devfeed.tech/tags/native.md>), [performance](<https://devfeed.tech/tags/performance.md>), [processes](<https://devfeed.tech/tags/processes.md>), [stress](<https://devfeed.tech/tags/stress.md>), [stresstest](<https://devfeed.tech/tags/stresstest.md>), [test](<https://devfeed.tech/tags/test.md>), [tool](<https://devfeed.tech/tags/tool.md>), [x86](<https://devfeed.tech/tags/x86.md>)

### AI overview

This article explains how Android memory pressure can affect application processes, including native-memory risks and process killing by LMKD. It introduces stressapptest as a tool for reproducing memory pressure on test devices and validating instrumentation and crash-related behavior.

### Source excerpt

This post talks about stressing memory on any android device and what happens when device is under memory pressure.

## Tracking Wall Clock, On-CPU, and Off-CPU Time for Android Performance

DevFeed: [Tracking Wall Clock, On-CPU, and Off-CPU Time for Android Performance](<https://devfeed.tech/articles/the-three-musketeers-of-time-28540.md>)

Original publisher: [Read original article](<https://www.amanjeet.me/three-musketeers-of-time/>)

Author: Amanjeet Singh Gurtatta

Published: 2021-07-18T21:35:43Z

Content type: tutorial

Language: en

Sources: [Amanjeet Singh](<https://devfeed.tech/sources/amanjeet-singh.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Process](<https://devfeed.tech/topics/process.md>), [cpu](<https://devfeed.tech/topics/cpu.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [cpu](<https://devfeed.tech/tags/cpu.md>), [cpu-time](<https://devfeed.tech/tags/cpu-time.md>), [mobile-performance](<https://devfeed.tech/tags/mobile-performance.md>), [off-cpu-time](<https://devfeed.tech/tags/off-cpu-time.md>), [performance](<https://devfeed.tech/tags/performance.md>), [regression](<https://devfeed.tech/tags/regression.md>), [wall-clock-time](<https://devfeed.tech/tags/wall-clock-time.md>)

### AI overview

This Android performance tutorial explains wall-clock, on-CPU, and off-CPU time, including how to measure them at the process or thread level and how to choose an appropriate monotonic clock API.

### Source excerpt

The post talks about the different types of time to look for: wall clock time, on CPU time and off CPU time