CONTEXT: I work as a software developer in a very small company (10 people, we all work on the same floor) that specializes in open-source software. I'm on a trial period that is supposed to end in September.

It is a very convenient job for me. Given my profile I would have a hard time finding another job that isn't significantly worse for me.

PROBLEM: I did rather OK the first few months because I was given easy tasks as a beginner, but now I moved on to bigger and more difficult projects. I work too slowly on those projects and need several days to do something that would take a normal developer only a few hours.

Relation with my boss (who is also the CEO) has been going progressively worse. I've been told 4 times in private that I work too slowly, am not concentrated and don't ask enough questions (but when I do I'm told that they already told me that and should have listened) but now it has gotten worse. His pity has turned into contempt. He recently publicly humiliated me and doesn't even greet me in the morning anymore.

The thing is: When I'm being berated I can't answer simply because it is justified. To be clear: my incompetence is due to factors intrinsic to me (cognitive), not a lack of knowledge, training, etc.

I'm on a trial period so I am in danger of being fired at any moment and if things continue this way I won't last long but I don't know what to do about it. I just can't approach my boss and tell him all of this because I would basically justify my own firing but I have to do something.

TL;DR: I want to keep my current job but I'm bad at it and my boss know it. What can I do to defuse the situation ?

NOTE: Some of you might say that it's unethical for me to want to keep a job despite knowing that I'm bad at it. I don't think so. I'd likely never find another decent job again if I lose this one.

  • 2
    On top of all that there's a really depressing thing where "anybody" can mess about with very simple software. It is extremely easy, amazingly easy, to do the basics. But it's incredibly hard to be a professional expert programmer. (The perfect example of this is Unity3D, say.) It could be that you're "just no good" at programming (or perhaps rock guitar!) but that has utterly no connection with you being "dumb". The way the universe works out is there will be some other thing, you excel at - enjoy! – Fattie Jul 5 '17 at 13:58
  • 24
    @Fattie, that is so full of fallacies I can stop laughing. The most difficult thing in all human history, you must be joking. Try do a heart replacement or building a cathedral without any computers or automated equipment. Try the challenge of writing health care laws for an entire country and getting them passed while managing all the special interest groups and citizen's concerns. – HLGEM Jul 5 '17 at 14:04
  • 19
    And no you aren't some special someone who has a gift that no one can learn. Nor is it true of artists. What it does take is effort and more effort and yes not everyone can learn every specific thing at all, but that doesn't mean that many or most people can't learn it if it is taught well (currently it isn't) and the person puts in the effort to learn and practice for the requisite 10000 hours. In all professions, persistence is a far more critical factor than native ability and software is no exception. And the vast majority of software development does not require expert skills. – HLGEM Jul 5 '17 at 14:05
  • 10
    as someone who is proficient in music and computer, I tell it all comes from COUNTLESS hours of practice and precision. The thing that sets people apart is their drive. If you are driven to do something you will work harder at it and get better. @HLGEM is 100% correct – SaggingRufus Jul 5 '17 at 14:35
  • 3
    @Fattie I'm a software engineer and I'm laughing at both of your comments. – user1666620 Jun 19 '18 at 12:06

I want to keep my current job but I'm bad at it and my boss know it. What can I do to defuse the situation ?

If by "defuse the situation" you mean "keep my current job", you probably can't.

But you could have a frank discussion with your boss. You could confirm that you know you aren't fast enough for the rigors of the current position, and that you will probably never get there.

You could ask your boss if there is another position in the company that you could fill and in which you could perform adequately. If not, you could ask your boss for suggestions about positions in other companies and for a referral.

Sometimes it takes a while for each of us to find the role that we like, is sufficiently lucrative, and that we can be competent in performing.

I'd likely never find another decent job again if I lose this one.

You are wrong. There are many, many decent jobs out there. And there are many jobs that operate at a slower pace.

  • 3
    +1 This is good advice, the OP has to just see this as nothing more than a "bad fit" and move on to something more aligned to his speed, skill, and temperament. – Old_Lamplighter Jul 5 '17 at 14:04
  • Agreed there are lots of jobs for programmers out there that are basically just doing the same thing over and over with minor tweeks. These types of jobs pay well and you can probably excel at as long as you are willing to tolerate the drudgery of the work. – IDrinkandIKnowThings Jul 5 '17 at 14:58
  • Sadly you're probably right to say that I can't keep the job but I have good reasons to think that finding another job will be difficult. I don't have a driver license (and never will), I'm an introvert, and of course the issues that got me in this situation in the first place. It took me a while to find this particular job. Also I doubt my current employer will be a good referral. – user3419556 Jul 5 '17 at 15:15

You might think you want to keep this job, you might even really believe you want to keep this job but really, you don't. Toiling away, endlessly in a role that you aren't suited for (I wouldn't say you are too "dumb" - it just sounds like your brain doesn't work "that way") is never going to be a happy situation for you and the longer you attempt to maintain it the more damage it's going to do to your self esteem and general mental wellbeing. You're already talking about how:

I'd likely never find another decent job again if I lose this one.

You mention living in a city so unless we're talking about the smallest or most industy-specific city ever then there will be other jobs in other lines of work that you'll be able to get. Of course you need to figure out for yourself what work will be a good fit for you, and it may take some time to do this.

What you should do now is book some 1-1 time with your boss and have an open and frank discussion with your boss about how things stand. Explain how you know that your performance, in particular your speed is below what they are expecting of you and that you would like to try and come up with a solution that works for both parties. As Joe Strazzare says in his answer that may take the form of another position in the company, or if you feel comfortable discussing the specific aspects that you struggle cognitively with your boss then there may be adjustments they can make to your working practices to help at least mitigate the impact on the company's productivity while keeping you useful, possibly through you taking on tasks that are less time-sensitive. Or (and this is fairly likely I'm afraid) there will be a discussion about how it's just not going to work out and if that's what it has to be then it's much better to have that conversation at a time of your choosing and have it be a (hopefully) amicable discussion that could preserve your references etc. rather than waiting around nervously for your boss's patience to run out completely and have him fire you on the spot!

  • all quite true! – Fattie Jul 5 '17 at 15:39

From what you say you really want to keep this job, but I'm pretty sure it's too late for you. You won't keep it, unless you find a way to become exactly what your boss expected you to be a month ago or so.

The point here is the following : Even if it's a hard one, software developer is becoming a quite common job, and there's plenty of offers coming out each passing day. What you need to focus on is improving your programming skills. You need to learn some more, find some personal or public open source projects to work on, to get used to develop, to think, etc....

It requires time, more for some of us than others, but in the end you can improve. And with hard work you will.

This probably won't help you keep this job as it takes time to improve and you're running out of time in this company, but you may surprise yourself and find an even better job once you'll be a better developer.

And maybe, working hard won't help you improving as a developer, but you may find hints, meet people, and find something you will like even more!

  • 1
    Can you please remove the spaces before the punctuation? They are really distracting. – Roland Jul 5 '17 at 19:53

Not the answer you're looking for? Browse other questions tagged .