Managing Engineers: Value Delivery

This is the 2nd in a 4-part series of how I feel Engineering managers should function. This one talks about value delivery, and how it should be your next priority after focusing on your people.

Your #2 responsibility is delivering value to business.

At most companies (even smaller startups), it’s at the engineering manager level that engineers first start to think about the business[1]. How does my company make money? What is it that customers value? Why is my team building these features? It’s also often the first taste that engineers have of uncertainty & tradeoffs: conversations are littered with: “Can we try this out?”, “I’m not sure it’s going to work.”, “This is what our customers say, but…” and the classic: “Folks, let’s think of what our priorities are.”

As an engineer manager, how do you deal with this uncertainty, this new… mess that is suddenly your life? I have 3 tips:

  1. Do not confuse delivering features with delivering value. When I say this to a lot of product managers, I get an almost visceral reaction: “What do you mean? It’s the features that our customers pay for, it’s what drives our business.” And of course, that is true. Delivering features is probably what is going to get your company featured in Techcrunch, put you on top of Product Hunt, and even bring in revenue.

    Delivering value is delivering what your customers want. Build something people want. Sometimes, it’s more features, but at times, it’s making sure that your app loads much quicker, your site is less buggier, and your interactions make more sense for the jobs he wants to do[2].

    So how does this affect you as a newly minted engineering manager? Just like your product manager counterparts, you should know when to push the breaks on features, and think about things like technical debt and simplifying user experience.
  2. Make sure your team has slack. Not Slack, slack: the quality most ignored in ill-functioning “agile” teams. I would suggest a 20% slack when you start off, and a gradual reduction depending on the amount of uncertainty your team faces. If your team is tightly-wound, pushing themselves to complete sprint after sprint, then they will never be productive and happy, and your company will never get those serendipitous moments from smart engineers that can make or break them.

    This is probably the hardest thing to communicate to a non-technical manager, especially if they have no prior experience with agile management. “What do you mean you are only planning to 80% capacity?” What are they going to do the rest of the time? Make sure you have a technical debt backlog for when engineers are out of sprint work. One thing I always do is to let engineers make their own TBFs (to-be-filed tickets) every sprint, and if they have slack, they can work on an idea that they came up with to improve the product.
  3. Push for at least a 20% planning budget for technical debt. And 30% or more if your product is in bad shape. Only delivering features when your developers are struggling every day with a horrible codebase is probably a bad idea. Make sure that you have an honest and forthright conversation with business: I know you have these wonderful ideas, but we need to put down some speed breakers so we can go fast later. Don’t go for a big rewrite: a 30% budget is enough, make sure you iterate to where you want to go.

That’s it! Practice these few tips, and you are already well ahead of 90% of new engineering managers. Next week, I’ll write about coding in the trenches, and how to earn the respect of your team.

[1] As an aside, I think this is really flawed. Every engineer should learn about the business from Day 1, and really know and grok what they are delivering, and who they are building products for.

[2] If you have a company in the SaaS space, there is an excellent framework from Rahul Vohra that you should adopt.

A Few Thoughts on Managing Engineers

What follows is some really common-sense advice on how to manage engineers. [A lot of it should apply to managing creative people in general, but I don’t really have any experience managing non-engineers].

And because I’ve been thinking about it for a while now, there’s quite a lot to talk about, so it’s in 4 parts. This is Part 1.

Your #1 responsibility is your people.

Make sure that they are happy and productive.

I think if you only take one thing away from this writeup, it should be this: engineering (programming, designing systems, UX, system architecture) is a creative profession, and requires time, dedication, and nurturing to do it right. Your job as a manager is to make sure that your people are on a clear maker’s schedule [2], with as little interruption as possible.

