I am a young professional with around six months of software engineering experience. I work with a young girl who is writing her bachelor's thesis in my company. We get along well, and I always see her sadness whenever she has to face criticism. She thinks that she is not performing well enough and doubts that the job of software engineer fits her, while I think she does well and just needs some more time. I've told her several times now that she has nothing to worry about and this isn't something to learn in just two weeks.

Do you have any suggestions on how to improve her mindset?

  • 3
    It might be the language barrier here (I see that you are German like me), but "young girl" makes it sound like she is 12 at most. If that is the case, you could tell her that working on her BSc at that age is pretty awesome. But I guess she is in her early twenties in which case you should stop refering to her as a girl. – André Stannek Nov 20 at 16:53
up vote 78 down vote accepted

I have been training people fresh out of school for about 5 years now. This behaviour is normal. I have learned that it's not really one thing that causes it, and there isn't really a lot you can do to help them. This person is trying to learn where they fit in the world.

As most of us learned, actually working is quite a bit different than school. For some people, it takes a bit of time to realise that school in fact does not really prepare you for a job, it just gives you some skills to do the job. Here a couple of things I have found helpful when dealing with fresh out of school co-workers:

  1. When they do something right, praise them for it.
  2. Don't sweat the small stuff. If they did something 95% to your liking and maybe there is something like a formatting issue, just let it slide in the beginning. Let them get comfortable before getting too nitpicky.
  3. Before you send them off on their own, guide them through some work and thoroughly explain things. Even if they should be able to do it without the help, always walk them through the first time.

Eventually, the new person will feel valued and these feelings will go away, or they will realize they actually don't like the work. You can't guide them to this decision unfortunately.

  • 7
    The last bit can come as quite a harsh realisation, even after years. It's important to know however, that our job just simply can't be the right one for everyone, even if they have the skills for it, sometimes. – Mafii Nov 19 at 14:18
  • 2
    @Mafii very true. Before I switched to computer science, I was going to school to be a classical guitar instructor. I saw this a lot when teaching. You never really get used to it. Knowing it and getting used to it are two different things. The big thing is to not take it personally, especially if you are the mentor. – SaggingRufus Nov 19 at 14:28
  • Also missing a period on items #2 and #3 – Mateen Ulhaq Nov 19 at 22:16

I'll go over your post point by point for the sake of clarity. You didn't mention the country, but I'm hoping that, while my input comes from a US perspective, you'll be able to apply the principles and main ideas to your particular context. Also, I'm assuming that this is a full-time employee and not someone in an internship, although many interns do transition over to full-time employees, so maybe this distinction doesn't matter that much.

I am a young professional with around six months of software engineering experience now. I work with a young girl who is writing her bachelors thesis in my company.

Congrats. It might be a good idea to start referring to her as a woman, not a "girl". Usually, people entering a bachelors degree are already adults, and I'd expect someone who appears to be close to graduation to also be an adult. Therefore, treat her as an adult from the get-go.

By treating her as an adult, you'll do your part in treating her as an equal, in the sense of respect and so on. Presumably, she earned her position at your company and it was not "given away" to her for "free" for knowing the "right" person... so, reminding her about that fact could go a long way.

Rather than feeling sad for not already knowing things no reasonable person expects her to know anyway (she's an undergrad, after all), she should simply be encouraged to rise to the occasion and make sure she's aware that that's what's expected of her. Pity doesn't get anyone too far.

Your company should consider a mentorship program, if it doesn't have one already. A program like this allows a more experienced co-worker to become someone else's "mentor" in a more official capacity, much like a guide.

We get along well, and I always see a sad mood in her face whenever she has to face criticism.

I don't think anyone is happy about facing criticism, but you don't mention what kind of criticism she's facing. Is this a personal matter or is it simply about code reviews?

For example, as software engineers, we tend to review (and should review) each other's code. If this is the case (and if it's not, then just take it as an example), then this is a good/common practice and she (anyone, really) will need to get used to that. A few reasons include:

  1. This is one way in which we improve the quality of the code --this is a code review, not personal review;
  2. This is another way in which she'll be able to learn from those who have more experience;

In short, the key here is realizing a few things:

  1. Reviewing code is not equivalent to evaluating you as a human being;
  2. This is a very good learning opportunity and she should take advantage of it to improve her knowledge (she can always ask why the team wants solution A instead of B) and advance her career;

If the criticism she's getting is from employee evaluations, then, while I can sympathize with her, there might not be much that can be done, depending on the situation and context.

She thinks that she is not performing well enough and is doubting that the job as a software engineer is fitting for her, while I think she does good and just needs some more time.

While I'm not a behavioral expert or the like, some have mentioned the "Impostor Syndrome", to which I can relate. There's simply too much to know and it can get overwhelming quickly. This is normal.

I think she may also need to realize, and accept that, as someone who hasn't even graduated yet, she will need more time and effort to acquire the added knowledge and experience that then translates into better individual performance. And even then, if her personal standard is very high, then it's something she may need to learn how to live with and handle.

(This is my case and is what some of my friends tell me, so I just learned how to be aware of it and handle it better. And this is coming from someone with 10+ years in the industry as a software engineer.)

I told her several times now that she has nothing to worry and this isn't something to learn in just two weeks.

