 Thank you for all coming to the session. My name is Jibran Jhaaz. I'm a part-time Drupal contributor for last 13 years according to Drupal.org. It has been nine years since my first session in Australia at Drupal South Melbourne 2015, and I have been living in Sydney for past seven and a half years, and this is the first Drupal South in the city since then. It's a long time. I'm very proud and honored to be presenting this session today. I'm a Drupal solution architect at my day job and as a part of my job, I also lead a team technically and provide technical solutions. Hence the session to be or not to be a tech lead. Maybe I'm not happy with my job. But this talk is not just for tech leads. It is for any technical role in which your main focus is not to help. So first, I would like to begin acknowledging the traditional honors of the land on which we meet today. I would also like to pay my respect to elder past present. I'm originally from Pakistan and my first language is Urdu. So I would like to welcome you all and say Khushamdid. Khushamdid means welcome in Urdu. Khush means happy in this context well, and Amdid means arrivals, but in this context come. The origin of this word is from Persian language. So like it's not the key word in Urdu. Let's get started. So the main question is to be or not to be a tech lead. The purpose of this talk changed a lot since I proposed this session. At first I thought I'm going to convince everyone in the room to become a tech lead because my job is awesome. Then I had few discussions about this topic. So I started considering some other aspects during that. As the title shows, it's an opinion piece formed based on my personal experience as a developer. This talk is about personal journey. I took to become a technical lead and no two personal journeys are the same. One can be a tech lead without starting as a developer, but since I started as a developer, this talk is from that perspective. The aim here is to start a discussion, prompt an internal monologue, or maybe motivate some of you in this room to start considering being a tech lead. Here's the disclaimer. This talk is based on my opinions as well as opinions of my peers. So feel free to agree or disagree with me. This talk is also based on personal stories of people I have worked with. Some of them are currently present in this room. So please don't be alarmed if it all sounds familiar. No need to hide your faces. We are going to have heart to heart about this topic, these topics, and we'll touch the topic of mental health and well-being at workplace as well. And lastly, you get to witness my thought process throughout this journey. For me, it's very exciting and nerve-wracking at the same time. So to begin with, let's first look at the developer's journey. When you start a career, even with a technical degree or diploma, you still have to learn a lot to be able to get up to speed. You don't know what to learn and where to learn from, but slowly it changes and you start getting the hang of things. You get to know what to learn. Then when you become a mid-level developer, that's when you become a mid-level developer. When you are starting to become comfortable with your skill set, you have the confidence to talk to stakeholders and command the situation, that's when you become a senior developer. But as a senior developer, you still have to keep learning. When you start driving and dictating technical discussion, that's when you start stepping into technical lead role. Let's discuss different types of developers. We have a lot of developers here. Just to oversimplify in my career, I have come across three types of developers. Some of them are thinkers, some of them are talkers, and some of them are both thinker and talker. If you are just a thinker and you don't ask a lot of questions, then it's a problem. If you are just a talker and you don't think, then it's a bigger problem. So it is important to find right balance and you have to move between being a thinker as well as a talker. This is not necessarily personality traits of an individual, because there are a lot of Drupal contributors who are introverts in their personal life, but they have big voices in the Drupal community. So let's discuss some of the traits of being a developer. I have worked with the developers in the past who are really speedy but make a lot of mistakes. And on the other hand, I have worked with the developers who are particularly fast, but are not particularly fast and really meticulous about their work. Again, as a developer, you have to find the right balance for this. And it all depends on the quantity and the quality of work as a developer you have to produce. With ever-changing landscape of technology, another important trait is adapting and implementing new skill sets along with the freedom and time to fail and improve. The other side of the story is what teams' expectations are from you as a developer. Communication is the key. People don't like it when they get caught off guard. So communicate your timelines, your struggles, and your successes. As you progress along in your career development, you start getting into building more and more complex systems with a lot of moving parts. So ability to break down big pieces in smaller chunks is really important. Similarly, sizing and estimation is also very important skill. It allows the rest of the team to plan their work better. As a developer, helping others is also a very important part of the job. It improves team skill and their confidence in you. On the other hand, it helps you to see the problem from a different perspective. Once you have the confidence of the team, you can start taking calculated risks with all these additional responsibilities picking and choosing what to focus on at what time is really important. If you can't self-organize yourself, then ask your team for the support to help you organize better. Also learning and adopting from your previous work is very important and it directly helps you improve. Let's say you have become a senior developer and can perform all this roles and responsibility. So what's next? You can branch out. In an ideal Scrum team, you should be able to do anyone's job. So learn to be a delivery lead, a business analyst, quality shoulder, UI designer, UX expert. You can learn new technologies and just keep on improving and keep learning new frameworks and new languages. You can champion a new skill, for example leadership skills, development skills or planning skills. Create or define new stuff, start a new product or define existing products. Or you can be a storyteller and you can switch to content writing. Share the stories and help others to learn from it. Or just be a salesperson. You can go into business side of things and help winning new projects. Or you can just become a tech lead and work with all of the above and then some lead attack team come up with tech ideas and design new solutions. But becoming a tech lead comes with its own drawbacks and benefits. It is no doubt going to be a bigger challenge than your previous roles. You will have more responsibilities and you have to communicate a lot more. And this one is a killer but you have to do a lot of context with it. With all of these added responsibilities you have to make a lot more decisions and there will be a lot more expected from you. Because all of this more and bigger stuff you will have less time to do the development work or work on your personal development. Just like a developer as well as with the developer trades these are some valuable trades as a tech lead. Build a team around yourself. Support them. And in term ask for their support. In this role you need to talk to a lot more people and some of them will be known technical so it helps to talk tech without talking about technology. Because you are going to make a lot more decisions you should always have rational behind them to back your decisions. In some situations you have to make a final call and let others know. And sometimes you have to back up from your decisions and eat a humble pie. There are some of the things required of you as a tech lead. You need to be a lot more calmer, more patient and in your approach. There will be times when you have to deal with insane situations so letting the sanity prevail is very important. You need to manage your time better block out part of your days and to get stuff done. Sometimes situations plays out itself and so situation management is also very important. In some of those situations you have to make hard calls and as it is said in the great superhero movie of recent time Madame Web when you take responsibility you will gain powerful abilities hence the more power because you have more responsibilities and don't hesitate to share the responsibilities as sharing is caring. Let's talk about some of the personal stuff. While you are doing all these things you have to stay on top of your mental health and make sure you are not burning out. Talk to like-minded people at your work do some non-work related activities with them maybe take up drinking take breaks when you feel you need a break find a hobby, maybe gardening video games, read something spend some quality time with your friends and family and take a look at yourself and evaluate what is going right and what is not and then make a decision based on those observations be honest and make smart choices. So let's say you have champion all these things and you are very successful tech lead where do you go next from here? You can move horizontally in your career and become a technical manager, technical director or a technical officer. You can also move vertically in your career go into more management and leadership roles you can start your own company and here's the buzzword and come up with an idea for your startup or you can just stay tech lead and if none of the above works out you can always go back to being a developer so here are some action items for the folks in the room who wants to be a tech lead in the future the technology is constantly evolving around us so we have to evolve ourselves as well and then evaluate the best way to improve yourself is to have discussions with helpful peers listen to the people and learn think about all these aspects and have an internal monologue and when opportunity presents itself take a leap of faith and go for it so in conclusion I want to share a small story last year we had a new position open up for our solution architect and technical lead role at the time we had a really good senior developer working with us me along with the fellow tech lead were trying to convince them to help step into this new role and they were reluctant to avail the opportunity we had several discussions with them and they were finally convinced but during those conversations I realized I went through the same thing when I was stepping into this role two years ago so I thought the topic is what discussing with the larger community since the release of Drupal 8 has become easier to build bigger and more complex websites to build bigger and more complex websites using Drupal we need folks to keep an eye on bigger picture while leading tech teams in the right direction so we need more tech leads in Drupal ecosystem and you can be the one thank you and shukria thank you jibran that was very nice my question is sometimes people kind of consider tech lead and solution architect sort of similar roles so in your opinion or with your observations what is sort of big difference between those two roles or can they be interchangeable depends on your organization you are working with if you have like large group of developers and they need technical direction then of course you that's a tech lead role and if you have like complex system then you have to design a lot of things then you know like solution architect kind of role but it can be both at the same time so like I have I work with developers as well as a large website so I consider both roles I'm doing both roles thank you any other questions you just mentioned how to pass and comment that in the ideal scrum team you should be able to do anyone's job so what does that sound we have a team where we have a lot of specializations could you speak a little bit more of that oh yeah so it's like in a scrum team work shouldn't stop if someone you can hot swap people that's the idea so like just fill in the gap so understand what a delivery lead goes through during the scrum what is business analyst's job right so it's not like you will replace the role that's not the plan it's just you can hot swap and fulfill that role thanks a lot in your journey from developer to tech lead what have you found the most difficult aspect to master real answer my ego I have been a very you know like moody developer I was very adamant about you know coding standard and the way the code should be written and that has changed since I started contributing to tuple you review people's code and see you know like some of the code how good it is and how not good it is and you learn from it and sometimes you are in an awe and sometimes you are you know just why is this happening for this reason right and during that process I you know like managed to get off from that high horse of my ego and learn to be humble and to learn from the wider community as well as you know like work with the team alongside with the team and don't feel you know being a developer is highly mighty thing so you know like every team member is assigned to do their task and do their job and their job might not be you know like very interesting from your perspective but still if someone is doing their job so you have to be you know like human and you have to learn that and you know treat them equally and that's everything I learned from Drupal community as well so yeah I would say that's the biggest thing yeah I know you mentioned hobbies to run what are hobbies did you take out well I watch video games not play video games I read a lot of books recently I am into reading a lot of self-help books and then you know recently I started going to you know like concerts like Australian bands so yeah so you have technical leadership roles both within your organization and actually within Drupal community and I guess my question is how have you found balancing those two advanced responsibilities that you found that your professional work has informed for those who don't know Gibran is a subsystem maintainer for the entity reference system as well as a number of contributed projects and in Drupal core a subsystem maintainer is essentially the technical lead for that part of Drupal so how have you found first of all balancing those two have you learned things from your professional work that helped inform your contributions or vice versa yeah it's a really good question I would say like again like when you step into a community where a lot of people are in leadership role just like yourself Lee is here as well you learn from them like how they are leading discussions and how they are listening to people and how they are adapting and open to suggestions and open to you know adopting new stuff so yeah I would say you know like learn from the you know like people already there and then grow from there just don't overstep your mark like yes I'm a maintainer of few course thing in Drupal and I take a lot of pride in doing that because I earned that place like I worked hard to reach that point but at the same time it's not for me to say what is right or wrong if you go in or not go in if community has a voice same as workplace like yes I maintain a big side but doesn't mean you know like I own the side like there are a lot of moving pieces so if for some reason and I touch on that a little as well like you have to back off from your decision and you know like learn that like how to be humble and you know like stay positive actually do you miss running out yeah so before you know taking up other hobbies writing code was my hobby that's why I put the part time stuff like since 2011 till pretty much COVID till COVID happened I was like working on Drupal core on my weekends all the time and since COVID and with this job because it's like a lot of moving pieces and you know like you age as well so you need longer breaks you need longer relaxing time I do miss coding I like having discussions about you know like problems but it's difficult to find the time and like manage both things but still like the conferences like these helps a lot thank you for asking that