The Surprising Answer to Do Developers Feel Competent?

• 174 views
vlogvloggervloggingmercedesmercedes AMGMercedes AMG GTAMG GTbig techsoftware engineeringsoftware engineercar vlogvlogssoftware developmentsoftware engineersmicrosoftprogrammingtips for developerscareer in techfaangwork vlogdevleaderdev leadernick cosentinoengineering managerleadershipmsftsoftware developercode commutecodecommutecommuteredditreddit storiesreddit storyask redditaskredditaskreddit storiesredditorlinkedin

From the ExperiencedDevs subreddit, this developer wanted perspectives on whether nor not developers ever feel competent.

📄 Auto-Generated Transcript ▾

Transcript is auto-generated and may contain errors.

Hey folks, we're going to go to the experience dev subreddit today. This one is about being competent. Uh, no, I thought the question was kind of interesting, kind of funny to to start. Um, but the person was going on to say something along the lines of like, I asked a experienced developer how how often they feel competent and I think they, you know, they got a maybe a bit of a surprise in the answer. they're kind of expecting that someone who was uh you know more senior than them was going to say something along the lines that they feel competent in basically like every scenario and the reality was like no like that's not that's not the case at all. Um, so I thought it would be kind of interesting to talk about this.

And then I was reading through the comments and I think there was an interesting one that was added in that we can chat through, which is like, um, when it comes to feeling competent in your work, does your manager play a role in that at all? And so I wanted to loop that in because I think that that's uh, for me a very relevant thing to talk about. Uh, as a software engineering manager, I think that kind of thing is important. It's a It might seem like a a subtle thing. Like if if you're hearing what I'm talking about right now and you're like, I don't really know why or how this is coming up. Like like just not something you've thought of. Like I think that I think that this is important. I just suspect that it probably feels like something that's maybe uh not actively thought about.

So, um, to start off, I guess when it comes to feeling competent, um, yeah, I think that probably what happens for a lot of people is that, you know, um, you're put into something new for you, like new to you, new for you to learn about. Um, and your level of competence in that thing is probably lower, right? So, this is where you get those feelings of imposttor syndrome, right? It doesn't mean that you are an incompetent person. Doesn't mean that you're a dumb person or anything like that. Uh but if you're put into a new space, right? You're going to have this feeling of like, okay, well, I don't know this thing. I don't know about this stuff. And this is pretty common, right? Um think about joining a team that you're going to be working on or if this is your first full-time job as a software developer.

whatever you're going to be touching is probably new to you, right? Most likely. And so even if you know the programming language or the tech stack or something else, you may not know the specific codebase, right? So there's going to be parts that are new to you. And I think that um I'm going to something slide around here on my my chair. One second. I stop with this light. It's just super distracting. Um, it's like a piece of paper that was underneath the cable that's plugged into the camera and every little bit of movement. I just you're like um as you become more senior uh in your role as a software developer, you're moving from work that's like uh say less ambiguous when you were starting out. That paper's still making noise. that's crazy amount of distraction. Um, and then you move towards more ambiguous work.

Um, and it's not like necessarily an immediate jump or anything like that, but generally speaking, the work you're doing earlier on is more well understood, right? Less ambiguous, less complex because people are setting you up for success to work on those things. And then um as you be get more experience, you are able to work through things that are genuinely more difficult because they are more ambiguous or more complex. And I think that like naturally those types of projects, that kind of work is going to push you more towards these uh you know these these periods or these opportunities where you feel like uh you're less competent in those areas. Right. It's a I don't necessarily know the full psychology behind or I guess like any of the psychology behind this kind of thing, but uh I I definitely think it has lots to do with this feeling of like you have you're obviously not like a a dumb person, right?

Like you are technical working in these on these technical things. uh you have experiences that you're building up and then you move into something that is more unknown, right? Like it's it is more challenging, more ambiguous, less understood for you at least. Um and so yeah, I think that this sort of movement from like the well understood into less uh understood is a constant thing we're doing as software engineers. And ironically, the the more experience you have, the more likelihood that you find yourself in these situations. So that's my I think my highle take on that. Um, so you know, I'm not surprised that there's someone asking another engineer more senior than them, hey, like tell me about how often you feel competent and the the kind of joke half joke answer back is basically like, you know, none of the time do I feel competent because there's there's always these new challenges.

