Career path for our software engineers at Staffbase - Tech Lead
Some time ago, we received feedback from many of our engineers in our business unit about how to develop at a certain skill level without addressing the next higher level. When we looked at our engineering career framework, we realized that it couldn’t provide a valid answer to that question. So we gathered ideas from our colleagues and created a guide that includes ideas for horizontal growth for our Associate, Regular, Senior, and Tech Lead skill levels. This is the continuation of a series of app posts describing how our colleagues can grow at their respective levels. Let’s move on to Tina …
Hi, I’m Tina. I’m a Tech Lead at Staffbase. I’m a systems thinker.
Before joining Staffbase, I gained a lot of experience in other companies which equipped me with good technical knowledge, programming skills and engineering practices. While I took ownership in guiding teams and individuals in the past, I have proven that I am not only a technical expert, but also a people’s leader. Due to my continuous efforts in the past and my love for technology and its application, I have been appointed as Frontend Tech Lead. So far, my journey here has been wonderful. I can dive more and more into my area of expertise and gain knowledge about it.
I am a tech enthusiast and enjoy participating in workshops, events and hackathons. This helps me develop my extensive technical knowledge and share it with others. My conceptual thinking enables me to drive overarching tech topics forward while always considering our long term strategy. I have always had a passion for composed web frontends, the latest frameworks and reusability. For this reason, I solely focus on the frontends of our app.
For a long time already, I have been dealing with web front ends and have acquired a huge amount of expertise with a lot of dedication. My motivation always points towards reducing technical debt, which makes me passionate about our product and thus I know many of its weak points.
The distinct overview of all the domains of our platform helps me to understand how all the parts work together and which teams and people might be able to tackle some of the challenges coming with the development of our product. As a Tech Lead, I anticipate themes that help my stream identify upcoming challenges. I help the entire organization make clear decisions about upcoming technologies that are evolving in the market. I am also the go-to person when it comes to empowering others to make good decisions about specific customer requests or implementations. This is why I was included in a discussion where a customer was questioning our responsiveness of the mobile app. We discussed several potential solutions and together with the responsible team drafted an improvement plan. From time to time, I also directly support teams when it matters and help implement sustainable solutions.
Due to the quality of my work so far, my credibility and my curiosity, I was entrusted with certain areas of work. For example, I am responsible for the reusability of our front-end components as well as their packaging process. Knowing that with my efforts the entire organization can grow inspires me to proactively work on those overarching topics and processes.
Communication plays a major role in my daily work, as it is important to engage with stakeholders to get their input and feedback so that I can develop high-quality solutions that address product issues such as scalability or performance. I was involved in all the technical discussions with stakeholders when a customer wanted to onboard 110k new users. My early involvement helped us understand the complexity with the load on the network in the backend due to 110k users logging in at the same time. I also shared the knowledge with the other Tech Leads and the respective teams and took their feedback on it. In collaboration with multiple teams, I support supervising system modifications or lowering the barriers to integration and interoperability. I am also involved in hiring and interviewing candidates for technical positions.
I enable my colleagues to grow in all directions. But I don’t tell them what to do. I advise them so that they themselves can choose the path of personal development that suits them best. There are many colleagues - some of them are not even from the same stream - who work with me on a daily basis where I sometimes even directly support them in achieving their goals. We all work closely together and I share my knowledge with them so they can make better decisions.
Recently, there has been an incident raised by a customer and we needed to take some immediate steps to contain the damage. I had a meeting with Rachel, Sam and the on-call team and discussed with them both the nature and the cause of the damage. In that meeting, Sam had an idea on how to solve the issue. All agreed on the solution together. From my perspective, I just observed them and let them make the necessary decisions and steps, which gave them a lot of confidence. In the end, they solved the issue, and it certainly boosted their morale. After the incident was solved we also documented our findings in the post mortem report.
Furthermore, I work with a specific team by continuously mentoring the engineers and coordinating initiatives. I am very approachable when it comes to all sorts of questions and willing to support and help my peers grow. For this reason, I collaborate with others in my work to multiply my experience and knowledge and to be transparent about challenges, failures, and successes. I have taken a leading role in improving our developer experience and maintainability of our overall platform - this could include documentation, code style, test coverage, pipeline, timeliness of new technologies and their deployment to keep our work efficient and our product valuable and high quality.
So this is my journey so far and my approach to fulfilling the tech lead role. Is this your role as well or are you striving in this direction? Please share your feedback. Much appreciated.
Best, Tina Tech Lead