Skip to content
View garregusev's full-sized avatar

Block or report garregusev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
garregusev/README.md

Igor — Product Manager, AdTech · Berlin

I work on programmatic advertising by day and ship my own Android apps by night. In both, my job is the same: decide what gets built and what "done" means. I write the specs, the review gates, and the decision records; AI coding agents write the implementation; I own the release.


🧭 How I build

shipping-with-agents — the working agreement I ended up with after two shipped apps. Prompts as the unit of work, acceptance written by the reviewer rather than the executor, handover docs that survive context loss, and a review rubric where every rule maps to a defect that actually reached production.

Design session picks the approach and writes the prompt → executor session writes code and tests and stops → design session reviews and accepts. Separating who proposes from who accepts is most of the value.

📱 Shipped

  • Catudoku: Cat Sudoku Puzzle — cozy cat-themed Sudoku. Flutter. Live on Google Play, grown through ASO, monetized through ad mediation. Case study — including the month the eCPM "broke" and why fixing it would have been a mistake.
  • SnipShot — area and scrolling screenshots for Android. Native Kotlin, capture via AccessibilityService instead of MediaProjection so there's no consent dialog on every shot. Case study · the capture mechanism is open source: android-scroll-capture.
  • sms-to-telegram — forwards incoming SMS to a Telegram chat, for when the SIM with your bank codes lives in another country. Kotlin, BroadcastReceiver plus a WorkManager catch-up pass. Distributed as an APK rather than on Play, and the README says why.

🔧 Open source

  • android-scroll-capture — how to do area and scrolling screenshots on Android without MediaProjection, extracted from SnipShot. Documents the two things the API docs don't: the two-stroke gesture that stops lists from flinging, and frame matching that doesn't trust the scroll distance.
  • shipping-with-agents — the process above, written down.

🛠 Where I work

Projects run on Flutter and native Kotlin, with a Python/Postgres backend.

AdTech — day job OpenRTB 2.6 · programmatic/RTB targeting · supply and demand side mechanics
AdTech — my apps ad mediation & eCPM diagnostics · app-ads.txt · ASO · product analytics
Working with agents Claude Code · MCP · spec-driven development · decision records · agent workflow & review design

📊 A thing I believe

Agents are fast and confident, so the expensive failure isn't bad code — it's plausible code nobody checked against what it was supposed to do. Most of my process is turning "someone should check that" into a step that can't be skipped.


📬 LinkedIn

Popular repositories Loading

  1. sms-to-telegram sms-to-telegram Public

    Android app that forwards incoming SMS to a Telegram chat — instant BroadcastReceiver delivery plus hourly WorkManager catch-up

    Kotlin 1

  2. catudoku.github.io catudoku.github.io Public

    app-ads.txt host for Catudoku (Google Play) — authorized ad seller declarations

  3. shipping-with-agents shipping-with-agents Public

    How I run projects where I write the specs and review gates, and AI agents write the code — playbook, review rubric, and templates

  4. garregusev garregusev Public

    Profile README

  5. android-scroll-capture android-scroll-capture Public

    Area and scrolling screenshots on Android without MediaProjection — AccessibilityService.takeScreenshot() + injected scroll gestures, with the frame stitching that makes it work

    Kotlin