How to Survive & Thrive as an Engineering Leader

(quirky electronic music) (audience applauds) - Hi, everyone.

Thank you for still being here today.

I saw some people leaving (nervously laughs) and I was worried that I would be speaking to myself, but it's good to see quite a people still here. So, let me start by introducing myself and giving you an overview of my career history. So, my name is Isabel Nyo, and I grew up in Burma, and I came to Australia about 18 years ago. So, I graduated with bachelor and master of computer science from the University of Wollongong, and I've been working in technology industry for about 15 years.

So, my first job was a web developer at a small agency in North Sydney, and I had various job titles since then, which are sort of similar, but slightly different, such as application developer, front-end developer, tech lead, technical director, startup CTO, and most recently, I'm at Atlassian as a development manager, and I'm looking after the product called Jira Service Desk. So, my journey to management is actually not unusual, but not one that I've anticipated or planned for. So, I've always considered myself to be entrepreneur, so I've co-founded a startup.

I've run my own consulting business before, so I always thought that one day, I work for myself than to climb the corporate ladder and take on a managerial.

But, at one point in my career years ago, I was in a place where I was really excited to be mentoring junior developers, helping them with their career development, and helping build a good engineering culture for my team. And all those activity make me really happy because I feel like I was making a much bigger impact than I've ever made as a developer.

So I spoke to my manager and became a team lead, and the rest, as they say, is a history.

And, also at work, I like to read, write, and learn continuously.

I'm a little bit addicted to technology and memes, so you'll see a lot of memes here today to keep you entertained.

And when I'm not looking at memes on the internet, I'm spending time with my family, especially being silly with my six-year-old daughter. So, that is all about me in a nutshell, and now, it's your turn.

I would like to see a show of hand.

So, can I see of a show of hand for people here who are developer or technical people? Okay.

Those who are team lead or tech lead or manager or individual contributor.

Oh, quite a few.

And those who are manager or managers.


Or, those who didn't put their hand up, I hope to entertain you as well with my talk. Okay.

So, regardless of who you are or what you do, I like you to imagine this.

Imagine that you were a superstar developer. You wrote elegant code.

You understood how things were put together behind the scenes, and you were the go-to person for your organisation code base, or any technical issue or any technical direction. And so, what happened next is that, you can guess what happened.

You get promoted because you were so good at that job. And you got a promotion and this is what happen. So, you became a team lead or a manager or anyone who is responsible for other people. So, being promoted to be an engineering leader is actually not a step up or a promotion.

It's actually a virtual separate track, and is a completely different job altogether. So, the saying about what made you successful in your previous role won't necessarily work in your new role, couldn't be more right in this case.

So as an engineering leader who once used to be a superstar developer, how do you survive and then thrive in your new role? So, this is what I'll be talking about today. I'll be sharing with you everything that I've learned in my career as an engineering leader, all the challenges that I've faced in my area as an engineering leader and team lead, and my strategy for how to not only become an effective leader, but also to enjoy my job. And remember, it doesn't have to be horrible or hard. So, let me start with some of the struggle. Alright, the challenges that I faced in my area as an engineering leader.

So, these are the picture of the newly promoted manager. Some people were crying, so.

So, anyway, this was me 10 years ago.

So, the first struggle that I had was that I liked to code, and I took great satisfaction in creating stuff. I liked making stuff.

That was the reason why I took computer science. So, when I first became a tech lead, I found that I didn't have time to code anymore. I didn't have too much time as I used to have because I'll be busy attending meetings, or organising spree, or having one on one with my team member and things like that.

And then, when I became a manager of manager, my time for coding was almost non-existent because I was busy with other activity like planning, vendor management, hiring, budgeting, and all these things. And I just didn't have a few hour block to sit down at my desk and code anymore, and programming require this sort of, problem solving and creativity and thinking, where you need a long, or not so long, like, a few hour block to really sit down and think, and as a manager, you don't have that luxury. So, that was my first struggle.

Second struggle that I had was that I consider myself to be technically competent, and I took pride in my technical ability.

So, when I started dealing with and working with people who were quite different to me and not as technical as I was but they were still awesome at their job, but they were still different, my technical skill became less important.

