Talking with Tech Leads • Patrick Kua • GOTO 2018

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] good morning loud so how many of you are in the audience already existing tech leads okay great how many people want to be a tech lead great so good good audience and exactly we'll be talking about with tech leads out of interests how many of you know and 36 customers hopefully okay yeah great for those of you that don't know us we're trying to be the the world's bank that we're gonna be the first bank that you really love this is one of our new campaigns you might see it on the ubuntu n-- and what's really important for us is making it a really great experience and making banking beautiful for those who are customers one of the latest features has been sort of spaces about how you manage money and we're really trying to make the mobile experience of how you approach banking easier simpler and much more user friendly so that you can actually manage your finances a lot easier in terms of a technology perspective I lead the technology team there so I like to talk how we're the modern bank we do a lot of deployments we're in the cloud one of the only banks in Germany that is actually in the cloud and we'll talk a lot about sort of engineering culture and 26 and one of the things that we've been building up as part of this is really about a tech leadership development program which is really key to actually scaling an engineering organization I'm a CTO that and so this means that like responsible for the technology people and processes in how we build the bank and I want to be sharing some of my experiences with you in growing the organization to where we've got to and also lessons learned from working with other teams and organizations in previous careers as well so the most relevant of the books that we'll be talking about is the book out here called talking with tech leads you can follow the link and it'll be shared on slide decks later and you can actually go to us down as well to win a copy so drop by get your QR code scanned and there'll be a copy given I think at one o'clock today and one of the things that I've really focused on is really helping people understand what it means to go on this journey of moving from the engineer to a tech lead so I know from experience I've been through this myself I've written code as an engineer I've led teams it's a bit of a shock when you first go into it and it's often a lot of people who don't really give you support in this organization so where I thought works previously we were also building a sort of tech lead course training to help people make the adjustment and transition into this new role in terms of today's talk will be going in a little bit of a journey so it's really I want to sort of talk about what is the archetypical story of maybe how some of you fell into this role of leading and maybe what some of you might be experiencing on your own personal journey I'll sort of talk then a little bit about what I mean by a tech lead so as you know from programming naming is really hard and my experience every company has a slightly different meaning around what a tech lead is so names and meanings important so I'll talk about what I mean by a tech lead and then I really want to sort of talk about the surprises and struggles so for you that maybe have been on this perhaps you've experienced some maybe not all yet for those of you that are about to go on this you might actually be really surprised and the point of this is to help prepare you for what these things are and hopefully to give you some tools to help you overcome those surprises and to cope with some of those struggles and we'll also explore what it means to be a great tech lead so that we can understand how you can be as effective as you can be leading technical teams along the way there'll be some lessons learnt so we highlighted with a symbol out here but let's start with the art archetypical story and this is one that I've you know in talking with a lot of people who've gone on this journey seems to be a very sort of common pattern so when you sort of first think about being an engineer you're really thinking about the things that you create the things that you produce you get a lot of satisfaction you know you finally managed to get this test to go green you managed to produce something and solved a really difficult problem after you sort of hours of you know trying to get everything to work finally to sort of see it go live you get a lot of satisfaction out of that over time you end up having maybe more influence and you sort of learn how to solve more complex problems and perhaps people start to recognize the impact and influence that you're starting to have and normally when you sort of go into this sort of state there are kind of two places so one is internally we're saying somebody is saying I want to be promoted right so I want the next step up in having more impact influence where do I go on the flipside if you're already having a lot of impact and influence people in the organization might actually say you know you're ready for this promotion so here is your title become a tech lead good luck and I think that's really interesting when you look at this because I think a lot of people think about this as the next step up in a career ladder but I will say that it's definitely not this and we'll talk about why a little bit later now what I think about this you know you have this sort of role you've been sort of labeled a tech lead and then all of a sudden you're probably starting to think about well okay I'll go back to solve my problems I go back to what I'm doing and then you start to notice these problems these hard things that are called expectations from other people and there are things that you sort of realized that maybe you're not doing that you should be doing nobody was really clear to you about what those expectations were and you kind of end up being a little bit puzzles about this right so you feel torn between two worlds around the world that you know that you're comfortable with of producing code of working on features and then there's other thing which is called a tech lead role of leading a team what are you supposed to change and how are you supposed to approach it and this is exactly one of the difficulties that people go through when they first transition into this so lesson number one for all of you is the tech lead is not a promotion it really is a role change and so what this means is you need to prepare different skills different experiences to work effectively in this new role so it's not more the same thing that you're doing at a senior level it's actually a significantly different thing that you need to focus on so I'll go back to this idea about a career ladder and talk about why it's actually a very different role change at least from my experience so for those of you that maybe have career ladders you know we're sort of developing one already in 26 it's kind of an idea about actually saying for this role here are the sort of expectations around behavior of what you're supposed do and maybe the impact what you have and companies kind of establish these things just sort of help people understand you know create clarity around what is expected and this is actually a very normal thing of startups right everyone is doing everything and you know everyone's like thinking okay step up no expectations and at some point you have this scale and you have to think about how do you communicate expectations and structure and this is exactly one of the sort of scaling methods of actually agreeing on what is an expectation in your sort of role and in which sort of level now we've been going through this process and so I have a few tips if you have a career ladder one of them is it's not a complete checklist so I'm kind of realistic in that everyone in this room is very different from each other and everyone will have different strengths and weaknesses so it's not that you do these things and suddenly you fill that box and you become ready for promotion it's really this idea about it's a guide for a conversation so it's really around how do you have impact around these sorts of elements and there are other things that you'll have impact with and maybe there are things that you don't do and it's an approximation but it's to help the conversation and the qualitative assessment in terms of the level and one of the other good things about this is that it often reduces systemic bias so in a lot of places where you don't have clear expectations then it really becomes a person sort of gut feel and that naturally has implicit bias in how that person sees this perceive this role and how they reward people and so this is actually a really good tool to also reduce systemic bias but when I think about this career ladder what does this actually mean for you and this role of a tech lead so if you've been on a journey like myself you might start off as a sort of junior software engineer some sort of intern you're sort of meeting a lot of hand-holding about how you sort of solve a particular problem you kind of think about learning about all the engineering practices that are sort of modern engineering practices about how to write automated tests how to TDD how to good how to refactor applications really well and then you become maybe more competent you become more independent and you're sort of rewarded for this sort of independence or engineering role over time you start to own more complex problems perhaps to take care of an entire system by itself and you become a sort of senior software engineer and this is a very common pattern that a lot of engineering organizations have but often what happens is this next step up of they're moving into some sort of leadership role and this is where a lot of companies sort of fail is that it's often seen as the next level up in this actual trap but it's actually a different type of track if you go to the valley so over into the west coast they often talk about a two-track sort of career development ladder so they often talk about individual contribution and they often talk about this management track so the individual contributor is the one that's solving problems that's working fairly independently and management's thinking about sort of the the greater picture the structure in the environment I would actually posit that it's not actually a two-track process but it's actually a three track process so I call this the Trident model so one which is really about having a technical leader one which is an individual contributor and one which is management's and I believe that there are actually very different skills required for each of these different areas so if we take back this normal career letter that a lot of people put together I would actually argue that this tech lead role is actually a different role in the technical leadership track you need the skills and experience to be a successful tech lead which is why there's no real sort of starting point as the tech leaves but actually when you have got to a senior engineer level and you want to become an tech lead you have to realize that it's actually a step into a different career track of some sort of being a technical leader and there are skills that will be useful at all levels but fundamentally you have to think about where you spend the majority of your time so if I think about these these sort of roles and these tracks if I think about the description so individual contributors as an engineer you'll know this you spend about 70 to 80 percent of your time perhaps executing or doing I think it's also a myth that engineers spend a hundred percent of their time in coding I mean you all generally hopefully have to work with other people you have to communicate you have to understand what you need to build so you're not writing code a hundred percent of the time but executing and doing involves the things you know so things like designing the things like testing the things that are actually about coding and building a system of some if I talk about management I talk about 70 to 80 percent of the time managing the system so the environment Google has a really interesting study that they did very early on in their organization where when they were about a size a two to three hundred people they experiment with no managers everyone's like amazing flat hierarchy everyone started complaining and they found that nobody was actually dealing with those complaints because there was things about the system that nobody was taking ownership and this is actually what I talked about the good role of good managers is actually this is the thing about helping people with whatever tasks they need to have supporting them perhaps they need additional people perhaps they need new skills and support from other departments perhaps it's about sort of training perhaps it's really about sort of keeping plans on focus so there everyone understands what's the expectations of the whole company and the whole company is working towards the same sort of goal often in a lot of organization there's an element to budgeting as well so keeping within that and also sort of organizing things so when a team gets to large understanding when to split that team when you don't have the right skill mix in that sort of team trying to work out how do you get new skills in or new experience or new roles that maybe you don't have yet that's very much about management there is a very different skill set as well when I talk about leadership and this is where the tech lead role comes in this is about 70 to 80 percent of the time leading technical topics and teams so this is very much focused on aligning the team so if you're building a sort of architecture system of some sort it's really making sure that everyone on your team understands which direction you're building so if you're deciding to actually split up some sort of monolith to microservices do people understand how to go about splitting up the monolith do they understand how to go about designing new types of components this is about aligning where you're actually working towards it's often about technical risk management so you know everyone has some level of technical debt they cut corners we make mistakes we don't build perfect systems but what we need to build in and this is the responsibility of a technical leader is making sure it doesn't accumulate too high and that you actually pay it back regularly so encouraging refactoring behaviors encouraging knowledge sessions around sharing where people don't know about parts of the codebase and trying to work out how do you make break a bigger problem into smaller problems so you can solve it incrementally it's often about the technical vision so what type of system are you building is it a reactive real-time event based system is it a batch based system it kind of depends on your domain but you need everyone to really understand what this idea is and what you're trying to aim for talked about technical debt management and this is really about also communicating to business people making sure that everyone everyone has time to actually work on these things as well so there'll be points in a system where it becomes no longer fit for purpose and you have to sort of rally and ask for time and make sure that your team isn't over committed to so you can actually redesign your sisterís systems and it's often about growing and gaining technical knowledge so as you all know from working in software we work in a complex system where everyone is changing different parts of the system all the time and when you work in a sort of individual sort of silos you need to make sure that everyone is sort of sharing knowledge about how that system is evolving over time perhaps it's about learning new things about as the technology landscape is actually changing but it's your responsibility to make sure your team is capable of delivering the products that you actually need to have so are you topped up here when you actually think about this transition from being individual contributor to being the tech lead it's really thinking about what got you here won't get you there so the things that you rewarded yourself for about the code that we produced the clean elegant well tested well architected code is not how you'll be measured when you're thought about as a successful tech lead the skills that you build when you're sort of working with code will help you become an effective technical leader but you have to build other skills as well and this is where you have to sort of make that mental model shift of realizing you need to grow new skills so this is perhaps the archetypal story of how you find yourself in this role surprised perhaps with some of the expectations realizing that it's a role change so what is this tech lead role and how define what a good tech lead looks like this is what we'll look at next so a short definition for me is the tech lead as a software engineer so somebody in the technical sort of area responsible for leading a development team and responsible for the quality of its technical deliverables so you're both responsible for the people and the product effectively of what a technical team is actually delivering so you're not responsible for writing the code yourself you're responsible for the code the entire team produces and you have to act accordingly to make sure it's of the right quality and aligned in the right sort of way when I think about the right balance of skills I often draw this Venn diagram so to be an effective tech lead you kind of need to have good engineering skills so you need to have some basis of that so that's why you don't just have tech leads randomly pop out without coming from an engineering background you also need to have some good level of architectural skills so you need to have a good awareness of system design the impact of how individual components might fit together and how you manage that and what's really essential is this thing about leadership skills so to be an effective technical leader you need to work on developing these leadership skills so lesson two is this role requires effective leadership skills and you need to think about what you do to personally invest in how you build your own leadership skills and what you've been doing to to make yourself more impactful so when we think about these kind of three skill areas and you think about what you were spending your time on as an engineer you can kind of think about where you've maybe developed expertise and experience throughout these so a lot of the things that you do is of course building code writing code writing clean code so development you're all set from that perspective maybe you've done some system design you get some sort of architecture but in a lot of companies they aren't actually helping you build leadership skills and this is one of the big surprises when you step into this role is that you need to have very strong leadership skills but if you've only got sort of two of these sort of eight or nine bars it's gonna be really hard to be an effective leader when you're already in that role the skills that you've developed as it don't make you necessarily an effective tech lead so how do shift this is my four-step plan recommendation for you the first one is knowing that there are new skills that you have to develop so this is good step one that you know actually you don't need to necessarily invest more in technical skills you need to first focus on growing your leadership skills step two is finding good sources of training and you know we're really lucky in today's age of things like online training courses there's a lot of blog articles there's a whole world of leadership material out there and also leadership material a relative relate related to the engineering fields that you can draw upon what I would recommend is also you're making sure that you get a coach or a mentor so somebody that can give you feedback about how you're performing it's really key that you sort of not only go on training courses but you actually get feedback about how you're actually using these and working out how to sort of adjust your sort of skills or experience according to the situation that you're working in and the fourth tip is really about practice so like deliberate practice you only get better through actually going through the motions you make mistakes it'll feel hard those mistakes but you really need to practice these leadership skills so when you think about this Venn diagram think about your time shift about where you invest your personal development on leadership and architectural skills don't fall into the trap of just focusing on the latest and greatest tools that won't make you a much more effective tech lead you still need to have some basis for that but don't spend the majority of your time thinking knowing the latest and greatest framework will make you a much more effective tech lead so a lot of the questions that I get is often well you know if I'm not writing code how much should I be writing crude for we actually talked earlier about how engineers don't even write crude a hundred percent of the time so my rule of thumb for tech leads to be successful it's kind of about this quadrant so it's about thirty percent I would say it's a minimum thirty percent it doesn't necessarily need to be writing code you can spend a lot of time reading code as well I mean engineers read a lot of code in order to make some changes as well but it's really a nice guideline to sort of stay in touch with what's going on in the codebase so if you're spending zero percent of your time with a code you know a month or two months later it can look significantly different you need to know what's going on what's up today what are the problems that the team are facing you need to be able to help them with that so you need to spend some time with the code if you're spending 70 to 80% of your time of the code there's a whole bunch of things you're probably not doing so you need to make sure that you find the right balance of time when you're thinking about how much time you spend coding a simple test if you want to think about how you're effective is does the code base look like it was written by a single person so it'll never look exactly the same but if you kind of squint you look at the shapes of the code you should hopefully have similar patterns similar structures what you shouldn't have is one part of the code base here wave methods 50 things like methods over here in this part of the code base like ten methods long over here you use oh oh here you use complete functional programming this is the this is the state you do not want to be in and so if you're really stewarding the the team in the right direction it should look approximately the same people should use the same coding patterns they should use the same coding style these things should really be focused on how you solve the problem and that everyone can actually change the code base as well so this is a really good tip about how you measure effectiveness as a tech lead now I said before that there are a lot of things you need to do and the question is what you invest in now each of these topics are complete talks they're complete training courses by themselves so I won't necessarily go into a lot of detail with these what I would say is that take photos like I see a lot of people taking photos and there is a lot of material out there for that so this is a really good thing for you pick one of these items and then work out how you improve on these leadership topics and if the next question is where do I go for this so I've sort of done some preparation there's a lot of great books that I would recommend for this as well so pause so you can take some photos and there's a lot of books out there that you can sort of read around these topics as well and these are some of the ones that I personally benefited from as well so these are all sort of personal recommendations that I think are very powerful in helping you build stronger leadership skills now this quote is actually from Bill Gates and I really like it because you know it's one of those great things about in today's age of the internet right so everything's digital well not everything but a lot of things are digital you have a lot of information to access and even Bill Gates after many many years at Microsoft is continually reading and saying that it's the best way that he learns to grow now you may have a different way and this is OK but I find a lot of benefit from actually reading as well and this is a really great way of getting insight from different perspectives without necessarily needing to know people who who know those different perspectives as well so lesson 3 is really about benefiting from all of these resources on leadership and once again make sure you practice there's nothing worse than reading a book putting it on the side and then you forget about it so you'll forget about all the knowledge you need to turn that knowledge into skills and experience and you can only do that through practicing so you know my recommendation for you would be to take a book read it take one or two things from it and then just start practicing it start applying some of these things it'll become part of your sort of persona you'll get better experience at it and you'll be a much stronger technical lead as a result so we've looked at what is the tech lead and we'll have a look at some of the surprises and struggles along the way now for those of you that have been on this journey perhaps these will resonate with some of you we'll cover three of them the first one is really about this thing about sort of maybe being on the outside so one of the interesting things about this is you get a sense of feeling lonely as an engineer when you're actually working with other people you can go to other people and actually say hey I'm having this problem like how would you approach it you know like if you have a conflict with somebody there's often other engineers you can go to to talk to and say I'm kind of having a problem with this person on the team how do I solve that if you're in this leadership role sometimes these topics are involving the people that you're talking to and it would be kind of inappropriate to openly discuss these topics with other people of the team and so often you sort of have these two roles that you can be within the team to help write code to help understand how to make the system better but on the other side you're the sort of single tech lead and it's easier to feel lonely so that's one of the first lessons that I've learnt from talking to a lot of people on this journey it's okay it's a natural thing about leadership roles is that you have a sense of feeling lonely and it's normal it's not so it's this outsider and it's because you are in the sort of different role and sometimes it's because your acting is a shield or a filter as well so this surprise or struggle is a very normal thing the second one is also very normal so this is often depicted with all of these different areas and what I mean by this is really about this uncertainty so as an engineer one of the great things that you love getting is maybe fast feedback we learnt from TD red bar green bar or a factor right we learn about how to get this fast instantaneous feedback computers are often very binary it works or it doesn't work the test passes or it doesn't pass the deploy worked or didn't work and so this is one of the greatest struggles when you move into a leadership role is that there are no perfect answers so you know there is no right answer about how you work with somebody who has a different skill set or strengths from you there are lots of differences of of how to approach the same problem and there is no one right solution part of this is trained through this thinking about being binary that we think about in terms of black or white yes or no zeros and ones and often in the world of people and leading you have imperfect information so you make a decision knowing that you think it's the right decision at a time and you might learn new information which invalidates that as well so this is a normal feeling as well when you step into this role for the first time the third surprise will struggle that a lot of people have and this is a really hard one and I I'm happy to admit I still struggle with this as well is depicted by a snowflake and what does the snowflake represent so it snowflake for me represents people so people are unique this is really great but they are very puzzling at some times so you can't really predict your own sort of ideas about how somebody is going to react to the same message for instance and you know one of the things that I've appreciated a time is that people are unique there is strength and diversity but it means you also have to build up a diverse toolkit to have good conversations with people to get buy-in from people to resolve conflicts there is no one tool that will work for every single person one of the great things that I really love about leaving snow flakes as well is that people can surprise you as well that people have different strengths that you don't have that can actually be really beneficial as well they can also have very different strengths that maybe antagonize you or confuse you as well and you have to appreciate them for where it's useful and it may not be the time in the situation that you're in but you have to recognize where those strengths can can be at play one good tip is when you work with a lot of people you'll start to see patterns but one thing to be careful of is that you don't stereotype so you don't say I've seen this before therefore I know exactly how they're gonna act out there you don't really know you can sort of say that these things are patterns and you can be cautious of how they might react but don't try to project your own personal experience on somebody else based on stereotypes so use it as archetypes for learning but don't try to project or think you know what other people are thinking so these are three very common struggles and surprises that a lot of people learn when they first step into this leadership role and lesson 4 is taking comfort that other people face the same problems as you so even though you're feeling lonely there are other people who've been on this journey and there are other people you can probably talk to to get advice about how to approach that they may not be within the team that you're working with but they may be in the team next door they may be in the organization next door they may be from a team member that you used to work with it works in a different company the great thing is there's a lot of people who go through these challenges themselves you can also share and get advice around that so this is how you would actually solve this this is really about building a support structure for yourself so find that shoulder to cry on find that great friend that you can rant at find that good mentor a coach to help you reflect strategies and get advice about what you might do differently given the same situation so we've gone through surprises and struggles and we have a little bit of a surprise as well for today so we're taking a little bit of an intermission to actually talk with a tech lead live so I'd like to introduce Lysia Perry the seer is actually one of our tech leads she's a lead Android developer and I have some sort of questions that I would like to ask you thank you so let's see tell us a little bit about your background so I joined n96 in January 2017 and before that I had like five years of experience mostly working an agency I started as a junior software engineer but it was a great experience for me because I got the chance to work for many different clients so that gives you a rough iteration over different projects different styles and I think that speed up my progression somehow and at some point I was tired of switching so much so I wanted to go for one company one product and one goal that I put focus on and then impact on influence so that's how I ended up in the end 26 great and maybe you couldn't tell the audience a little bit about so what does your team look like what did it look like at the beginning and now it feels like 80s but it's actually been only like is not so much but when I started as a team lead or tech lead the team was four people for Android engineers including myself and today we are 12 so it's been hyper growth moment for in 26 in general and yeah we're team was indifferent and there is even more joining because we're opening a office in Barcelona so this means also distributed teams so as you can see the like it moves really really fast it feels very chaotic at times but yeah we're still there so and maybe what would be one of the biggest challenges you face moving into this role as a tech lead well the biggest challenge for me was in the very beginning because the transition doesn't happen from night to day so at the moment I was like the special like I was in a team credit team more specifically and I was building a product with this team and we were in on the middle of it when when I got the opportunity to become officially the team lead but at the same time I was also becoming internally for the Android team support in the technical matters so I was already contributing a lot in technical vision or organizing some events for us to align and things like this but then when I stepped out as a team lead I became also the point of contact for any Android related issue in the company and that was very challenging for me because I was only like six months in the company so there were many many things I didn't know so there were many things people come to us and I was like but does that exist like if you can even know about these assistants so it was like a lot of work for me because I had to investigate these things have my head around them but at the same time again it was a great experience for me if I look back because I had the chance to grow so much and really fast as well great so it's been a lot of challenges along the way what has been your support structure well in 26 as I was saying we've moved really fast but also in the way the company is organized so things started becoming way more structured also when you joined there were some initiatives where you would give presentations like this one and about other topics so all the tech leads will gather in a room and then we will discuss about these things and that grapes a lot because that's great and other tech leads in your company even though they might be from different like for instance back in tech lead or the is tech lead or actually anybody who is doing leadership in some form inside your company when you talk to them they know the context of your company so there is many things you don't have to but at the same time they have like a different angle and a different perspective so it can help you to get a four out of your bubble somehow because it's easy to also you know get lost on your thoughts and tunnel vision for something so for me also even having informal lunch with somebody what I could ask hey did you face something like this before I'm in this situation what do you think it was actually really helpful in many occasions great and if you were to rewind and give you yourself some advice yeah what would that advice be well I guess I can think about maybe three things so first when things you feel like things go too fast and you have a lot in your plate the natural thing to do is just do get things done but actually I think you have to stop and you have to plan because the value of planning and making decisions is stressing especially if they are difficult so if you don't stop and plan your direction what you want to do and when there is so much in your plate you cannot do everything so you have to choose what you want to focus on and once that you've have planned that direction is way easier you can move on and you have the good reasons already thought why you are not going to focus and just other things and that yeah this was that's something I would tell to myself don't underestimate the value of planning then the other thing is try to delegate more so again it's kind of in the line of this other thing when you have a lot in your plate you feel like you're the one understanding everything or all the details of the context and go into someone and delegating on handing over it's going to take time because you have to unboard them to the topic but actually in the long run that's what's gonna give you much more room much more time and it's also very good for the other people because if you listen to them people have interests they are keen on influencing and impacting as well so you can align those things you can hand over something this person is interested even the giving them the opportunity to grow as well and then you will free yourself from from this as well and the other one was a yeah like being patient because you're part of a bigger organization and when you step up as a tech lead you get like a bigger view of things and then you might recognize many things that you want to change they want to influence you want to fix but you cannot do everything at once and you cannot go also against the flow of the company you have to go with it so sometimes you just have to accept um we cannot do this now and yeah it will be great the value will be huge and we see how much impact this could have if we do it but the organization is not ready for that or the organization has other goals or you know the people around you is does not the way things are going so in in my case in an 26 I always felt that even though we couldn't do these things now I felt the opportunity would calm so it was more about keeping our eyes open and trying to recognize the opportunity to then you know build up the support for for doing this when the moment comes then trying to you know push too much on these things and maybe disrupt you know in a in the team's in some way great thank you very much for sharing your experiences and please thank her Lucia [Applause] so we've had a little bit of a talk with a real tech lead and I wanna talk can close off with what I mean by how you can become a really great tech lead as part of this there are some tools in here that some of you may be familiar with it's always a good recap to actually think about what's there the first one is really about what lucio is actually talking about is delegating and growing others and this is really one of the keys of how you scale yourself so the question that you always should be asking yourself is how do you scale yourself to have more impact there is only a certain amount of time that you personally can actually do and so your best sleeve ur is actually about working with a team and developing other people now when I first talk to people when they're first moving into this role they often think about two approaches of dealing with people and developing so one of them is really about this tell all completely delegate right so other people say okay here's the task you have to do here's exactly how you go about doing it the other sort of aspect is actually this thing about like you know this thing needs doing do you mind taking care of it okay now off you go and these are valid techniques but one of the interesting things about these two things is it's not enough when you're actually working with people and so this is where the situational leadership model can actually really come and play is that telling is only one side of the spectrum and delegating is the other side of that spectrum here what you have is real really want to move to a point where you are actually growing people from needing to tell people to a point where you can freely and comfortably delegate to people but it doesn't happen overnight and this is where you have to take different contexts different stance of interaction to actually get people there so one of the things that you might actually get on to is really about selling something so this is typically what happens when you have maybe some engineers they're experienced they don't really understand why they have to do this they're more than capable of actually taking care of it but you really have to help them understand why it's important give them the motive about understanding the impact it's going to have maybe it's about helping them understand how they can solve this solution if they see that there's a whole bunch of roadblocks or barriers as well and you might have to help them understand how it will help them grow as well even though it might be a challenge of some sort you know they're capable but maybe the motivations not there and you need to sell the opportunity another one is really sometimes about participating and so this is actually sometimes you have hairy problems that you can't really delegate you can't really just tell somebody what to do because you don't know what yourself but this is actually where you co jointly work with somebody to actually do problem-solving and this is often one of the stances that I would take as a tech lead that works quite well you work with somebody to define a problem you sit down with them you talk about how you might actually about approach it you'll probably end up getting dragged off to meetings and then you come back the next day and then you sort of say okay how will we progressed and maybe that's a roadblock maybe there's something that they need help with you can sit down with them actually go through what this problem is help them work out how to overcome it maybe it's about debugging and trying to find where this blocker is in this sort of solution but this is a participatory leadership model where you was trying to help them achieve the goal but they don't know if they can do it themselves completely and by progressing through this situational leadership model what you should be actually doing is actually growing all the people in the team and this is a huge win-win so everyone here is probably joined technology because they'd like to learn something like to grow and actually this is a really great leadership model that will help you scale and will help all the people grow at the same time and so it's a really powerful model I would add to your toolkit if you want to become a really great tech lead it really depends on sort of skill so it really depends on sort of the skill motivation urgency of tasks as well so you know if there's a incident or an outage you might actually need to be a lot more directive and need to tell but you shouldn't operate in that mode all the time so it's situational because it depends and it depends on three things the skill motivation and the urgency what I really love about engineering is that you should tap into all the diverse approaches now if you've ever sort of worked in a more complex sort of ecosystem you realize that there are a lot of Punt parts of technology that you can't be an expert in to be an expert in web development mobile development back in engineering systems engineering data science data engineering you can't be an expert all of that and so we all rely on building diverse organizations to complex to tackle more complex problems and it's been proven that this is really powerful in fact so strings fine is a really great book that helps you understands the diversity of strengths that are out there so I'll give you a couple of examples where is the the strength of winning others over so you probably know some people at this it's actually very rare percentage but you know those people I'm not one the don't can go into a room and suddenly sell everyone a particular idea they can convince everyone it's the best thing since sliced bread and that's the strength of what play perhaps you have strategic people that I'm thinking about today they're thinking about three years from now and these are really useful people to think about in an R&D context around thinking about how is the industry changing how was it evolving and it's important to have people who have those strengths you also need people who are achievers you can't have people that are just talking or thinking you also need people who can actually execute as well and achievers are those people who have a sense of getting that need a sense of progress a sense of completion and then perhaps you have some people who are intellection and this is wearing me where there are hairy problems that you need to think about the different ways you actually solve it and these are examples of strengths that come out of the strengths finder book what's really key for you as a leader is really a recognizing strengths and then be working out where it can actually be useful and and creating the environment that allows everyone to demonstrate their strengths as much as possible so there's some recent research on this it's actually from last year by BCG and they talk about positive correlation with diversity and innovation revenue and so the question is what actually affects what elements of diversity actually effective they theorize and studies six elements of this so gender age country of origin academic background industry and career path and they actually found that it was only four of these elements that had a significant influence over innovation revenue so age doesn't really matter I've met brilliant engineers at different ages people come into the industry at different times they can contribute different thinking as well and they often come from different industries which adds value as well it doesn't really matter about academic background so as you know technology changes all the time so we have to learn all the things it doesn't matter what degree you completed 10 years ago that can be helpful but it's not as helpful in terms of innovation revenue but really when you're thinking about creating diverse teams diverse organizations there are four elements that this research found actually have a very positive impact on revenue that you should think about the other topic that you'll often struggle with as a tech lead is finding where you spend time and it's true for all leadership roles and what you need to sort of think about is how you spend your time and what are the things that are actually taking up your time so there's a really great matrix that talks about how you think about managing your time so for the things that are urgent or important you need to do you need to execute so these are the crisis C's the incidents you need to take action but for the things that are important not urgent these are the things or you need to make time to actually address them this is some of the planning time that Lucia talked about nobody is going to ask you to set aside time you as a leader or responsible for planning that time yourself to tackle some of the bigger hairier problems that nobody else is actually dealing with for the things that are less important or less urgent get rid of them don't check Facebook 20 times a day don't check Twitter at 20 times a day check your emails two or three times a day work at a time that actually works for you you don't need to respond to every single notification turn off notifications if it's important I'm sure somebody will find you or call you if it's less important in an urgent think about what team member that you can actually delegate things to so it's not so critical it needs to happen other people have more time than what you'll have and this is a really great matrix of thinking about how you approach your time and one of the activities I often do is actually thinking about once a year where do I spend my time I go through my calendar I look at these activities I think about where I have been spending time and thinking about how do I shift the burden you need to spend the time to actually think about where you spend time and optimize that I didn't invent this this is actually called the Eisenhower matrix after President Eisenhower or it's at least attributed to him and I suggest you also look it up to see how you use it so lesson 5 is really about moving from this maker individual mode to multiplier mode you have to think about how you scale yourself and this is one of the greatest challenges of all on this journey and talking with a lot of tech leads it's the challenge that a lot of people have of making this mental mind shift so we've looked at a lot of different things today and the journey doesn't really end here so leadership doesn't ever complete there is no end state for this you can continually to develop your skills you can develop new experiences and opportunities to apply them and have more impact so your keys to growth in this area are really thinking about these five lessons that we've covered today is really recognizing that the tech lead is a role chain it's not a promotion in the same track it requires leadership skills and you may not have had the opportunity to develop those skills so think about how you practice get awareness and get experience of developing some of these leadership skills take solace that other people have been on this journey you're not alone find that support network help yourself feel comforted get advice from other people about how they deal with this know that there are the resources out there leadership training books blogs lots of material out there that will help you and really shift this mode of thinking from being a maker to being a multiplier and I guarantee you you'll be a lot more effective as a tech lead thank you [Applause] you
Info
Channel: GOTO Conferences
Views: 11,955
Rating: undefined out of 5
Keywords: GOTO, GOTOcon, GOTO Conference, GOTO (Software Conference), Videos for Developers, Computer Science, GOTOber, GOTO Berlin, Patrick Kua, N26, Leadership, Tech Leads, Human Factor, People, Agile
Id: iLS6NXMXtLI
Channel Id: undefined
Length: 47min 41sec (2861 seconds)
Published: Tue Feb 12 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.