How do you make this happen? Here are two things that I’ve found works well:

  1. Keep meetings to a minimum. Promote asynchronous work. The cost of an interruption, and switching attention from one task to an urgent another is probably minimal (& expected) when you are a manager. But if it happens too many times to your creative engineering team, it is a recipe for disaster. So your job is twofold:
    1. Make a team that can function with minimal meetings. Consider replacing stand-ups with daily checkins. When you do have meetings, have them over a shared document so that decisions are recorded instantly, and everybody has visibility into how a conversation is moving & structured, and what the next steps are.
    2. Step in & protect your team when some VP absolutely wants a team member’s attention for something critical.
  2. Have regular twice a month 1-on-1s with your team members. [Of at least 20 minutes, and not more than 40 minutes long.] Valuing your team also means really listening to them. This means scheduling regular checkins with your team members where your only job is to listen to understand. This is probably one of the most important things you’ll do as an engineering manager, and it’s crucial that you do not skip this cadence step:
    1. You’ll find that the best ideas come from your team. They are the ones who are on the ground every day, facing and solving technical challenges.
    2. You have to create a safe space for them to open up and talk to you about their problems. The best way I’ve found to do this it to make sure they know the conversation is confidential and wouldn’t affect performance evaluations, and that it’s their meeting: they set the agenda, and your job is to listen.
    3. At times you’ll find that some folks really have nothing to talk about. Maybe it’s a dull week, or maybe they have had a really good month, and have no concerns. Fill in the blanks at that point by giving unsolicited, structured, actionable feedback. Talk to them about how they want their career to proceed. Talk to them about your experiences when you were at similar roles, and how you think they can improve in their role.

Well that’s it for this instalment! Next week, I’ll write about being committed to Value Delivery, your #2 responsibility.

Love my house in the mornings

So I’ve been waking up early for the last 6 months or so, and I love my house in the mornings. There’s a cup of steaming tea, the sounds of my maid tinkering in the kitchen, yellow flowers for happiness, and low-floor couches so I can just chill. (The dreaded laptop in the morning is only because I have an early morning meeting, sigh!)

The peace is just lovely. It took me a while to understand that the little things in life are the best, take some time to enjoy them!

Honestly, Sir

Honestly, Sir

Sach bolun sir:
last 2 rides of mine, I canceled.
Why sir? Because of their
names sir. Who wants a Rahim or Abdul
in my (sweet, coying, paan-smelling,
second-hand smoke-filled) Uber?

Especially now sir? Sir patha hai
kya hei yeh Nagrika bill? Why are these
buggers protesting sir? Don’t they have
any other job? Maybe they don’t, right sir?
Biryani every day (in blizzard cold and 
between angry guns) must be good na sir?
These topiwallahs must be taught 
a lesson, sir. (Yes, of course, a lesson. 
In history, and satyagraha).

If they have so much problem, they should 
Go to Pakistan, no? Hamara desh aake
hamse protest? Kya hai sir yeh?
Why are they even protesting? Will they
lose their citizenship now?
I don’t understand sir. Do you?

Let me tell you sir, It was a relief, to get 
Your name finally. Bhagwan ki nam hai na.
(Lady luck pats my back for
having the right parents)
Us Hindujan should stick together sir.
Woh chodo sir. Sunday evening n all. 
Off to CP & party eh? (& an unsaid wink).

I spent some time in thought before 
I picked up my phone.
Driver I said, I just changed my location.
Drop me at Shaheen Bagh instead.

5 Tiny Things I’ve Learnt in Life

These are 5 random, tiny things I’ve learnt in life. Something to bring a smile to your face, or something to read about & maybe think: “Why don’t I try that out?”.

You don’t have to finish every book.

I think the secret to being a voracious reader is this: don’t force yourself to finish every book. I first heard this on a Naval Ravikant podcast, and it immediately felt the right thing to do. There have been several books I’ve abandoned halfway, or even quarter-way, always with a tinge of regret or guilt. But then for every book I’ve thrown away, there is one that I’ve felt an immediate resonance with: savour those books, recommend them to friends, and remember them in your dreams.

I also think you can substitute book for almost anything else you love doing. Even if you are totally into something, there will always be elements of that hobby or that calling that you don’t like. That’s ok! Forgive yourself for those missed pages, and move on.

The body makes the mind.

In the tiniest of ways, even. Try an experiment (this will sound silly): stand up, spread your arms wide, take a stance like the Vitruvian Man, tilt your head up, close your eyes, and imagine you are one of those star athletes who have placed #1 on the podium after a long, gruelling race. 