Now, that's not like uh that's not to say that like any work you do, you're just going to con like the more experience you get, you're going to constantly feel like an idiot. That's not that's not what I'm saying. What I am saying is that uh you know there's probably I'm assuming it's not like a perfectly flat liner or something like that, but if you were to graph it, I'm sure there's a period where you know if you're like really really advanced in your role, there's probably lots of things where you're sort of pushing the envelope on uh on stuff that like genuinely is going to be like making like anyone feel incompetent because they haven't had to to go figure this kind of stuff out yet. But it's not that anything you do is going to make you feel that way.

It's probably some of your core focus areas or the things that feel like they're, you know, a a big initiative or a big project for you, those types of things are probably going to be more and more like uh challenging around your competencies. But um that doesn't mean that you haven't built up an awesome foundation or like you haven't built up a lot of really general knowledge to support that. Like that's the what I would would say is kind of ironic about all of this is that you know as you're getting more experience and working on the more ambiguous complex sorry complex tasks um you have more of these situations where you do find yourself like not having the full competency to accomplish something or that's how it feels right but at the same time like at each of these stages you are actually better and better equipped because you genuinely have more experiences, more knowledge, more skill.

So, um I find that kind of ironic, right? Um yeah, the better you get, the the more opportunities for incompetence or feeling incompetent and the more uh that you do. So anyway, um now if we talk about the manager side of this or how the manager kind of gets pulled into, you know, work where you're feeling competent or not. I thought this was a good question because I like I said at the beginning of this video, I I do think that this is an important aspect and I want to kind of chat through what that what that means to me as a manager and how I think about this. So um I kind of hinted that I would say generally speaking as someone more junior we tried to make sure that there's work that is more well understood right less complex less ambiguous and assign

that to more junior team members and like this is an example of trying to say look like we want to put you into a spot where you're not going to feel overwhelmed you're not going to feel incompetent we actually want you to like build up momentum here. Um the reality is like I also said earlier that probably any new thing that you're put on as someone new to a team right or a junior there's going to be a bunch of things that even if they are more air quotes like simple or air quotes easy um that feeling of like incompetency or maybe having imposter syndrome kick in I think that's for a lot of people it's going to be inevitable and that doesn't again doesn't mean that you genuinely are incompetent or anything like that. It's just that it's going to be like a learning curve.

So, as a manager, we want to make sure that we can minimize that, but we also need to understand there's going to be some level of that. And so, that means that we need to make sure that you feel supported in that way. And that's going to be a bit of a theme for this part. There was a yawn that was sneaking up on me and I was trying to hold it in, but um it got the best of me. But yeah, as a as a manager, we want to make sure you feel supported. I feel like that's going to be a key word here. So um that means that yes, as someone more junior working on a new task, yes, it's understood that you're, you know, for some people maybe you're going to have more of a feeling of like being inadequate or being incompetent or imposter syndrome.

And we need to make sure that you feel supported during that. That uh like as a manager, I wouldn't be caught off guard if someone new or junior was like, "Hey, like I'm not like I'm feeling a certain way about this." Uh and like having second guesses and stuff like I I wouldn't be surprised by that. Um I have some level of expectation that that could happen and I need to be prepared for that because if I wasn't, I don't want to be sitting there going like, "Oh shit." like is this person actually not smart? And like are we actually going to have a problem? Like no. Like I I I am prepared to have a conversation like that and then to support this person. So if that's how they're feeling, it's not that that's like wrong to feel that way. I think that's a perfectly normal thing to feel.

What I need to make sure that I'm doing is supporting them so that they also know that that is a normal feeling to have. that they also know that that doesn't make them a stupid person. That doesn't mean that they're going to fail at this. Simply what it means is that this is literally a period where what they're doing is going to be a lot of new learning for them. And so again, like for for me and how I navigate this a lot of the time, uh I I try to be very explicit where I'm saying to someone like, "Hey, I actually I do expect this task to take longer than normal." And I actually do want to encourage you to kind of slow down, to like take some opportunity to be asking more questions, uh to be trying to learn this, right? I don't just want you to try and like rush through this task so that like you can check a box and say okay done next.

I want you to like, you know, if you're navigating this and you have questions, like ask them. Maybe go talk to I can, you know, tell you who to talk to on the team about this area. Um, whatever it happens to be, like if you want to make some time to chat with me about some of these things, if I if I have some experience there, like let's do that. But basically creating a space for people to like to know that it's it's okay and absolutely expected to uh to not know things and to have questions, right? I expect you to not know this. I do expect you to ask questions. I do expect you to try and learn. Then I want to set that kind of environment up for people early so that that they know, right? And the the same thing like the same thing would apply to to more senior people too, right?

