I have co-workers who are supposedly senior engineers, device driver developers, firmware engineers who have been working on Linux based systems for 5 or more years and 20 years or more in total. But they are lying. They certainly work, but they aren't good at what they do. For example I had an incident where the colleague still doesn't understand how to install a something that is missing on a Linux distribution. This is something that a 1st year student would already know how to do. If I was in charge I would fire them but, since I'm not the boss I can't, so what should I do?

  • 1
    Develop some patience, help them learn things and remember that there are things you can learn from them too. Or stomp off in a huff and try to find someplace where everyone has exactly the skills and experience that you value -- which will probably require starting your own company, actually. Pick one – keshlam Mar 12 '16 at 6:51
  • @keshlam: They've been working on this Linux product for 4 years. The only reason they look like they can do something is because they tell other junior developers to do it for them. – sashang Mar 12 '16 at 7:06
  • 2
    There's a good, more generally applicable question hiding in here, but unfortunately, as written, it's just a rant. – Jim G. Mar 12 '16 at 14:05
  • 1
    Happy to report that a subset of them were deemed incompetent by management after I raised the issue with them and were asked to leave. It wasn't an easy topic to broach but done sensitively and with patience you can improve the overall quality of the team this way. – sashang Apr 11 '16 at 3:52
  • 1
    In my experience, firmware developers have a very valuable skillset regarding hardware interfaces and debugging PCB issues. Think about whether this might be a more valuable asset to the company than whether or not they know how to apt-get. – pmf Sep 12 '18 at 7:49

Plant yourself where you can grow. If you're frustrated at the lack of talent, you're not happy, so you should look for somewhere you will be happy. I understand the generic responses that not everyone is superstar, but your post clearly indicates gross incompetence on their part. You'll learn more and enjoy your job more working in a shop with better people. True, not everyone will be great, and every place has a weakest link, but it's equally true that some places are on the bottom of the spectrum. Somebody, in fact, works for the lowest quality shop. It sounds like you're exploring that area. Get out now before your skills dull.


By Definition, Average People in the Average Workplace Are "Average"

The work world is often filled with mediocrity for a variety of reasons, not least of which is that (by its very definition) the center of a bell curve is average. Assuming that you aren't suffering from the Dunning-Kreuger Effect and are actually awesome at your job, your expectations of your coworkers may simply be unrealistic.

It is extremely likely that these people are doing a satisfactory job from management's viewpoint. Even if they aren't, management may prefer to keep them because they fit the company culture and have experience in their specific role at the company.

The cost of hiring and training someone new is a real cost to the company. It is also a risk, with no guarantees that the next hire will be any better in the long run.

In addition, what management values may not be just the technical skills you clearly value. Your management team is likely basing their hiring decisions on things they value, such as company loyalty or personality fit.

Mind Your Own Business

Your post in no way explains why any of this is your problem. You aren't a manager, so unless their deficiencies (real or perceived) are creating additional work for you or are impacting your paycheck and performance bonus, then it is management's job to manage them rather than yours.

You should concentrate on making yourself stand out in positive ways. Criticizing your coworkers, especially those who have been with the company a long time and therefore shown that they excel at working for that specific company, will not help you to do that. Instead, find ways to show off your technical skills without throwing your colleagues under the proverbial bus.

If that doesn't work for you for some reason, you will remain unhappy at your current job. Dust off your resume, and apply elsewhere. If you do that a few times, and experience the same situation over and over, you will quickly learn what workplace norms look like. In addition, if you can't find a happy work situation, that will at least help you identify the constant in your various work environments: you.

  • 1
    They are only doing a satisfactory job because they ask someone else (like myself) to solve problems they should themselves solve. Because I am generous with my time I help but my patience doesn't last. – sashang Mar 12 '16 at 8:08

If I was in charge I would fire them but, since I'm not the boss I can't, so what should I do?

As you indicate, you are not the boss, so you cannot fire them. And just complaining to you boss or their boss that "Bobby is sub-par" isn't likely to sit well. You don't get to decide what is "par" for people who don't work for you.

On the other hand, if you depend on their services, you can expect them to get the things done that you truly need in a reasonable time period. And in the cases where they don't, you can make it clear to your boss that you are still waiting for something to get done.

Instead of complaining about the individuals, because you have concluded that they are "sub-par", concentrate on the work you need done, so that your job can get done. If you need a Linux install completed, then your status report to your boss and team could indicate that you are still waiting for the install. If you feel you need to slow your work down to help them solve issues, then check in with your boss first, explain what you need to do and why, and indicate your estimate of how much time you expect to lose.

And it's not your business how the work gets done. If these individuals can get your install done through others, then that's their call and their bosses call, not yours. You want to focus on the tasks you need completed, not on the process that gets them done.

Not everyone in a company is top-notch. It's up to their boss to decide if they are good enough to keep around or not. But others in the company need to understand what they can expect from these individuals and their department, and need to make it known when the tasks aren't being delivered adequately.


sashang, that senior developer is probably quite unhappy that he has to suffer you and can't fire you. Here's the thing: Why would I, as a senior developer, waste my time to learn something that I can hand over to a first year student, when my time really needs to be spent on making drivers rock solid? Is your ability to install that missing bit of software something that makes the business money? You applied it once, will you be ever able to apply it again?

Something to consider: Are you coming fresh out of education? Where you spent all day learning? And now you have tons of fresh knowledge? Wait a year, and you will have tons of one year old knowledge. Wait two years, and you will have tons of two year old knowledge. These guys have four years knowledge how their product works, which is what really counts, and probably much more knowledge how to create products that work.

Now what you should do, and that is the workplace question: Be very careful. "They are lying" is a very, very serious accusation. That may be down to not enough knowledge of the English language, maybe you mean "what they say isn't true" which is something different.

If one of those "sub-par" developers hears about your opinions of them, do you know how deep that hole is that you dug yourself? If you have a team of four or five not "so-called senior developers", but senior developers, and they want you out, you are history. By all means, try to demonstrate that you are good at what you are doing, but calling a whole team "sub-par" is one dangerous move.

  • I am the product owner but wasn't when some of these people were hired. I became the product owner because I demonstrated competence beyond theirs even though they were working there longer than I. You post makes several assumptions that are not true. – sashang Mar 13 '16 at 0:04
  • Whistleblowing is a dangerous move for the whistleblower. It doesn't mean it's not the right thing to do. I am aware of the danger. A lot of what you've written seems to stem from a 'might is right' framework of thinking. I've always been one for the truth regardless of personal cost. – sashang Mar 13 '16 at 1:42
  • 1
    @sashang I'm going to have to side with gnasher729 on this one. You are talking about firmware and device driver experts, and your single piece of evidence they are incompetent is that they were unfamiliar with a particular distribution's package manager. If you had picked an example that shows they misunderstood a CS concept that you learned in your fist year, that would be different. But this just reeks to me of someone inexperienced who is using the wrong metric to determine competence. – Chan-Ho Suh Oct 13 '18 at 16:25

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