So, what was more important than was to be able to explain technical details in a way that everyone, especially non-technical audience, understand and feel comfortable with? So, earlier this morning, we had a presentation about junior developer and how people tend to like, take pride in their technical knowledge and try to say things or use words that are hard to understand if you join a group of senior developer, but when you start dealing with other people from different department or different discipline, you have to really understand, what are the things that they won't understand and explain them in the details that they feel comfortable with.

So, that was the first struggle, the second struggle that I had.

And the third struggle that I've had was that I've worked in technology industry all my career, and I saw firsthand how technology is always changing and advancing.

It's still changing today.

So, I was afraid that one day, one of my director or someone in my team might be coming to me, talking to me about the latest or greatest technology, and I will have no idea what it is about.

My technology knowledge or skill would become obsolete. So, that was the fear that I had when I first became an engineering leader, just like this meme. So, someone would be talking about cookies or something, not like cookie, I know about cookies.

They're not that bad. (laughs) Or something else that I have no idea what it is about. And the rest of my struggle were mainly to do with my personality.

So I'm an introvert, as with most people in technology, and being a manager require a lot of human interaction. And this is what I used to fear when I was in a meeting with various people all day long, talking about different things, and this is what I used to fear.

And can I see a show of hands for any introvert here, if you know you're an introvert? So, I hope you can relate to me, or maybe I'm quite special. (laughs) Anyway so, this is what I used to fear when I was in the meeting.

And the last but not least, because I was a developer for more than a decade, I found that sometime, it was easier for me to do thing myself, fix this part or introduce this flow than to teach other people how to do it.

So those were the struggle that I faced in my early year as an engineering leader, and I believe that these are not unique to me. I think a lot of the engineering leader in their earlier career faced all this struggle as well. So now, I can hear you thinking, those were some great struggle, but how did I survive? And I myself survived because I'm standing here in front of you today, to share you my technique or my strategy for how to thrive as an engineering leader. So, let me share with you my strategy, which has helped me in my journey, and I hope they help you in your journey as well, regardless of where you are currently in your career. So, my first strategy is to seek first to understand. So, if there's anything that I truly believe in, it's that we must first understand ourself, and we must first change ourself and improve ourself in order to best serve others, and leadership is all about serving others. With that in mind, I unlearned a lot of things that I've learned in my early day, in my developer day, about what it took to be successful in my role, and what it is gonna take to be successful in my new role. So, what are the things that we need to understand? So, first in the list is your responsibilities. So, when you get promoted or when you take on an engineering leadership role, find out what you are expected to achieve in your new role, and I'm sure that, I'm pretty sure that it's not to write as many line of code as you could, or it's not fix as many bugs as you can.

It's possibly around delivering business result through technology, creating technology capability for your company, and expanding the team capability.

So, after you understand your role and responsibility, next up, you need to understand yourself.

So, I recommend everyone to do a recess about what kind of person that you are, what kind of leadership style that you want, and what sort of environment that you want to create for your team member.

So, there's no right style or wrong style, that is more about, what's the goal that you would like to achieve with your team member, and what's the environment that you like to create? So, I like everyone to recess about the sort of leadership style that you have, and type of person that you are.

After understanding your leadership style, you need to identify your weaknesses or development area. So, how do we do that? I did this with a few trusted people around me, and also with some of my mentor and also through 360 feedback.

So, getting feedback from people around the company who may not necessarily be in my organisation, but who I work closely with.

So, to give you an example, one of my development area that was identified for me was that I could be too passionate about technology sometime that I failed to articulate my reason for choosing a certain technology like, say, for example, React, or Angular or whatever, in a way that business people understand.

So, what it means is I failed to give the reason about how this technology is gonna help move the company forward, how it impact the business result, how it impact the engineering efficiency, and things like that.

So, because I was too passionate about the technology and I forgot to mention all these details, or I forgot to articulate them in a way that business executive understand, so that was one of the development area that was identified for me, and so that was something that I improved over time. And last but not least, seek to understand your worth and your value and your non-negotiable.