Um there's going to there's of course like a point where I'm like there's stuff that you know I'm asking you to work on like I don't know anything about this. And again for for people I would be telling them like hey look like you know if you're working on this and you have questions like let me know if you want to chat through something and I can try to help and I would make make it clear to them like I am also not an expert in this area right like I'm asking you to go work on this project or solve this type of problem and I'm and I would tell them like I actually don't have firsthand experience doing this and I don't try to tell them in a way that's like that means we're screwed. rude like you know if if I can't do it like you're not going to be able to and we're never going to succeed.

Not like that at all. uh almost the opposite which is like hey look like I still am here to support you right that might look different than it has in the past on this task because I don't know like I don't have the answers to it but like as part of my role I am here to support you and I do want to make sure that if you are stuck have questions that I work with you to find those answers whether that's you know we're getting on a call together whether that's uh me going and you know searching in different parts of the organization to find someone who can help. Like that's part of my role is to be able to help and support. So yeah, there's sort of a repeated pattern. It's just like it uh it changes shape a little bit depending on uh the level of complexity, someone's experience level, and how much I'm able to offer support, right?

Uh it's when I and sorry when I say how much I'm able to offer support I mean how I show up to support right for for certain levels of individuals like whether that's just like general um technical help versus like some domain knowledge right uh just to give you an example when I first joined the team that I'm on in terms of domain help that I can provide for people extremely limited Right. Extremely like I'm brand new to the team. If you are too then my domain knowledge might be equally as as limited. Maybe I have just some more lived experiences and I can happen to like you know draw on those but otherwise I'm kind of uh I'm there to support you in terms of finding the right person to go talk to right how do we go clarify requirements or if you need to understand something let me help you like get the right person.

But the longer I'm on the team or the longer that I'm in a domain, then the more I'm able to to kind of support firsthand as well. Um, now there is a an interesting line here. Oh, it's not my wife, it's someone else. I was watching the cars slowing down, but the light turned green. Um, I was watching them come to the intersection. The, uh, the reality is we need to make sure that people are getting, I'm going to use the word like stretched, right? So, I want to make sure that as people are growing in their careers, they can work on tasks that are more challenging, they are stretched in different ways. So, that means that you will have new challenges. You will be working on things that are are new to you.

And that doesn't mean that I'm like, hm, how am I going to screw this person over and drop them into something they know nothing about and and feel like they're going to fail or feel like they're in the deep end and have no idea what's going on. It's not like that. It's how can I make sure that we're sort of on the cusp of like someone is capable in this area. I have confidence in their ability to deliver there and and it's probably something that is a little bit new to them, right? like how can I kind of overlap building on some of their strengths and experiences and then kind of extending that into something that's a little bit new, a little bit challenging, a little bit uncomfortable, and then on top of that, like I was saying, making sure that they feel supported.

So, it's not about how do I just find, you know, hard for people to work on and then I sit back and I'm like, "Excellent, my plan is working." And then I I watch people uh you know feel like work sucks and they have no idea what's going on. It's very different than that, right? Challenging but supported. Nice parking spot. Um but yeah, that's that. Hope that was interesting. If you got questions about software engineering or career development, you can leave them below in the comments. Otherwise, you can go to code.com. He can submit stuff anonymously that way. And uh thanks for watching. I'll 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 does feeling competent change as developers gain experience?
I think when you're put into something new, your level of competence is lower and impostor syndrome is common. I believe as you become more senior you move into more ambiguous and complex work, which can make you feel less competent in those areas even though you have more general knowledge. I also think that the more experience you have, the more opportunities there are to feel incompetent, while you’re actually better prepared because you’ve built up more knowledge and skill.
What role does a manager play in helping you feel competent?
I want to make sure that junior teammates feel supported and not overwhelmed by assigning work that is well understood. I tell them that this task may take longer than normal and that it's okay to slow down and ask questions to learn. I also offer to help by connecting them with the right people or by chatting with me if they have questions.
How should a manager balance stretch assignments with support to help you grow?
I try to stretch people by overlapping building on their strengths with a new, slightly challenging area while ensuring they feel supported. I want to be clear that it's not about dropping someone into the deep end or making them fail, but about finding that cusp where they can grow with proper support. I am there to help and to find answers with them, whether by talking through problems or involving others in the organization.