Rajiv Singh's Avatar

Rajiv Singh

@iamrajiv.bsky.social

SDE JL3 @maersk | Ex Lummo @redbus_in @economize | GSoC 23 @jenkinsci | GSoC 22 @keptnproject | LFX 21 @mojaglobal | GSoD 20 @grpcio | ICPC Regionalist 2020 https://iamrajiv.github.io https://linktr.ee/iamrajiv

321 Followers  |  263 Following  |  53 Posts  |  Joined: 17.05.2023  |  2.0894

Latest posts by iamrajiv.bsky.social on Bluesky

Post image

Glad to share that I will be speaking at BazelCon 2025 in Atlanta, USA.

My talk will be on "Go, Wasm, & Bazel: A Blueprint for Hermetic, High-Performance Web Applications". I’m grateful to everyone who believed in me and helped me reach this stage.

sched.co/28lPL

#bazelcon

09.11.2025 04:58 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
#874 Decouple `ServiceAccountReconciler` from `ActiveCheckReconciler` sync by iamrajiv Β· Pull Request #950 Β· nebius/soperator Fixes: #874

just wrapped up a k8s controller fix that completely changed how i think about software design

started with what seemed like a simple task fix some sync logic between two controllers but ended up learning why fighting against platform patterns makes everything harder

github.com/nebius/soper...

28.05.2025 11:26 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

is it like grpc with a sidecar agent?

02.05.2025 12:07 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
GitHub - iamrajiv/awesome-a2a Contribute to iamrajiv/awesome-a2a development by creating an account on GitHub.

This is an awesome repository I curated with all Agent2Agent protocol resources. Feel free to contribute at github.com/iamrajiv/awe....

17.04.2025 12:40 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

[Other Agent]<--(A2A: task request)<--[Your Agent]
|
(A2A Layer)
|
(Reasoning: e.g., Gemini)
|
(MCP: tool calls)
|
[Your APIs]
|
(Output)
|
[Other Agent]-->(A2A: task response)-->[Your Agent]

13.04.2025 09:35 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
feat(samples): Add go language sample for `A2A` protocol by iamrajiv Β· Pull Request #131 Β· google/A2A Description Fixes: #49 Provides a starting point for developers wanting to implement A2A agents or clients using Go. Adds a new samples/go directory containing the sample code. Follows a modular s...

My doubt is this. A2A is based on HTTP and JSON so I am curious how gRPC services might talk to each other or if we need to use something like gRPC Gateway. I even tried to contribute to the project by creating a PR to add a Go language sample.

github.com/google/A2A/p...

13.04.2025 09:35 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Agent2Agent Protocol An open protocol enabling communication and interoperability between opaque agentic applications.

I was learning about the A2A protocol over the last few days & it is interesting. It is an open standard designed to allow AI agents to communicate & collaborate seamlessly. It is like giving AI agents a common set of rules to chat & cooperate, no matter who built them.

google.github.io/A2A/#/

13.04.2025 09:35 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
WebAssembly Profiling with Pprof and Wzprof - Rajiv Ranjan Singh & Naman Lakhwani Don't miss out! Join us at our next Flagship Conference: KubeCon + CloudNativeCon Europe in London from April 1 - 4, 2025. Connect with our current graduated, incubating, and sandbox projects as the community gathers to further the education and advancement of cloud native computing. Learn more at https://kubecon.io WebAssembly Profiling with Pprof and Wzprof - Rajiv Ranjan Singh, A.P. Moller - Maersk & Naman Lakhwani, Independent Embark on a journey to supercharge your Go applications targeting WebAssembly by harnessing the profiling capabilities of pprof and wzprof. This session unravels the intricacies of optimizing Go-powered web applications for maximum performance. Discover how pprof provides deep insights into CPU and memory usage, forming the foundation of our optimization journey. Complementing pprof, wzprof, tailored for WebAssembly, offers streamlined performance analysis during module execution. Through practical demonstrations, learn how pprof and wzprof work together to resolve performance bottlenecks, optimize computations, and manage memory effectively. This talk equips both seasoned Go developers and WebAssembly newcomers with essential tools and techniques to maximize application efficiency and speed.

I had the privilege of presenting at KubeCon India 2024 alongside my co-speaker @iamrajiv.bsky.social on the exciting topic of "WebAssembly Profiling with Pprof and Wzprof"

While preparing and presenting this talk I learned so much about WebAssembly's potential.

