Jitin Sharma's Avatar

Jitin Sharma

@jitinsharma.com.bsky.social

Mobile engineering at Groww, jitinsharma.com

88 Followers  |  148 Following  |  45 Posts  |  Joined: 12.11.2024  |  1.639

Latest posts by jitinsharma.com on Bluesky

Post image

Over the past year, our mobile team has been building blazing fast charts with realtime updates on our android app which is available to everyone now. If you want to nerd out on technical details(hint: canvas.draw) check out the blog by the team!

medium.com/groww-engine...

27.10.2025 12:08 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Read more here
opentelemetry.io/blog/2025/an...

04.10.2025 13:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

we've been using this extensively in our app and it has been helpful in finding hidden latencies, errors within our systems and overall app's foundational layers.

04.10.2025 13:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

trace spans can provide in depth analysis of each step of execution for apps, think distributed system tracing but for different architectural layers of mobile app. additionally if backend is instrumented by otel compliant client, a single trace can travel from app to backend

04.10.2025 13:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

the library provides batteries included implementation of instrumentations around startup, http latencies, frame drops, sessions along with pre built metadata such as screen names, model, network providers which helps in debugging issues

04.10.2025 13:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

opentelemetry android is going api stable!

this unlocks a well proven observability stack for android applications, not to mention the same data format which can be plugged into existing ingestion and visualisation providers!
opentelemetry android is going api stable!

04.10.2025 13:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

reference python code
gist.github.com/jitinsharma/...

27.09.2025 13:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

You can get schema of perfetto from it's python library and then supply it to your favorite model to get query and then execute them on perfetto UI. A great way to start profiling with minimal effort.

27.09.2025 13:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image Post image

I recently tried it out by running this on gpt-oss:20b model using ollama locally and it worked great with some fine tuning, works even better with bigger models.

27.09.2025 13:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

LLMs are great at converting natural language into sql statements, so if you can create a prompt with proper schema, you can actually ask arbitary questions to your trace files!

27.09.2025 13:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Android provides great inbuilt tracing capabilities which can be visualised with perfetto. However traces are complicated to look at from layman's perspective but they are queryable using perfetto sql, a lightweight wrapper on top of sql schema.

27.09.2025 13:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Running asynchronous tasks in apps is more complex in terms of performance and agility than APIs suggest. In my latest blog, I examine results of async execution, exploring the interplay of concurrency and parallelism, with insights on Kotlin coroutines.
jitinsharma.com/posts/explor...

18.09.2025 14:29 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

duality of vibe coding

with newer tech -> wow so much knowledge and code at finger tips

with tech you're proficient in -> this is absolute garbage

engineering prompts is the next frontier for the latter.

30.08.2025 14:20 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image Post image Post image

Android Studio now offers free 30-minute device streaming from various manufacturers for testing across different OEMs.
Great for individual use but many OEM labs are in regions like China and South Korea, requiring GCP project approval, complicating enterprise use 😐

24.08.2025 05:13 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Compute and AI with Kotlin on Cloudflare Workers - Jitin Sharma Building serverless edge functions with Kotlin/JS and sharing code across mobile and serverless platforms

blog: jitinsharma.com/posts/comput...
github: github.com/jitinsharma/...

09.08.2025 14:15 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Recently prototyped Cloudflare Workers using Kotlin and KMP to power both Android/iOS apps and edge functions + AI inference on Cloudflare's network.

Key wins:
- Shared HTTP clients & serialization
- Consistent request/response models
- Type safety everywhere
More details in thread

09.08.2025 14:15 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Finding Network in a haystack - Jitin Sharma Low-level discoveries for improving network reliability and performance in mobile apps

What does it really take for a simple mobile network call to succeed?
Turns out a lot at scale. Blogged my learnings navigating around DNS, IP addresses, timeouts and much more on a journey to make network calls more reliable and faster. Check it out πŸ‘‡

jitinsharma.com/posts/findin...

05.08.2025 14:10 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

On side note, web provides such freedom that my 4 year old website still deploys and remains performant, far cry from mobile world which constantly drowns developers in cycles of SDK updates.

22.07.2025 13:48 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Agentic AIs are goldmine of productivity. I used claude code to do updates to my personal website which I haven't touched for 4 years or so and always procrastinated to do so. Best way to work is with a feedback loop to avoid tech debt. Exciting times!

22.07.2025 13:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Nightlies everyday for internal, 2 weeks for public releases.
Though I would like to move to weekly releases, which are decoupled from sprints.

18.04.2025 15:20 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

We use Cloudflare which does something similar with its edge servers.

16.04.2025 15:16 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Nice, will check out TCP window. Most of our problems are at DNS, IPV6 routing, VPN. Some solved, some on the way!

16.04.2025 15:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

In our case, network fluctuations/speed are the most problematic piece currently for users (stock broking app), hence we capture a lot of it in span attributes to dissect actual issues. Crashes, user abandonment not so much.

16.04.2025 14:51 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Yep, the values are not at all stable. We are planning to define a buffer (2-4%) at each page level while having a global static expected success rate(95% success). While tail end cases will always need more debugging, the above setup allows to get alerted if success rate drops exponentially

16.04.2025 14:42 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

We have started out by looking at latency percentile data, error rates and throughput as well(total number of events). Percentile has challenges as when you go to p95/p99, tail latencies are extremely high due to network issues.

16.04.2025 14:25 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Crashes as issues are standardized now, even as SLOs (99.99% crash free sessions). Other meteics like Page level performance needs to be standardized as well along with auto tracking (ex p90 < 500ms).
Only then such over-indexing will reduce.

16.04.2025 05:14 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

One day, perhaps mobile teams won't over-index on crashes being the end all be all of production problems and try looking for the insidious, frustrating perf problems that aren't so obvious, the silent killers that cause churn in the darkness.

Unfortunately, that day is not today.

16.04.2025 01:05 β€” πŸ‘ 7    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0
Post image

Google recently released Trusted Time SDK to get current time while compensating for drift in device's time. But
- how do devices sync time πŸ•“
- why does device time drift from server 🌐
- would it concern your app πŸ“±
Check out my blog
jitinsharma.com/posts/advent...

15.04.2025 14:30 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

by the age of 30 you should have at least 5000 PDFs in your downloads folder

04.04.2025 21:07 β€” πŸ‘ 4724    πŸ” 452    πŸ’¬ 153    πŸ“Œ 42
Post image

Waiting for gradle build after vibe coding an android app

20.03.2025 14:30 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 1

@jitinsharma.com is following 20 prominent accounts