I'm a software engineer working as a contractor for various clients, most of them established and "big" companies. Besides hands-on software development, a big part of my job is to bring in new thoughts, help the other colleagues learn new techniques, improve software quality, etc. Usually I'm part of a team (mixed with employees and contractors), resembling a real employee for some months.

In all of my projects so far I experienced the same issue, at varying intensities. In short, I often feel unhappy and sometimes frustrated at how bad the whole environment influences my own work.

As an example, there is a software tool which is used company wide, with the purpose to find quality issues in software and help fixing those. However, this tool is not well maintained and runs analyses which were deprecated years ago (due to false positives, leading to extra work for each developer using the tool). My criticism was answered along the lines of "we have reasons", which boils down to "we don't feel like fixing it", meaning "deal with it". Besides the actual unnecessary work on my side, I have negative feelings because these issues do not only affect me, but every single developer in the company. In this case, software quality is also affected in a negative way.

I have a long history of support tickets (network too slow to do proper tests, local software installation slowing down the workflows I'm used to, unable to do local tests due to missing software, ...), which in most cases just tell me that I'm one of few (the only one?) voicing these concerns and that there's no real solution to my issues. I also received positive feedback that I'm challenging such issues, and I consider this an important aspect of my job.

I could try to come up with many concrete examples, but basically I often find myself in situations where I'd like to give my 110%, do good work, and instead I find myself blocked, slowed down, or just annoyed by millions of tiny issues. I don't feel that I can do professional work in such environments, and I don't know what I can do about it. I write this waiting for a critical configuration fix, after slacking off for a while. Instead of being bored and browsing through SO, I'd love to write software and solve real engineering issues.

Quitting this kind of job is an obvious alternative. I'd also like to know if there is anything I can do - either to work on myself, or to help change the clients for the better.

I already know that I am more demanding and impatient than average.

Finding other things to do also is a great idea. However, I tend to be finished with those before the original issue is resolved, or run into new issues that make it impossible to continue with the NEW work. Besides, most of the "side quests" are boring, unimportant, distracting, unpleasant compared to the actual job I'd like to do.

PS: The clients are (very) happy with my work. I am not.

closed as off-topic by Philip Kendall, Mister Positive, paparazzo, Masked Man, Richard U Jan 2 '18 at 15:41

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    What is the actual work you would like to do? Answer that honestly, and either find a position in your current organization to do that, or move on to another organization that will allow you to do so. You know this yourself already. – Mister Positive Jan 2 '18 at 14:16
  • I crave to develop software (hacking at the keyboard), do Scrum meetings, raise issues and watch others solve them. I love being busy and challenged. Being blocked by mundane issues is the opposite of that. I'd say it's hard to do this in my current job as a contractor, but I also don't feel like changing employers (not just customers). – C-Otto Jan 2 '18 at 14:19
  • I already have the correct the job (description). Instead of finding the perfect customer/employer, I'd like to know how to deal with less-than-perfect situations like the current one, as I feel this is also part of my job (and it will happen again and again in my life). – C-Otto Jan 2 '18 at 14:21
  • 3
    It is not really your job to care. It is you job to do what they pay you to do. – paparazzo Jan 2 '18 at 14:27
  • 1
    Is this a rant, or is there an addressable question here? – Snow Jan 2 '18 at 15:16

I don't think you've established what you're suppose to be doing with the people/management that hired you. Based on your job description:

Besides hands-on software development, a big part of my job is to bring in new thoughts, help the other colleagues learn new techniques, improve software quality, etc.

That "big part" is called management. Your job is to change the team. Guess what? That's not easy. Have you been given any authority?

It seems like you just want to throw out suggestions and expect full compliance. That's a luxury for owners, CEO's and other high level managers.

If you don't want to tackle this challenge, you're going to just have to stick to writing code and deal with the low standards.

  • Establishing intentions and getting authority is a common issue my colleagues (different customers, same employer) face. I know that this is the hard part, and there are some management aspects involved. I'd say rephrasing my question helps: How to deal with lack of compliance or slow results? To answer your question: I don't have any explicit authority. I am expected to help from the bottom of the hierarchy by raising issues to management and establishing a mindset in the team. This, sadly, is very hard. – C-Otto Jan 2 '18 at 14:47
  • 1
    @C-Otto - It is difficult. I know it's easy for me to say, "just keep trying" but I do think you will eventually have some, probably small, successes. I hope those keep you going. – user8365 Jan 2 '18 at 15:17

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