Recording: bit.ly/kubecon-indi...

05.01.2025 12:14 β€” πŸ‘ 11    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
Preview
The BlueSky Technical Conference Community Join the conversation

I’ve created "The BlueSky Technical Conference Community" starter pack, a space dedicated to staying connected with the latest updates in technical conferences and communities.

go.bsky.app/2jmC92A

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

I’m speaking at #KubeCon + #CloudNativeCon India from 11th to 12th December in Delhi, on 'WebAssembly Profiling with Pprof and Wzprof' - Rajiv Ranjan Singh, A.P. Moller - Maersk & Naman Lakhwani, Independent.

sched.co/1mVRb

#kubeconindia

09.12.2024 11:16 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Nope.

20.11.2024 22:55 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image Post image

sunday morning ride 17.11.2024 πŸš΄β€β™‚οΈπŸŒ»

17.11.2024 06:23 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Thanks for creating this, @mvdan.cc. I usually write about Go and system engineering, and I’d love to be added here.

14.11.2024 01:21 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Thanks for creating this, @chris.blue. I usually write about algorithms, databases, and system engineering, and I’d love to be added here.

14.11.2024 01:18 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Done.

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

Wow, the upcoming Wasm I/O event will be interesting too.

12.11.2024 16:06 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Improve OG Image generation for posts on bluesky Β· Issue #6249 Β· bluesky-social/social-app Describe the Feature Currently, the Open Graph (OG) image for posts on Bluesky defaults to the Bluesky logo. It would be more beneficial if the OG image could be dynamically generated based on the ...

Created a feature request. What do you think? I guess it’s important.

github.com/bluesky-soci...

12.11.2024 06:29 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

This approach directly addresses the inefficiencies in memory usage, rather than relying on a GOMEMLIMIT.

12.11.2024 06:14 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

The program still needs to load the entire dataset into memory, even if the GOMEMLIMIT limits the amount of memory it uses. Therefore, it is crucial to redesign the program to process data in smaller batches that do not require loading all the data into memory at once.

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

For example, suppose you have a Go program that loads a large dataset, processes it, and writes the result to a file. You might think that setting a GOMEMLIMIT will help optimize memory usage, but it won't.

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

In high-usage scenarios, setting a GOMEMLIMIT may not make an inefficient Go application more efficient. It's essential to analyze the specific use case and address the root causes of poor memory usage instead of relying solely on a GOMEMLIMIT.

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

Go provides a soft memory limit through the GOMEMLIMIT environment variable, but it may not always be the most effective solution for optimizing memory usage.

#go #memory #performance #rajivsinsights

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

Formally, we define an algorithm to have pseudo-polynomial time complexity if there exist constants c and k such that f(n, m) ≀ c * m^k for all n, where m = g(n) is a function of the input size n.

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

Representing inputs in unary notation can result in polynomial time complexity. If the algorithm's time complexity is `O(n^k)`, then the time complexity of the same algorithm with inputs in unary notation is `O(n^(k+1))`, which is still polynomial.

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

However, if we express the weight limit using W bits, then the input size is O(n log K + log W). The algorithm's time complexity is then O(nW) = O(n * 2^W / 2^W) = O(n * 2^(log W)) = O(n log W), which is exponential in the number of bits required to represent the weight limit.

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

Sometimes time complexity may appear to be polynomial but is not. For instance, the time complexity of the dynamic programming algorithm for the Knapsack problem is O(nW), which seems polynomial in the input size.

#algorithms #rajivsinsights

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

From my previous experience in software engineering, I learned that product decisions are use-case-specific, and there is no right or wrong approach. In some cases, trading speed for correctness is acceptable, while in others, speed takes priority.

12.11.2024 06:12 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

As engineers, we may struggle with the ethical principle of prioritizing speed and efficiency, even if it results in less accuracy, or prioritizing accuracy and completeness, even if it takes more time. These trade-offs are commonplace for engineers.

12.11.2024 06:12 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Partial joins may produce inaccurate results, while using the graph data model in ArangoDB may introduce complexity and slower performance due to graph traversal.

12.11.2024 06:12 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

In software engineering, we frequently encounter trade-offs. At redBus, I worked with ArangoDB, which supports joins. When deciding between utilizing ArangoDB's joins or using partial joins in NoSQL databases, we must weigh the trade-offs.

#softwareengineering #rajivsinsights

12.11.2024 06:12 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@iamrajiv is following 20 prominent accounts