So, when you become a leader, you will need to make a lot of decision, and if you don't know what are the things that you care about, sometime you will make decision that you regret later. So, to give you an example, a few things that I care about personally, I integrated in growth, and for my team, are technical excellence, agility, and innovation. So, knowing these value make it easy for me to make decision when I'm faced with options, and avoid making mistake that I regret later. So, I still do this exercise from time to time because seeking to understand yourself is a continuous effort and not necessarily because your value has changed over time but it's a good idea to think about what are the things that you really care about, what is the things that your role require, and things like that, every now and then.

And it's worth putting an effort into it, because as we become aware about ourself, we can improve ourself.

The second strategy was to understand that people don't equal to code, and you might be thinking, "Oh yeah, of course, I know." But it's very important, especially for engineering and technical leader. We can't always expect people to be logical, reasonable, and act according to our predefined assumption. So, in other word, what we can create, and if then statement around people, and we expect, if they do this, this is what they're gonna do next, or this is what they should be reacting to. We can't do like that.

And this I one of the reason why technical people often make bad or not so good leader to start with. It's because they think logically, and sometime, too logically.

And over time, I've learned that, as a manager, listening actively, having empathy, and putting ourself in the shoe of the other person, and being generous with your time goes a long way in fostering environment that enables people to do their best, so it's not about pre-defined assumption or anything. It's about having an empathy and understanding other, and fostering an environment that works for everyone that is inclusive.

So, to give you a bit of my example, I used to think everything was black and white, and I used to think people will come into work, do their best work, and then go home.

There would be no drama, there's no need for manager. You come into work, you do whatever you need to do, and then you go home.

But, I've learned that over time, a lot of people have got different perspective on things, and this is probably due to us being in different stages of life.

We grew up in different environment and culture, background, things like that.

And it's actually okay to have all these differences, so we don't wanna create a team where everyone is the same. You wanna have some differences and this is what make a great team and a great workplace. And it's okay to have all the differences.

The main thing is that as a leader, when you care about your people, look after them well, and when you take the time to get to know them personally, they will usually go an extra mile and generally be more effective, collaborative, and productive because they are happier.

And that's what you want as a leader.

And as an engineer, developer, and technical people here, which all of us are, we are so used to solving problem and fixing issue.

So, if there's a bug, we fix it, right? If we see someone who is not thinking the way that you think they should be thinking, you wanna immediately fix them so they think the same way as you, but that's not correct way of doing this. (laughs) People don't need fixing.

You just, or maybe they do, but, you need to first understand.

You need to first understand that you need to get to know them, you need to why they are doing certain things a certain way. So, I've learned that many time, as a leader, your job is not to solve problem, but to listen, to empathise, and to empower. So, this was the mindset change that I've learned to make when I became an engineering leader.

So, the next strategy that I had is to be continuously learning.

So, one of the struggle that I had earlier was, the fear that my knowledge, technical knowledge, would become obsolete.

So, this is how I, my strategy for handling that fear. So, technology is always changing and ever-advancing, and being a leader in technology mean you are a leader of a function.

So, you need to have enough understanding of the function. So, for example, if someone is a marketing manager, she needs to know about the channel of distribution and marketing trends and things like that, but she may not necessarily be managing a social media channel.

If someone is a finance manager, she needs to know about profit and loss statement, how to reach it, how to read the cash flow and things like that, but she may not necessarily be balancing a cash flow statement every month.

And likewise, for a technology manager, you need to know about all the technology trends or the technology capability and the architecture and things like that, but you don't need to be coding day to day. So, you still need to keep in touch with the technology, and what I do is to help me keep in touch with technology, I attend industry events and workshop and conferences like this one, I read a lot of publication, white paper, and things like that, and I learn from specialists, and also, I learn from my people a lot.

Learning from my people is one of the best thing that I found that I've done, because you create this trusting relationship where you empower your people because they know that they can see that you're interested in their work, and you appreciate what they are doing.

So, and also, the realisation that I may not know everything.

I'm not here to solve all the problem, but we can always expand our knowledge and we can always learn new things because nobody was born coding anyway, or nobody was born doing anything.

It's very powerful.

So having a growth mindset and categorising growth mindset in your team is very powerful thing for a leader.