How do you feel? I think it’s intuitive to us that the body can make the mind feel bad, the most common example is when we’re ill. But the body (even a change of stance), can make you feel different things. I’m still exploring what this means, but it’s part of what makes somebody who has an active life feel full of energy & life too. Or why things like yoga have an impact. We’re all at the end of the day, mammals, rooted in the physical self (even if we spend all of our time up in the clouds), so it’s good to take care of your body.

Meet every Small Negative with a Positive

If you play cricket, and a friend bowled you out, you still get back on the pitch to field. If it’s basketball, and somebody stole the ball away from you, you still run after them, hoping for a counter. Life throws you curveballs as well, some small and some big. The big ones loom large in our memories, bringing in so much angst, worry, and fear. But it’s the innocuous looking small ones that you should take care of.

Let’s say you have decided to go to the gym every other day. You’re all pumped up for it—the gym bag packed, the protein shake ready—but your boss calls you up for a meeting right as you are leaving the office. The meeting drags on for like 2 hours. You hope you’ll make the gym timings until it becomes obvious you wouldn’t. What do you do? I used to go home, say FML, have a drink, and go off to sleep. I think it’s obvious to everybody who has tried to start a good habit, that every time you fall off the wagon, it’s harder to get back on it. Enough of these days, and you skip gym even when you are feeling tired, or even when you are having a bad day.

Instead, meet a negative with a positive. If you skipped gym a day, that’s ok. Turn up the next day. Shit happens. And the day after that, until you have a good habit that sticks.

The Magic of Compound Interest

Imagine you invest money that grows at 8% every year. At the end of Year 10, your money would have more than doubled.

> a = 100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100
> a = a * 108/100

I think it’s something we learn in school that seems like mathematics, and not something that’ll ever see use in real life. But it’s the secret behind good & healthy finances: start saving money early (as soon as you start earning!) & do regular monthly savings. You will have a decent kitty when you finally start to retire. I’ve used & recommended Scripbox, but there are so many options now to start.

The magic of compound interest also works with things other than money. Let’s say you were 0.5x of the person you wanted to be right now. And you know you can try to improve at least 1% every day. How much improvement will you have in a year?

> 0.5 * ((101/100) ** 365)

Yup! 18 times the man you were before. Of course, this is a silly example. But do become aware that small improvements add up quickly.

Science and Belief

This is probably gonna be the most controversial one, so bear with me. The scientific method where everything in the world is a hypothesis until enough experiments prove it to be fact, and these facts advances the state of human knowledge is a wonderful, wonderful thing. I think we disregard how much science has contributed to human society. It’s a fun activity now to disregard science, and turn to abstract concepts like spirituality & philosophy to try to find answers to our problems. I think that is the wrong thing to do. We should always ground our truths in science, and say no to the growing mysticism around us.

But maybe there is something flawed with the scientific method. If the scientific quest is the search for fundamental truths, then, what if there are truths that depend on someone to believe them first for them to be true?

I turn to fantasy tropes because those are always so accessible. Let’s say magic exists. Like the one in Harry Potter. But it requires somebody to really, really believe that it does for it to work. A scientist, being a skeptic at heart, will never get his experiments to succeed. A witch, living somewhere remote, her heart filled with wonder, will spark a glow in her wand.

Now, this is a contrived example, just to expound on the premise. But a more concrete, real example is when we think of how little science understands the mind, and how to mould and discipline it. Let’s say, these spiritual gurus of old Hindu yore have a point, and they’ve discovered a way to calm the mind, build a more successful life, make us a 100% more productive as a society. But it requires you to believe some things first. Some things that might even sound mystical. Should a good scientist pursue this path or not?

I’m of half minds about this, a part of me feels that this frustration is because of course there are things science can’t answer yet—there always will be—even when we think there are no more fundamental discoveries to be made. There have been 15 year gaps in the Wikipedia scientific timeline for example. What if we are going to a 15 year slump? What if good, rigorous science can explain the mind better than these weird theories of belief?

Maybe the middle ground here is to explore what these old philosophers had to teach about the mind. Maybe with a skeptic’s eye, but faithfully following their set discipline, even if they sound mystical and ridiculous. Wake up in the morning and do yoga after bowing down to the sun? What difference is that going to make? Well, a good scientist won’t know until he tries it out.

PS. I talk about feelings and emotions here, this might sound sappy to a few of you macho folks. I have just one advice for you in that case: grow up.