I'm Miko Pawlikowski and this is HockeyStick.
Today we're talking about the role of software engineering
manager, something close to home for virtually everyone in tech.
Whether you're considering becoming one, trying to get better at being
one, or complaining about one to your significant other, there are
good and bad ways of doing it.
And we'll talk about both.
I'm joined by Akanksha Gupta, the author of "Think Like a Software Engineering
Manager", Manning, Engineering Manager at Amazon AWS, and Amazon Bar Raiser,
and a huge advocate of women in tech.
Akanksha previously worked at Robinhood, Audible, and Microsoft.
Welcome to this episode, and thank you for flying HockeyStick.
Akanksha, how are you doing today?
I'm doing great and thank you Miko for inviting me for this podcast.
I'm very excited to talk about your book and to meet the author behind.
"Think like a software engineering manager" is a catchy title.
the moment I saw that I knew I needed to read the book.
Who came up with the title?
Was that yours or is
that the editing team?
so I did come up with the title so I am a software engineering manager,
and, I've been a software engineer.
That's where I started my career.
I was always passionate about moving to management.
this is, a few of my learnings and experiences coming out live,
especially from that, transition from a software engineer to a
software engineering manager.
Definitely.
And it's a catchy title for sure.
Would you like to tell us a little bit about why you decided to
write a whole book about that?
Was it traumatic enough of an experience that you figured let's help
others Make it a little bit smoother.
What's the story behind the book?
Yes.
absolutely.
the story behind the book is that, my career started as a software engineer.
anytime I change jobs as a software engineer, there were multiple resources,
out there, that can help you with coding and, things around that, for
example, a few top of my mind are lead code and hacker rank, which are
still, very relevant in today's world.
with few years as a software engineer, when I finally decided that my technical
foundation is strong and I want to, make the move to engineering management.
I struggled to find the right set of resources to help me
with, interview preparation.
And also, once I'm in the role, thrive in that role.
there are books around there, like "the manager's path" and, "extreme ownership".
So I won't deny that, there aren't any.
books or blogs out there.
but I really felt that they still, miss that, practical experience, or,
I would want someone to, tell me, what to really expect if I'm in that role.
so all my, struggles and anxieties, were really the driving force,
behind putting this book together.
so this also, covers some of my interview preparation notes and, how I went about
really using my experience from one job and translating it to, the other
job really, helping others out there, who are in a similar situation like
me, first of all, thinking whether, this is the right move for them.
and, how do you treat it?
you don't want it to be a one way decision, not everybody's
going to be successful.
from a software engineer to a software engineering manager.
So really understanding that differences, doing that introspection: will I be good
at that role if I were to take it, right?
So it's more targeted at people who consider making the jump, rather
than the people who already have?
Is that a correct assessment?
so it covers both aspects of it, but yeah, it definitely, helps people who
are also, thinking about that move and that's exactly, what chapter two is all
about, understanding, that transition and making sure, that's good for you.
Once you are in the role, it also provides, all the experiences
and nuggets of how you should be thriving at that role.
the target audiences, software engineers thinking about that role.
pretty new, engineering managers in the role and, trying to navigate, all
the complexities around it and also the experienced EMS, you know, who want to
learn new and, grow to their next level.
So it covers all the aspects of it.
let's uncover some of that.
I think for a lot of people who listen to this, there's going to be a healthy,
good chunk who are actually software engineers or some kind of related
field, doing as a day job day to day.
So I think what you just described, that decision of whether to make that move
or the perception of that being seen maybe as the only career progression
route, is definitely something that a lot of the audience will be familiar
with and will really hit close to home.
So maybe let's start there.
I was happy to see that you addressed the question of promotion versus
lateral move, for engineering managers.
And I think this is this perennial question of the career progression to
maybe staff versus, engineering manager.
Can you talk a little bit about how you thought about this when
you were writing the book and what advice you were given around that?
So I think this is, like moving from software engineer to a software
engineer manager, this being treated as a promotion is like a very common
misconception, fortunately in all the, big firms and even the, medium sized
tech firms that I have worked with, there are always two career ladders.
One where as an individual contributor slash software
engineer, you can grow in that role.
focus on technology without worrying about, managing people, and taking care
of the people aspect and, if you really want a combination of both, which is
technology and people, you can, move to an engineering management role.
obviously you start your career as a, initial entry level or
a junior software engineer.
And as you grow up on the role, there's always a chance to, laterally move
to a subsequent, position where you can start managing people for those,
who, would like to continue as a software engineer and, continue on
that individual contributor track as you, definitely said there's positions
like, software engineer or principal engineer, that we commonly have in Amazon.
So you definitely have a track for it.
And, if someone feels like, Hey, I want to move to the people aspect,
then you have the engineering manager, a senior director, VP, like
that sort of a career trajectory.
So in my opinion,
doing that lateral move is not at all a promotion.
And that's what I have seen in, the tech firms, It's more of
what motivates you and, what will make you successful and happy?
another thing I'll call out is that again, it's not a one way door.
I have personally seen in my friend circle, people who moved from an engineer
to a engineering manager, did not like the role or maybe did not thrive and then
moved back as a individual contributor.
So I've definitely seen that happen.
it's easy to do at a level which is closer to where you do the lateral move
versus, someone like very senior VP trying to, move as an individual contributor.
those can also happen, but rare situations, it's mostly, closer to a
senior software engineer moving to a, senior software engineering manager role.
I think it's interesting what you just mentioned about being able to go back
and I'm trying to scan my memory how many times I've actually seen this
in action and I can count it on one hand only, people who, stayed at the
same time, made, an impact as a people person as a manager and also kept
themselves, sharp enough and up to date enough for long enough period that
they could go and do something without feeling a bit too embarrassed about it.
but I think like you said, it's possible, but it's definitely not easy.
And, I think it's more of an exception than a rule, to be honest with you.
So you mentioned that in the ideal world, and from your experience in AWS, this are
two paths that are more or less equivalent in terms of prestige, and I guess money
really is the quiet part set out loud.
which is, a motivation for a lot of people understandably, but is it
really true for the majority of time?
Or is it more of an idea world situation and a few places get it right.
But on average, it's probably not a hundred percent true.
What would you say to that?
it's not a universal rule for sure.
the tech firms are definitely following it, right?
If you talk about, Fangmula, there are still, few, I would say, government
agencies and things around that, that definitely don't follow this
universal rule, where, having that manager in your title can be more
of a prestige, as you said, right?
even though, the pay might be similar.
but yeah, In the software tech sector, I'm definitely seeing these to be, pretty
much at par in terms of, the prestige and obviously the money aspect of it.
That's great to hear.
So let's move to what happens once you take the plunge, right?
You've succeeded so far as an individual contributor.
You were selected.
you were the junior person.
Eventually became senior person.
And at some point you decide to take the dive and become a manager.
And that's a big change.
Why is it such a big change?
So the biggest change, the moment you take that role, obviously
technology will continue, right?
You have to be, very close to, the code itself and the product.
what changes, overnight is the people aspect of it, right?
You are now managing people.
your success is the success of your team and your team members, right?
you have to be very much, vested in not just your career growth, but the career
growth of people reporting to you.
You will be, on day to day Basis or weekly basis would be, doing
one on one conversations, career discussions, helping a junior engineer
grow to a senior software engineer.
that entire people aspect that, comes with the engineering manager role is something,
that, any new engineering manager has to learn, grow and really hone that skill.
Yeah, and on top of that, you have the added problem that yesterday
you were all peers on the same team and all of a sudden now people are
supposed to report to you, right?
Which is also not easy.
what does your book offer in terms of advice for dealing
with that particular problem?
going back in my time at Audible, I was a senior software engineer and
that's where I made the transition to a software engineering manager.
And, I became the manager for a team where I was myself a software engineer.
So obviously, as you said, my peers were someone who were asked to
report to me in the coming few days.
so one strategy, that worked was, Taking it slow, it wasn't like a
cold turkey change immediately.
so I worked with my manager to have a good transition period where,
Instead of they directly reporting to me on the first day.
I tried to build relationships, obviously I had relationships as peers
working with them together in a team.
I started spending more time doing one on one conversations with them,
trying to understand, what works for them, what doesn't work for them.
any type of things we can change in the team just to make sure, that
we are more productive as a team.
So just, building that relationship one on one, with the team
members, was very helpful.
and again, you're not taking that transition slow, right?
So I think I definitely use good 3 months or so before my actual transition
to, use that time to just understand, people's motivations, how I can help them.
another, thing that I kept in mind was being a patient listener, right?
this is also something that I learned that, as a software engineer, you can be
absolutely vocal and, share your opinions.
But as an engineering manager, you want to hear others, right?
You want to understand where is it that you can go and help them, right?
that sort of a skill set was something that took time to, get used to,
but, observing from the side and, making sure you're not jumping on
anything and everything, right?
so that's what, that's the strategy.
And that's, on similar lines is what I cover in the book that, small nuggets
that you need to change that can really help, others believe in you, trust you
as a leader will take you a long way.
Yeah, I think that definitely helps with that discomfort.
Another thing that I think I've seen in basically everybody I know that made this
transition is that Until then, you had a very concrete way of demonstrating,
that you've delivered what you said you would, of criteria of success, and
you deliver your tests, they all pass, it's all, checklist, and then all of
a sudden, you got much more fluffy goals, oh, is the team doing okay?
Is the morality nice?
And it's much harder to have automated unit tests to verify your team morality.
Okay.
absolutely right.
is that also something that you cover in the book?
Are there any hints that you can give to people on that?
If
Yes, your entire success metrics change, right?
As an individual contributor, your success metrics could be, you leading
the projects, making sure, that we are hitting the deadlines, obviously the
code quality for which, we have a lot of automated tools to, kind of test that.
The moment you become a software engineering manager,
your success metrics change.
As I said earlier, your success is literally your team success.
so not only are you responsible for making sure the projects, hit
the timeline in the right way.
the teams were all should be high.
One thing I can say is that, it's not completely fluff, right?
at least I've seen that a lot of it can, be clearly objectified.
so few forums could be, doing.
frequent, surveys to just check off, how the people are doing.
And this is pretty much a practice that I'm seeing, majority of
the tech firms that follow.
so yeah, making sure that, how's the work in general?
Are they happy?
This also helps, not just an immediate engineering manager to
know how the team is doing, but also like the HR to understand, how
are the benefits and compensation, everything is, at the industry bar.
So I think, it helps in multiple ways.
all those factors are very difficult but there are ways
where, you can objectify, all that.
so I also covered the aspect of, as an engineering manager, it's also important
to focus on engineering and operational excellence in your team, right?
your team members cannot just be like, pushing code like it has
to be good quality code that is, logical, maintainable for the future.
people are making sure that there is stress on documentation so that, tomorrow
if you have a new hire in the team, it's not spending, months and months just
to train them and bring them on board.
yeah, definitely, covering all that aspects.
Okay.
So let's spend a few minutes now to try to paint the picture of what a
good software engineering manager actually looks like in practice.
we already gave some hints and we talked about the early, transition details.
But if we go back to first principles, what are the most crucial things that
make a good software engineering manager?
And what are the bad ones that make a terrible one?
as a good engineering manager, of course, you have to be a people person,
You have to put others, before you.
so any good engineering manager in my head would be, Driving career
discussions, doing frequent one on ones.
And when I say frequent, obviously, weekly or bi weekly, depending on the team size,
mentoring and coaching people, right?
so this would be really, important for me and, having that, emotional, intelligence,
the empathy towards, the team members.
So I think that's one.
the second would be you walk the talk as an engineering manager.
I personally would not ask anyone in my team to do something
that, I wouldn't do myself.
So really leading by example, there was a point, at Amazon where, there was a
lot of focus on using AWS technologies in our day to day, work and, focusing
on, what's the latest and the greatest.
So I knew, and I could see that, in the technical roadmap coming six
months, we would be using some new AWS technologies, which obviously
my team doesn't have expertise and even I don't have expertise on.
So my goal was to get my team members, AWS certified, to make sure we are,
geared ahead of time, before we get into the real practical projects.
what I did was I went ahead, started exploring about the various
certifications, myself took the time to study, get AWS certified, and then
use that example in one of my team meeting to really motivate the team to,
learn and get to, get AWS certified.
leading by example, really help my team members to understand, the importance.
I could share my learnings and what new, knowledge that I gained
as part of the entire process.
I could also, point them to a lot of learning resources.
And then, out of the eight engineers, like five of them, really Did
pursue the AWS certification.
a good software engineering manager should definitely, lead by example.
I think that these are the main things that I think from the people
aspect of it, and then, Jumping to the project aspect, right?
they should be, organized and should definitely understand the value of time.
because once they are in the role, they will be like the main point of contact to,
ensure a successful delivery of a project.
taking care of like things like resourcing, making sure, you are,
connecting the right dots, someone who's understanding the motivations
of their engineers and, tagging them to the right set of projects.
that comes as part of, the whole project delivery execution.
and in this process, you're building relationships, not just with
your team members, but also your cross functional partners, right?
You would be working with product managers, technical program
managers, QA, UX resources.
thinking holistically about that team, is something, that a good engineering
manager will always keep in mind, keep people on track, recognize everyone,
of the work that they are doing, and it doesn't have to be always,
a compensation based, recognition, which is not, always, possible.
So just, thanking people for all their work and acknowledging
that, we value them as an asset.
So that's really important.
and I think, the next aspect would be the whole process, right?
doing it the right way.
As I said, you are thinking about engineering excellence.
You're thinking operationally that the code is of high quality and maintainable.
tomorrow, if you know a particular service that you own has to
be transitioned to a new team.
That transition should be as seamless as possible.
So I think, these would be the main skill sets, or things that a good
engineering manager would keep in mind.
yeah, I definitely missed, the whole hiring and attrition piece in the people
aspect where, you have to make sure you're hiring, the greatest people,
you're maintaining a hiring bar, you're not always thinking about, Oh,
I'm hiring this person for my team.
You're hiring it for the company.
So it should be a skill set match for your team, but also
a culture fit for your company.
what else?
Yeah.
Attrition, that is something that will happen.
gearing up and being proactive about it, are the important things, or,
Definitely that distinguishes a good engineering manager from a bad.
Okay.
I think we can go back to basically hiring attrition and performance
management, maybe in a little bit.
I'm curious as you are researching the book and preparing, what were some of
the worst examples of what you've seen people do as engineering managers?
What's the most, important to avoid things and mistakes that people do?
the biggest mistake I saw was people using, the career discussions to be
more of project check-in, those 30 minutes or so are for, you to connect
with your team member, focus on their, motivations, opportunities and, have an
actionable item for their career growth.
I myself have, sometimes, given the project timeline.
brought like project discussions as part of one on ones.
But, obviously taking a step back from that.
So I think, the worst mistake and engineering manager could do is use,
career discussions or the one on one meetings to make it more of a
project check in and, use the entire time for that sort of a discussion
versus, focusing on the real piece of it, which is helping someone grow.
Okay, I'll take that.
I've seen a fair share of that being done and I agree.
That's probably a pretty bad newbie mistake.
What about some good examples.
Can you think of anybody who inspired you and from whom you learned a lot, that
ended up being the foundation for what you think about software engineering manager?
These
yes.
So I think, in my years, I've always observed, my managers and my leaders,
with different, leadership styles, to see, like what, what would make a
good engineering manager versus bad.
the way someone executes, that also helped me, make my set of, principles, right?
Okay.
these are the things I should be doing.
And these are the things I shouldn't be doing.
no particular person in mind, but, Having observed multiple leaders, and it's
not just, people up in the hierarchy, like also some of my peers, there have
been instances where I have learned from, my peer software engineering
managers, personally, delegation is one thing that comes, top of mind, right?
that's another unique skill set that you as an engineering
manager have to, learn and hone.
and I can, definitely, I feel comfortable saying that every new software engineering
manager, like that's one thing that majority of them struggle with.
At least, from my experiences as I mentor other, engineering managers.
So delegation is something, where people struggle with and in my head is
a very important skill set to learn.
Why do you think people struggle so much with delegation?
it's just a human psychology, right?
you have that, 'I would do everything myself' mindset, right?
Especially for folks, who were a software engineer, they might
think, 'Oh, if I do this task, I can definitely do this faster', right?
Versus, trying to teach someone, spending that, knowledge transfer
time and getting them up to speed.
What people, definitely, miss in that is that as you are teaching someone
else, you are definitely removing yourself as a bottleneck and also
having that multiplier effect, right?
Going back to your question, having that mindset of, I want
to do everything myself, and be like that sole knowledge bearer.
And the other aspect that I've also seen, which is very interesting is, people who
are super hardworking, they can sometimes.
Feel guilty about, offloading work to others, and that's
also another aspect where, they might struggle with delegation.
Have you seen this scenario?
Imagine, you're an IC.
You are very good at what you're doing.
You continue doing some work.
And then one day, You're told,' okay, now you're supposed to delegate that'
and you delegate that and all of a sudden you realize, okay, I'm not that special.
Someone else just can learn this and can also do that.
Is that also part of the equation that I guess selfish, 'I want
that recognition from doing that'.
And now how do I justify me being here if someone else is doing that?
that's exactly what I covered in the first one.
you want to be the sole knowledge bearer, to, continue to keep your
prestige and, like that special aspect.
but in my opinion, as you are growing in the role, a junior engineer having
that mindset might be okay, but, anyone who's senior in the role, should
definitely, use the power of delegation and stay away from that mindset.
You can be good at doing a particular job.
you would be, till six months, one year.
You can be a rock star.
you're absolutely good at it, but there would be a point where you also need to
start growing to the next level, right?
And what got you here will not take you further.
So that's exactly where.
you need to prepare someone else in your role so that you can step up and,
pick bigger challenges, Maybe you were thinking about like a team wide problem
all this while and now you want to, scale yourself, think about something
across team or across organization.
until you free yourself up from the usual tasks that you've done, and
you've been good at you cannot scale and have that, multiplier effect.
What else is crucial?
I think you hinted previously at shaping the team by hiring and
managing attrition and delivering performance management and all of that.
So maybe let's jump into that now.
What's the most important in all of that?
where do you usually start, when you mentor some new,
software engineering managers?
I think in the hiring aspect of it, the first, principle in my head is to start
with, why do you need to hire, right?
You need to understand, what is the motivation, Why can't the
individual, workforce continue to, deliver, what you're expecting?
is it like new set of work or, someone left the team and you
want to, fill that position?
is there a shortage of a particular skill set in your team?
So really understanding the why behind hiring, is step one.
and something, I ask every, software engineer to think
about, as the first step.
Once you know the why, you can absolutely decide how do you want to go about hiring?
and that can also help you understand, what are the forums
or the portals that you should be, reaching out, to, do that hiding.
So that's like the first, principle in my head, like understanding
the reasoning behind it.
and that also helps you justify to the leadership in case you're asking for,
more, open head count rules, right?
what's the justification behind that role?
once you have that, the second step is to figure out, are you always going to
focus on, the external hiring, which is hiring folks from inside, or, you want to
grow someone internally into that role?
just throwing out an example, let's say you have an engineer in
the team who's, Always been very interested in the product side of it.
And, focusing on the product success metrics.
and you don't have a product manager think about can you help this person grow
knowing their long term, motivations to be in a product manager role, into that role.
these sort of things to keep in mind where, it's not always like
the de facto, external hiring, but also keeping in mind the internal,
career motivations of internal folks.
so that's another, key skill set and something that, people
miss as they think about hiring.
then, as you are hiring.
Also understanding, are you hiring, for an existing team, which can
be, obviously your team, or are you trying to set up a team from scratch?
Because these two scenarios will completely be different, right?
If you're trying to, hire someone for your existing team, you need to keep, the
existing skill set of the team members in mind, the team culture, because this
new person is going to join and, they need to gel up with the existing set of
employees, on the contrary, if you're trying to, hire for a team that you're
building from scratch, you need to be very clear with the tenets or mission of
this new team, because that's what you're going to use to, sell to the new set
of, members that you're going to hire.
and also understand, that you want to hire a mix of junior and software engineer.
balancing all that skill set, and then these are the new set of people who
are going to define the team culture.
I think, in both ways, there's like a, Pros and cons, so you have to, keep
all these factors proactively in mind, as you are thinking about hiring.
So these are the fundamentals that I also cover as part of my book.
And there's an entire chapter that talks about hiring, that
goes into these level of details.
another common thing is that, you want to be focused on the diversity and inclusion
piece, At least something that, I have learned in my recent years is make sure
that, the job description you're having should use gender neutral language, right?
the job description should be inviting, you're trying to make
it as inclusive as possible.
So yeah, these are some, good tips that I have learned in my, recent years
and something that, I apply and, I'm sharing with everyone through my book.
What advice do you give for those situations
as important as hiring, attrition is also something that any engineering
manager should, proactively think about.
I feel it's totally inevitable.
especially in given times where, we have, with the whole pandemic, people
started working from home and now the companies are asking members to come
back with the whole return to office.
so when I think about attrition, It, it can be driven by, two motivations, right?
One could be voluntary, one could be involuntary.
voluntary reasons would be, yes, you have family reasons, one of your
family member is moving or you want to pursue some, higher education.
or you're just not happy with the role, right?
Your company's mission is to do something and you're totally opposite.
you don't have any beliefs.
So there can be a lot of, voluntary reasons, that can, cause attrition.
Compensation is not good.
and then there can be involuntary reasons, Which we've all seen in the
recent times, there can be layoffs or, there's more of a merger and acquisition.
And that also, causes, some of the positions to be, removed.
there's always a combination of these two.
when we think about attrition now, as a software engineering manager, you can be.
proactive about it, or you can be reactive about it.
in terms of being proactive, you can always, maintain a hiring pipeline.
one thing that I usually do is, I'm trying to, continue to,
invest in my professional network.
Let's say you, you are attending conferences, right?
Definitely, advertise about your company, share more about, what exactly you do.
So you are, generating that awareness about that.
And then, there might be in future people interested in the role.
so this is more of a proactive measure where you are thinking about the
hiring pipeline, keeping that word out.
Another key aspect that I would call out is, thinking
about internal mobility, right?
You have a set of people you are managing, using those one on ones,
which I brought up earlier to, understand their career motivations.
And if you think that, someone is at a risk of, moving away, because, maybe
their career aspirations are not being met, try to be proactive about it.
If someone wants to move to a particular role, see if you can, provide that
internal mobility and support that move, so that, you're not losing the
person, because obviously there's a very high, backfill and hiring cost
involved every time you lose an employee.
So I think, that these are some of the proactive measures you can take.
Now, on the flip side, let's say, your employee has taken the decision, then,
you get into the mode where you're trying to take any reactive measures, right?
So the first and foremost should be.
trying to see, how you can save that situation if it's like a compensation
thing, then, maybe engage with HR and, your manager just to see if there's
anything you can, do to still keep the employee, obviously making sure
that, looking at their, how big of an asset, then that way you can pull some
levers and, try to, save the situation.
or if it's more of an, again, internal motivation to move to a different role
or, a different technology, then you can try to find a fit within the company.
So this is again, a reactive measure.
Now, this is not always true.
Sometimes people have already made up their mind, and it's like, a situation
from where there's no going back, right?
So in that situation, it's important to, just acknowledge what is in front of you,
and then making sure that transition, of this employee out is as seamless as
possible, so in such situations, you can focus on making sure that there's a
proper, off boarding checklist, right?
Where This person does no knowledge that is lost in this transition.
So making sure you have all the knowledge transfer sessions
with the existing team members.
there's good set of documentation.
Once this person leaves, thanking this person for whatever they've done, till the
time they were in the team, they've been an asset and you never know when, they
might come back and join back your team.
And I'll tell you, I've seen that multiple times, especially in my
Amazon culture, where people have, left a particular team and, tried a
different gig in an internal team and have come back to the previous team.
Never think that door is shut.
So always, that whole, transition should be seamless, because anyone leaving,
also impacts the morale of your team, just making sure that, that morale is
high is also something that you have to keep in mind as part of attrition.
this is basically the ultimate test of how well you've done as a manager.
If a person is leaving, and let's say that this is a situation when they have
a good reason to leave and you stop supporting them, then at that stage you
don't act anymore in their best interest and don't support them to go and get
that better for their situation job.
It's okay, so you've, made me feel that you cared for me and you were
in my corner this entire time.
And now that I'm leaving, all of a sudden that changes, right?
But it's hard.
I remember the first person who quit on me, the initial
reaction was like, Oh, wow.
I invested so much in you and I thought we were doing great.
Why are you going?
this is awful.
But then when you think about it for a little bit, then you
understand, okay, this genuinely is a better opportunity for them.
And it allows them to do X and Y, that's when you show them the
support and you help them because this is the right thing to do.
So yeah, I can definitely relate to what you just described and I feel like this
is this, weird test at the end of that, that dynamic that's waiting for you.
as you gain more experience, you accept that and you'll be
more, mature in your approach.
your first experience of someone quitting on you, definitely take the learnings,
and then when it happens again, and as I said, attrition is inevitable, right?
you can do a better and better job and learn from those experiences.
So I think we've covered a lot of good stuff now, and what comes to mind is
In this new position, you've taken the plunge, you focused on all this
other things, and you spent most of the day now resolving people's problems
and listening to them and trying to get the project to go in the right
direction and for everybody to grow.
And the question then becomes: how do you.
Make sure that you don't get left behind in terms of growing
yourself in the entire process.
What advice do you offer, in that respect?
you have to invest in your team members and you have to invest in yourself.
as an engineering manager, and even, perhaps any role, growing and
investing in yourself is a continuous, you know, iterative process, right?
There's never enough.
with engineering manager, any manager, it's an important aspect because it's
not a coding language where you can go, debug the code straight away.
understanding people is, always a difficult task.
what may work for one person might not work for the other person.
I definitely feel that, it's a continuous learning and, growing process.
You have to invest in, growing yourself, in terms of, okay, technology people,
but you also have to, spend time.
I feel like just to, regulate your mental temperament, just because, sometimes
as a software engineering managers, you can be in really tough situation.
So I think, like balancing that is really important.
something that has worked well for me as well as, the first one being, having
like mentors or, sponsors in your life.
having people who you look up to, who can be your sounding board, who can,
definitely guide you toward, when you are facing any difficult situations.
having them is really important.
obviously your manager, in the organization can also be a really
good mentor, but I strongly believe in having someone, who's outside your
immediate leadership chain, that way you can be as transparent to them.
And, also get that outsider perspective.
Sometimes you're pretty bogged into, what you're working on.
there are, definitely several platforms out there, within an organization, I've
seen a lot of, mentoring circles that these companies have, outside, LinkedIn
is a huge community and something that,
I'm very active at, there are also platforms like Plato HQ, growth, mentor,
mentor crews that I've seen, and, I've also been part of, so definitely,
would recommend people to check out if they've not heard about them.
mentorship is one big thing.
second would be, as an engineering manager, as I said, you have to be close
to the technology, engineers should feel that their manager is sound and, they
can go to approach them whether it's a technical problem or a people problem.
one thing that I definitely recommend engineering managers to do is
to, be in touch with technology.
This can be through basic, pet projects that they can do on their side.
For example, I myself was trying to, with this whole Jenny, I like
trying to do like a quick chatbot one of the week and just, get, get
understanding of, what it's all about.
also, reactively reading code reviews for the team.
I think that also helps, you exactly know what people are working on and
don't have to, waste your one on ones asking that, plus at the same time,
it keeps you closer to the code.
that's another, way to keep, continuously invest and grow
yourself, especially technically.
Apart from reading, technical blogs or the books, that are, there are,
plethora of resources out there for that.
what else?
there are some really good books, of course, and there's "think like a software
engineering manager", but then there are also, other good books that one can learn.
I especially find the Harvard Business Review, articles and books
to be very useful when I think about, engineering management.
that's, another thing.
and, 1 thing that.
The, is also important just to focus on the soft skills, right?
you have to be a good, communicator and a facilitator when it
comes to discussions, right?
you have to get your points across to the team and, be able to, comprehend others.
So I think the communication and then, if you're managing a team,
conflicts are also inevitable.
being a good facilitator when it comes to that, is also something that's important.
So for that, there are some good, LinkedIn learning resources
can really help to grow.
in my book, I cover, another concept where I've spoken to many people and
find it a little controversial so I suggest people to also interview
frequently, and then, it's not a very embracable idea, I would say.
in my opinion, if you interview frequently, you know what exactly, is
the industry standard, what's going on, what do you need to be, continuously
prepped up for if you were to, change the role at any point in time.
yeah.
So that's another interesting concept, for people to think about.
Awesome.
So yes, in case you missed it, the book is called "think like
a software engineering manager".
It's available at manning.
com.
and, we're going to put a link in at the show descriptions.
Words for anybody who's now listened to this and is wondering, maybe is in a
situation when they have to decide which way to go, whether to go into engineering
management or try to stay, I see any last advice to leave our listeners with.
Yep.
be patient.
a lot of people that I know are, trying to make that move.
one of the question I usually get when I'm, mentoring them is
okay, when is the right time?
How soon can I move?
it's a typical example of, grass looks greener on the other side, right?
be patient, take your time to, research about the role, really gauge
your interest in terms of, what's your motivation to move to the role,
assess your skillset, talk to people who have, done the, walk the talk.
also try to, find people who have thrived in the role as a, senior stuff,
staff engineer, principal engineer, you want to know both aspects of the
role, before you take the decision.
This is not the defacto or, promotion route.
make sure that you're very clear with your motivation of moving and whether,
that's the right skill set because you don't want to survive in the role.
You want to thrive in the role.
be very, careful about your move.
take your time, assess the situation.
And then when the time is right, obviously, take the plunge.
Awesome.
Thank you very much.
That is good advice.
And hopefully it will help some of our listeners.
Thank you.
And I'll see you next time.
Thank you for having me.