And last but not least, I strive to lead by example. So, leading by example here doesn't mean doing hands-on work for your developer, or like, picking up tickets so things can move faster on your sprint or things like that.

So, what I mean by leading by example is showing the value and the behaviour that you want your team member to have.

So, leader who practise ethical and responsible behaviour are likely to inspire other to do the same. So, I like you to think about the things that you like your team member to do. And this might be different to different people, so, do you want your team member to be accountable, responsible, and solve problem, or do you want them to seek permission from you before they do something? As for me, I've listed the things that I really care about. I like my team member to have a strong work ethic, make their own decision, and solve their problem, and not just think problem, and always be learning. So, this is what I do to lead by example, because I believe that leadership is not really about a position or a title.

It's not about having a director in your job title, or a manger in your job title, or anything like that, but it's about action and example.

So, there you have it, my four strategy for thriving and surviving as an engineering leader.

So, I'm gonna give a summary for each of them. Firstly, seek first to understand what are the things that you're required to do in your new role, what are the things that you really care about, your value, and what's the leadership style that you have? Secondly, understand that people do not equal to code. So, don't think that everyone think the same way as you do, and don't treat everyone the same.

Treat people how they like to be treated, so this is also important in giving feedback. Some people receive feedback quite well, but some people has a certain way of understanding feedback and getting feedback, so you need to get to know them. You need to connect with them in order to help them grow. And thirdly, be consistently learning.

So, this is not actually unique to technology industry, but for anyone in any industry, it's a good idea to be curious and it's a good idea to have the willingness to learn and grow all the time.

And last but not least, lead by an example. So, leading by example by showing the value and the behaviour that you like your team to have, rather than doing hands-on work for other people. And now, I like to talk quickly about how I found joy when I was not coding, or when I didn't have time to be so deep in the code anymore.

So, it's actually a human nature that we like to do things that we are good at because that give us joy and satisfaction.

I enjoy coding because I was quite good at it, and I realise that as I try and become better at my new role as an engineer leader, I was able to find happiness in my role.

And some of my value and strengths, such as curiosity, learning agility, and wanting to be good at what I do, serve me well.

So, I found that the better leader that I become, the more confident that I get at my job, and the more satisfying my job become.

So, someone once said to me that confident is not inborn, but is acquired through action and practise, and I couldn't agree more.

And I also realise that I don't need to know every technology or provide solution to every problem that my team has. My job as a leader is to empower people and to give them resources so that they can navigate through problem and come up with solutions themselves.

So, this is quite important, so I'm gonna repeat it one more time.

My job as a leader is to empower people and to give them resources so they can navigate through problem and come up with solutions themselves.

And just in case you're wondering, my job as a development manager is not about sunshine and roses everyday for me, even though I say I do enjoy my job.

So, I have day when I need to deal with a low-performing team member, or project that's not going the way it should be, or senior management or stakeholder asking when this thing can be released, and things like that.

But my point is that, regardless of what role you have, whether you are a CEO or a developer, or a manager or anyone, every job has got their own challenges.

But as long as you understand who you are as a person, and what you are expected to do, you can find happiness in any job as you get better. And if I look back at my career, the leader who makes the most impact to me were the one that empower me to think for myself and do the right thing, even when you're not around. And this is what I want to replicate with my team. And when I do this right, and when we all do this right as leader, we have the pleasure of leading high-performing team who are very smart and capable, but who are also collaborative, and who are working together to achieve common goals. So, I like to leave you with my favourite picture that perfectly sum up the type of engineering leader that I aspire to be. Engineering leadership is not about management, it's not about micro-managing.

Leadership is not about management.

And this quote on leadership by John Maxwell, who is a well-known American author and speaker in leadership, "A leader is one who knows the way, "shows the way, and goes the way." Thank you all for being here, and for being a great audience, and for staying until the end.

You are all awesome.

And feel free to connect with me on social media such as LinkedIn and Twitter.

I've got my handle there.

And I also write regularly on Medium on topics such as career, technology career, leadership, and life from my perspective as a woman in technology, and I've got my second book coming up soon, but if you are interested, you can find all about it in my social media.

And thank you all.

(audience applauds) (quirky electronic music)