In my experience, and that of some of my co-workers, depending on the complexity of the environment/systems/etc, it can take several months and even a bit over a year to get a good-enough grasp of things to become reasonably effective and proficient at your job. This is how it is for us average individuals and the amount of complexity in today's systems. Also, software engineering is difficult; it's not something that's learned and done perfectly overnight. It takes a significant amount of time and effort. Help her be aware of this fact.

In the same way that it may come as a shock to some students that college is very different to high school, especially if they used to be straight-A students but couldn't maintain that in college due to increased difficulty, as an undergrad, she may be running into a similar situation with the corporate environment and may simply need to realize that she needs more time to overcome it.

Also, while it doesn't sound like this, could it be that the corporate environment itself was very disappointing to her and not at all what she expected? This might be worth talking about. Many years ago, I had been hired as a Firmware Engineer, but spent roughly the 1.2 years defining and writing test cases for testing firmware --not writing code. Needless to say, I was upset for a while until I got a chance to jump and do programming work. It might be worth talking about her expectations and reality, in a way that she knows will not affect the outcome of her career negatively or anything.

She should realize that, while two weeks are usually good enough for a fairly complicated homework, the systems used in corporate environments are generally a lot more complex than that.

In the same way she knows, by personal experience, that she can't fit her entire Bachelor's Degree into two weeks, she must understand that she won't be able to fit a corporate environment into her brain within the first two weeks, either.

Understanding that reality is what it is, and not necessarily what we'd like it to be, might be a good first step here.

  • 1
    This answer would benefit from the judicious use of bolding so the key points could be scanned at a glance, helping readers (including me) decide if we want to bother reading the whole thing. – Wildcard Nov 20 at 0:49
  • @Wildcard I'll take another look when I get back to my PC. Thanks for the suggestion. – code_dredd Nov 20 at 0:57
  • 1
    @Wildcard I gave it a try. Let me know if you think that's better. – code_dredd Nov 20 at 4:59
  • 5
    @code_dredd I don't know about Wildcard, but it made me actually read it instead of greatwalloftexticantscan...moving on. – Jared Smith Nov 20 at 13:26
  • 3
    +1 for "not calling her a girl" alone. – André Stannek Nov 20 at 16:47

If she is a person who thinks about her own thought processes, tell her about the impostor syndrome.

  • It is normal for people of middling competency to be aware of their own shortcomings. They know enough to know what they don't know, as opposed to overconfident fools or the very few true experts.
  • Supposedly women in male-dominated fields are especially vulnerable to impostor syndrome.

She should also reflect on a difference between the workplace and school.

  • In school, many exams are designed to tell the "A" student from the "F" student. If dozens or hundreds of students do the same test, then anybody who is halfway competent will breeze through most questions and struggle with just a few.
  • Things become different in oral tests and in the workplace. At work, the things she does right are rarely discussed. Only the errors come up in most code reviews. That skews her perception.
    (On leaving oral examinations, I always thought I failed. That's because the examiner would rapidly increase the complexity of the questions until I started to struggle. Their goal way to determine at which point my knowledge ends and they adjusted the questions on the fly.)

Last but not least, she is now a junior software developer. It is normal for more senior devs to go over her code, both to check and to teach. But that is not the only way to use code reviews as a teaching tool.

  • During code reviews, pick a few issues where different approaches would have been possible. Have her explain her way, tell her about other options, and then keep her solution. (That's assuming her solution works. Code reviews are not always about right and wrong, they're about reflecting different options.)
  • Can you give her the task of checking senior developer's work? Even pros miss a null pointer every now and then, and understanding what they did and why could make her a better developer herself. (This also highlights that code reviews are not about "grading performance.")
  • Charles Stross' latest book has a good quote on Imposter Syndrome “His Infernal Majesty leans towards me confidingly. “You have imposter syndrome,” He says, “but paradoxically, that’s often a sign of competence. Only people who understand their work well enough to be intimidated by it can be terrified by their own ignorance. It’s the opposite of Dunning-Kruger syndrome, where the miserably incompetent think they’re on top of the job because they don’t understand it.” – Sobrique Nov 20 at 14:37

If I've understood the situation correctly, you are her co-worker and not her manager? If that is the situation, then probably the most useful thing you can do here is let her manager know about the situation and suggest some encouragement from that quarter.

It's great that you've been giving her encouragement, and you should keep doing that. But you're fairly junior yourself. She may find it easier to believe your encouragement if she's hearing the same thing from more than one person, and from somebody more senior. If there are specific areas where she feels she's under-performing, her manager may also be able to help identify ways to build her skills there.

(This assumes that the manager aims to be supportive and is not deliberately fostering her insecurities - as jvb has reminded me, some toxic managers will do that. But I don't see anything in your post that suggests this is the case.)

  • 1
    "Let the manager know" might lead to encouragement, but might also lead to slower increase of salary. There are managers which prey on that - keeping proficient crew members, but trying to leave them completely in the dark about their respective importance to project and company as long as possible. This sadly includes fostering self-doubt. Not a criticism to your answer, but one thing to consider, too. – jvb Nov 20 at 12:33
  • 1
    @jvb good point - I don't see any particular reason in the OP to think that this is the case here, but I have known it to happen. Have added a qualifier. – Geoffrey Brent Nov 20 at 21:35

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.