RSSAmplifier

Blog

Abhi Hiremagalur | Blog

Articles and thoughts from Abhi Hiremagalur

hiremaga.comRSS feed ↗12 posts

Latest posts

The First Two Weeks

Asana gives everyone a sabbatical at four years. I joined knowing that and I'd been looking forward to mine. I'd taken a five-month break between jobs a few years ago, the first long pause of my career. I knew what unstructured time could do. The first day was a Saturday. It didn't feel like the f...

The Athletic Position

## I. Before the Ball Leaves their Strings There is a moment from the 1988 French Open final that most people who talk about tennis haven't had to think about carefully. Steffi Graf plays Natasha Zvereva. Zvereva is seventeen. She has just beaten Martina Navratilova in the fourth round on pure ne...

Questions, Answers and the Room Between

There's a particular sadness to a missed connection between a question and its answer. Someone asks. The response covers everything they already knew, or introduces terms they don't recognize, or solves a different problem entirely. Twenty minutes pass. The asker walks away with almost nothing. The...

At the Speed of Trade-offs

Amongst [Asana's values](https://asana.com/resources/company-values-examples), "Reject False Trade-offs" was the one I struggled with most when I first started in early 2022. A skeptical part of me worried it might excuse paralysis or bait perfectionists. Hearing it invoked in response to real prob...

The Art of the Pit Stop - What Software Teams Can Learn from Racing

> TL;DR: Like racing teams making strategic pit stops, software teams must master the art of planned technical investments. Success comes from timing them well, having clear purposes, and executing with full team alignment. Every weekend during racing season, teams of engineers and mechanics make s...

Letting Go & Finding Flow - My Journey Through Rhythm And Renewal

There’s a moment in the water, right after my first few strokes, when everything clicks. I stop thinking about the rest of the day. My body finds its rhythm, my mind lets go, and I just swim. In that moment, I feel what Mihaly Csikszentmihalyi calls flow—that deep sense of immersion where everythin...

The paradox of empathy

Understanding the needs of another person is immensely helpful in tuning our behavior to them, and in predicting or even influencing their behavior around us. Practicing being attentive to the small cues they provide, through their choice of words and other expressions, can help us relate to their ...

Design partnerships not job descriptions

When designing organizations much effort can be put into defining individual roles. It's important to clearly spell out each individual's responsibilities. Or so goes a type of [conventional wisdom](https://www.google.com/search?q=job+description). In fact, this idea misses the reality of collabora...

Unfamiliar water

When I arrived at Coach Stuart McDougal's [swim workshop](https://www.mindbodyandswim.com/workshops.html) yesterday, all thoughts about my family, parents and work ceased. The anxiety of my journey there left. The tethers of my life no longer suspended me. I felt an unnerving absence of familiarity...

Process is for people

This week a few colleagues and I, software engineers and managers at [VMware Tanzu](https://tanzu.vmware.com/), attended the third installment of [LeadDev Together](https://leaddev.com/course/together). This deep-dive was about defining, refining, and aligning processes. We heard from several accom...

To reduce the cost of change, compose don't inherit

What follows is a note to some of my colleagues in early 2014, as we transitioned from writing mainly Ruby to writing Go. Published belatedly in 2021. --- When changing one part of a codebase, we must account for the other parts know about it. For instance, in renaming a method, we must consider ...

More vibrant Go in 3 moves

# Move 1: Describe interactions with roles [Go's](http://golang.org/) interfaces are [satisfied implicitly](http://nathany.com/good/#toc_8), making it incredibly easy to create [role interfaces](http://martinfowler.com/bliki/RoleInterface.html). Describing new roles as we implement a method lets ...