This viewer left an interesting comment that I wanted to talk through... LeetCode? *ONLY* a tester? Are things really that bad, or are there some great lessons to extract from this situation?
📄 Auto-Generated Transcript ▾
Transcript is auto-generated and may contain errors.
Hey folks, I just wanted to respond to a comment on YouTube um I thought was kind of interesting. There's a couple of couple of different parts to it, but I'm going to read through it and um I want to talk about um when you're working in a role and the things that you're doing are not necessarily on the surface things that you're excited about or they don't feel aligned with the direction that you want to be going, how you can maybe steer things a little bit. So, uh, this person said, uh, I got a job, uh, in a dev role. And they were they were expecting it to be a dev role, but they said they the way they said it was ended up getting testing. And then they say right after, I hate myself now, which is pretty strong language. Obviously, I don't I don't know this person.
I've never talked to them. Maybe they just uh sort of use exaggerated language, but that's a pretty strong strong thing to say. I hate myself now as I did lead code my whole engineering. Um they said I've solved more than 800 problems but never learned development which is real engineering or databases. Um I think what I think what they're saying I can't Okay, so just to be transparent I can't tell if they're saying that they hate themselves now because they are in a testing role or because they feel like they've wasted time doing lead code. Um, so this is why I said there's a couple of different things I want to talk about here. I'm going to touch on the lead code part very briefly so I don't annoy everyone with my, you know, repeated view on on lead code. But, uh, they then they go on to say, I will do it now as I have learned from my mistakes.
So, again, I don't know. I think that means that they're going to try to go learn air quotes real engineering and databases. Um, and then hope that someday they become a software engineer despite their current role or situations. Um, so couple things. Um, I I don't think that just going to get this out of the way. I do not think lead code is a good proxy for what we do as software developers. I think it's one of the most useless measures of it. Personally, I think it's I think that there's people that use it for gatekeeping or they have they can't think of a better way and it's just what they've been told is useful. I don't think any of it translates well. Um there are so many other things that I would rather use. So, for this person that said they solve more than 800 problems, um I hope that you enjoyed it.
uh and you know it was like fun problems to solve and because some people enjoy you know that kind of challenge um I think that it's probably helpful for interviewing unfortunately that's like that's the reality I see is like I think it's useless for actual and should I shouldn't say useless that's not fair for me to say I think that if if it's exercising your ability to problem solve then there's a use there I don't think that it translates well into real software development, but if you find that it's enhancing some skill for you, excellent. Not for me to say that it cannot do that for you. Um, but yeah, it's probably helpful for interviewing because a lot of companies will ask you leak code style questions. But the thing that I really wanted to focus on here was around um this line near the beginning.
I got a job, was expecting to get a dev roll, but ended up getting testing. Um, I don't know in their comment if this is the focal point, if they're like, I'm upset because this is what I ended up with. I can't tell or if the the comment was mostly about the the lead code misrepresentation with software engineering. So, I wanted to get that part out of the way and talk about this role thing. Um, first of all, I think that because of the current job market that if you're getting into a role and it's maybe not first, if you were misled, like sorry to hear that. Uh, I think that's not really fair. But I do think that if you're in something that's uh even adjacent to writing code, like in your role as a tester, I don't know if they're like letting you automate things and that kind of stuff.
I would hope that they do if it's all just manual testing and there's room to automate like maybe that's something you could do and you could write code for that but um being it's being in a paid role that's at least adjacent to what you want to be doing I would say is not a bad spot to be. It might not be ideal but I don't think that that's the end of the world. And what I wanted to do is kind of talk through a a perspective I've been trying to like form for myself a little bit more uh concretely, a little bit more um purposefully. And that's really around like when we're doing stuff in our roles that don't that doesn't feel like it's like it's awesome. So I wanted to use an example from my own experience and then kind of talk through and translate this for for other sort of scenarios.
So for me as a software engineering manager, I've been doing this for like what has it been like 13 years now. So like that's been a big part of my career and for me in my career like I have aspirations for what I would like to be doing, right? So um the example for me is like because I have been managing engineering teams for 13 years and that means managing individual engineers or perhaps other roles within the team. The next evolution of that for me will is is a couple things multiple teams which I have done and I I am doing within my current team. So different areas different functional areas with different individuals focus on different things like that's kind of an evolution. And then the next evolution beyond that is managing the managers who man like basically managing people that are in my role.
That's the evolution of of this career path for me. And because it's been 13 years of doing this thing like for me I'm like well where where is this opportunity for for managing the people like me? So if I'm working on stuff that is not aligned to that and I notice that I'm doing it for a while, like sometimes that makes me feel like hm I'm not doing the thing important for my career. Kind of like with this person saying oh like I got a testing role that's not that's not a developer role. Um so for me when I find myself doing this kind of stuff and I'm like oh it's not really progressing what I'm doing. What I try to do is say, look, I'm currently, you know, if I'm working on something that I know is important, right? And the example for me specifically, just because it's very relevant, is like on call.
I was just on call for two weeks and I've had a lot of on call this year uh just because of some some team changes and stuff and I kind of have to step in to go on call and when I am on call that is a lot of time and energy where I'm like this is literally not you know translating into career progression for me. I know it's important but when I think about the time spent I'm like like that's not really helping me. So, it feels like not a good use of time, right? It's not like an efficient use of where my time and energy is going. But what I've been trying to do is remind myself that in all of these situations, there's like there is an opportunity to learn and to like sort of extract value for ourselves. So, when I find myself on call, especially in areas where I'm like, man, I don't know about this, right?
And this happens a lot. We have a really large service. I have a peer manager and she manages individuals on our greater team that are responsible for a functional area that I don't touch like at all on a day-to-day basis. Do I have to know it and understand it? Yes, of course, because it interfaces with our stuff. I'm also responsible for it when I'm on call. But in my day-to-day work, I don't need to know super indepth compared to the areas that I am actually responsible for. But this becomes an opportunity for me instead of going into my on call rotations and then there's something that comes up in that area and I go, "Ah like I don't know this. Oh man, it sucks. So, I have to go deal with this thing that like, you know, it's not even part of like my area of responsibility dayto-day.
It's not even going to help me grow in my career. Like, why do I have to go do this? This is so frustrating. I'm not even going to be able to help this team that needs help. Like, instead of going into things like this because it's it's for me, my personality type, it's very easy for those thoughts to come up because it's almost like frustration or why me? I'm trying to switch things around and it's it's almost like like running into these things head first like like just diving in and going just flipping the whole thing around instead of being like this is so frustrating. I hate it. It's kind of like okay like you know you have to go do this thing. So instead of being upset about it what are the things that we can learn? What is the benefit here? Right? There is generalizations that I can take away from trying to debug things like this.
Right? So in these situations where I'm helping partner teams and they're like we have this issue and they're like we don't even know what's up. Sometimes I'm like I don't even know what's up because I'm new to I'm new to this area. So, how can like what are the lessons as I'm navigating this that I can go reflect on and be like, cool, like this was a um a more general debugging approach, right? There's going to be pieces to the technology that I'm touching where I'm like, oh, I didn't know that. Like there's there's going to be lessons along the way. There's going to be interactions with these partners where I'm like, okay, just give you an example, like they're they're they're frustrated because they don't know what's up. and I'm frustrated cuz I don't know what's up.
So instead of going into these interactions and being like, well, I'm going to sour the relationship with this partner team, like what are the things that I can learn about these interactions where I can I can be better sort of in terms of like uh like a support role, right? How can I make them feel uh more confident in our platform? How can I make sure that I understand their problem more quickly? How can I communicate that um that I am trying to help? Right? there's there's these lessons that I can try to extract from the work that I'm doing that will be applicable beyond the current work that I'm doing. And I think that that mental framing for me is very helpful because instead of being frustrated like why me? Why do I have to do this? It's like cool, what is the opportunity that I can take away from this and apply to the future?
Um, and so to go back to this comment around the, oh, I'm like I got stuck in a testing role, I get that might not be the thing that you want to be doing, but there is a lot of interesting stuff that you can learn from testing because uh I don't know historically uh at least when I was going through software development asism or a junior developer um testing was kind of this thing that a lot of people were like you know they're writing code and then they go oh I got to test it like either code's too complicated for me to go write tests for. So, oh, I guess I can't guess I can't test it, right? And then people wouldn't learn from that lesson. They just keep writing code that wasn't testable. So, you can sort of learn about that.
Um, we had this situation too where developers would say, "Okay, I'm done and then they would hand it over to the testers and then like that kind of relationship was really shitty because immediately the tester would hand it back and be like yeah this doesn't work like immediately right so you do all this work for like a full sprint or whatever a week two weeks give it to a tester cuz you're like confidently done and then it within minutes of them trying it they're like this just doesn't work like that's not a that's not efficient that's not a good working relationship. Um, so like what can you learn from being in a testing role that's going to help you be a better developer? What's going to help you work more effectively in a team when you are writing software when you are in a developer role and having to interface with people who are testers or other developers, right?
Like what can what lessons can you learn from this position that will be applicable for your future? And I think that there is a tremendous amount and I think that if you're still like you know if you are eager to be a developer maybe there's opportunities in your role doing testing to write software that will help with the testing. It might not be exactly what you want to be doing in the moment, but can you find those opportunities if they're just not applicable in your role or there's, you know, your manager or your the way that your team is structured doesn't really support that, which would be unfortunate. Like, can you still be writing software on the side like personal projects and stuff? So, you're still building stuff while you're in this role learning these other parts about software development. Like again, you if you have this opportunity at work, I I guess that's the word I'm trying to to plant is like instead of this being like a shitty scenario for you.
If you call it an opportunity, okay, if you call it an opportunity, what are the things literally label it an opportunity? What is it an opportunity for? Make a list of all the things that it's an opportunity for. might not be on the surface like the same list of opportunities that you get as a developer, but I bet you if you go sit down, call it an opportunity, and make a list of all the things that it will help you be uh a better software developer for, you'll have a list of stuff. And that's the takeaway that I want to to leave you with in this video is like if you go if you're in a situation like this and you're like it feels unfortunate, it feels like it's not the thing you want. Okay, it might not be your final destination and that's okay. Like the role that I'm in is not my final destination.
I've been doing it for 13 years. It's not my final destination. But there's a lot of valuable things that will help me go to the next level. And I have goals and aspirations to run my own software development company. And all the things I'm doing now and that I have been doing will be you know um acrewing to what I want to be doing after or at least what I'm aspiring to be. So, I think if we try to look for these lessons along the way, I'm not saying it's easy because I can understand where you'd be frustrated. So, I never mean to minimize that kind of stuff when I talk through things like this, but I I sometimes skip over that because I'm trying to draw your attention to where the opportunity is. So, I hope that helps. I hope that makes sense. I hope that doesn't feel um condescending.
And I just encourage you to try putting that lens on when you're frustrated with your your current situation. Like what is the opportunity? What's the value that I could uh extract from this? So, thanks for watching. If you have questions about uh software development, your career, uh leave them below in the comments. You can send an anonymous uh question in on codemute.com or you can look for dev leader or code commute on any social media platform. Send me a message. I'm happy to try my best to answer with a video response. And uh thank you so much for watching. See you in the next one.
Frequently Asked Questions
These Q&A summaries are AI-generated from the video transcript and may not reflect my exact wording. Watch the video for the full context.
- How should I view a testing role if I originally wanted a developer position?
- If you find yourself in a testing role instead of a developer role, I suggest viewing it as an opportunity rather than a setback. Testing can teach you valuable lessons about writing testable code and improve your collaboration skills with developers and testers. You can also look for chances to write automation code or work on personal projects to continue developing your software skills.
- Is solving LeetCode problems a good way to learn real software development?
- I don't think LeetCode is a good proxy for real software development. While it can help exercise problem-solving skills and may be useful for interviews, it doesn't translate well into actual engineering or working with databases. If you enjoy it and it enhances some skills for you, that's great, but it shouldn't be your only focus.
- How can I stay motivated when my current work doesn't align with my career goals?
- When your current tasks don't feel aligned with your aspirations, try to reframe the situation by identifying what you can learn from it. For example, even if you're doing work like on-call support that doesn't directly advance your career, you can extract lessons about debugging, communication, and collaboration. Label your current role as an opportunity to gain transferable skills that will help you reach your next career step.