🎮

Dhar - Engineering Manager

What is the guide about?

  • This guide is about how I like to work, what kind of expectations I have and how I like to communicate
  • The idea of this guide is to help us work together seamlessly & reduce friction as much as possible
  • This document is not intended to replace or override the relationship and mutual understanding we will build as we work together. It is merely a starting point where I can communicate my values, ideals and “doctrine”.

Who am I and what do I do?

  • I am Aiyush Dhar, I have been with Fyle for roughly 3 years now
  • I started as a frontend developer here, worked on a bunch of things across our web app, mobile app, integrations app, etc
  • Currently, I am an Engineering Manager taking care of our mobile app and the spender-approver side of our web application.
  • I am responsible for making sure the developers on my team have all the resources required to make their initiatives a success, have a proper work-life balance, and have a great career
  • I am also responsible for taking care of parts of the hiring pipeline, coaching developers, and helping them grow

Work Timings

  • I usually work between 10 am and 6 pm from Monday to Friday
  • 7.30 pm to 8.30 pm I have yoga classes, so I am not generally available at that time

Management Style

  • I like giving independence of decision-making to folks who work with me
    • Each decision you make must be called out on a public channel. I believe in overcommunicating things since I have seen it work well in a remote setup
    • Decisions should be backed with data & strong reasoning. If your argument is not well-formed feel free to reach out to me - I will help you restructure and reframe the statement to make it stronger.
  • You may find that I have strong opinions about a lot of things and I would expect you to have the same.
  • I expect you to have complete ownership of the things that you work on
    • Clearly communicating progress in relevant channels. Here's an example of daily updates
    • image
    • Make sure all stakeholders are in the loop
    • If you are part of the spender web app team the whole of the spender side of the web app is your responsibility i.e. wrt quality of code, performance, design quality, UX etc. The same goes for mobile app.
    • I would expect you to drop notes in a public setting immediately after our discussion and tag me so that we're on the same page
    • If there's any tech debt/bug in the area you're currently working in
      • call out the tech debt on a public channel
      • If it is smallish(~1hr work), fix it off
      • If larger, take proper measures that we don't contribute to increasing the tech debt
      • I would like it very much if we can clear out past tech debt. (to understand what tech debt is check this out)
  • For initiatives that we work on, I would expect you to be ruthlessly focused.
    • Every initiative that we work on directly impacts our customers, so make sure you communicate proper timelines. Any change should be communicated as soon as possible
    • I take timelines very seriously since it is directly communicated to our customers and I would want you to also make sure we respect the timelines that we communicate.
  • Having proper velocity is vital for us to have a competitive edge as a startup so I would like us to optimize any workflow issues you come across in public channels or dm.

Communication Structure

The following communication structure works well for me.

  • Urgent things where you need an immediate response ping me directly in DM
  • Non-urgent things put in our 1x1 channel(more about this later), I will always check it within a few hours or so.
  • In case I don't respond in DM, feel free to follow up in a short period of time (30 mins to 1 hr). I will do my best to respect this but don't overuse this channel for non-urgent things
  • Anything which needs dedicated time and attention block on my calendar. You can ping me in case you don't see any free time slots - I will move a few things around to make it happen

Handling Conflicts

  • I believe in the narrative of Do not reinvent the wheel
    • If something is available out there I would like us to build on top of it
  • I believe in throwaway prototyping. Software development is a wicked problem, which means you don't know what will work till you actually do it.
    • If you think a specific approach makes sense, I would like you to do a rough implementation and de-risk that approach.
    • Basically, the idea is to see if an approach would work or not. This may be a library, a structure you are trying to set up, or a new feature you are trying to implement. You basically optimize for short-term speed ignoring best practices, architectural guidelines, etc.
    • We can discuss and make time for this as required.
    • POCs should be done max in a span of 1-2 days otherwise they don't make sense
    • We shouldn't reuse code from prototypes

Examples of POCs - - Embed GitHubEmbed GitHub

- Embed GitHubEmbed GitHub

1x1s

  • I will make sure to speak to all my direct reports every week and once in 3 weeks for skip levels
  • I will set up a recurring calendar invite for all 1x1s
  • I usually use a separate 1x1 private slack channel for all our 1x1 conversations
    • For example - I and Shishira have a private channel called shishira_dhar_1x1. Weekly every time after our 1x1s we put notes wrt the discussion which happened in that channel.
  • The agenda of the most weekly meetings is roughy this. I will add/remove a few questions based on recent happenings/agenda items
    • What has been the highlight and lowlight of your past week?
    • Goals - how are you tracking this past week? Any blockers I can help remove? 
    • What, if anything, feels harder than it should be in your day-to-day work? 
    • If there was one thing I could do differently to help you more, what would it be? 
    • On a scale of 1-10, how happy are you with your work-life balance? How can we get closer to 10? 
  • Once a quarter I would love to discuss your career goals and aspirations
  • I like to come prepared and would prefer you to be prepared as well
    • The 1x1 is your time and it makes sense that you set the agenda for the discussion. So I would expect you to add notes on what you would like to talk about.
    • I would also be adding notes throughout the week to discuss in the next 1x1 meeting.
  • Anything put in the 1x1 shouldn't need immediate attention and these would set the agenda for the next meeting
  • If there's anything urgent please DM me, like a P0 issue or any emergency where you need help

Feedback

  • I believe feedback is the only true way to grow and it is a 2-way street
  • I will be giving feedback in our 1x1 meetings as and when required/needed and I will make sure the feedback is very actionable which you could follow and improve on a week-on-week basis
  • I would be following up wrt to the actionable items to make sure we're working towards improving
  • I prefer giving feedback in private and lauding in public. in case you have different preferences feel free to reach out to me
  • I would expect you to be very open about giving feedback to me - I wanna grow as well!
    • The best way to gimme feedback is to be very direct and honest about your thoughts
    • If you could gimme specific examples of what went really well or what didn't - that would help me a lot to get better
    • Once we are on the same page wrt certain feedback, I would be putting actionable items on me and would make sure I get better at it on a week-on-week basis

My Blindspots

  • I am strongly opinionated about a bunch of things so it might seem like a high effort to convince me of something at certain times. Please point it out in a dm if this happens
  • I am sometimes very aggressive in terms of deliverables and like pushing things out very frequently. This means I might set shorter deadlines or follow up frequently on pending stuff - if I overdo this please feel free to provide me with feedback

Things I do off work

  • I do yoga daily from 7.30 to 8.30. Please reach out to me and I can put you in contact with my teacher - the classes are great!
  • I am trying to learn chess, do classes once a week. Would love to share my notes and have partners in this journey! feel free to dm me on this
  • I am a huge fan of mental models. Recommendations -
  • I do a bunch of side projects and would love to learn about yours! You can find my repos here
  • I am currently going down the rabbit hole of functional programming. Feel free to ping in case you want to do this too