17

I'm a recently-hired junior developer. I noticed several menial, tedious tasks that are performed manually every day. Being a software engineer, I created small (<100 LOC) applications to automate these tasks.

When presented to my manager, I was reprimanded for working on a project without prior permission and was explicitly told these tasks will not be automated.

How can I change my manager's mind? How can I convince manager that automation is good? My arguments (saves time and money, and doesn't distract the developers by having them work on menial tasks) didn't seem to be effective.

  • 20
    Did your boss explain why they explicitly don't want those tasks automated? – combinatorics Dec 26 '18 at 14:36
  • 13
    As a junior, really focus on doing (well) what you are told to do. There's a million reasons the Boss may not want those tasks automated. – Fattie Dec 26 '18 at 15:46
  • 13
    LOC is pretty much an irrelevant metric. How much time did you spend on this? – Johns-305 Dec 26 '18 at 16:53
  • 6
    @gnat that's a good read, but there's a key difference: the changes discussed in that thread are large, cultural changes that require the buy-in of everyone involved. Changing how a team develops and maintains software is massive; automating a handful of tedious tasks is not. – Strikegently Dec 26 '18 at 16:56
  • 3
    I would be curious about which country this happened. – gnasher729 Dec 26 '18 at 17:41
37

Perhaps frame this as more of a question and not a demand to your management.

Is there a reason we do process A by hand each time?

or

I understand that we need to do process B every (when ever) is there a reason we cant just automate this task to get away from the tedium?

Or perhaps you could frame it in a language every manager speaks, Money.

Boss, We do process A, X times a week. The time it takes to do process A is Y hours a week. Y hours a week plus my hourly pay is Z which means we are wasting dollars a week doing this. When I could take 1 hour to automate it saving us all that time and money.

  • 23
    This is a good answer. From the perspective of a senior dev, I would like to add that I would not expect the junior dev to have a full picture of the cost though. A senior will have to review this automated script. DevOps may have to be involved. It may have to be adapted from time to time. Those things do not always pan out as "it cost just 2 hours of a junior dev's time and never has to be touched again". – bytepusher Dec 26 '18 at 18:58
  • 5
    @bytepusher "DevOps may have to be involved" ? I suggest reading up about DevOps - DevOps is not a seperate department that approves automation scripts; it's "you". – Erwin Bolwidt Dec 26 '18 at 22:24
  • 6
    @ErwinBolwidt Unfortunately, teams called "the DevOps team" abound. Lots of times it's what was formerly the "Ops" team, with a new expectation that they use modern "infrastructure as code" patterns. – Roy Tinker Dec 26 '18 at 23:21
  • 1
    using the sentence "I did some research" where you mean "I wrote the whole damn thing" is a neat one too. "research" is sounds nice to managers because even if there are no tangible benefits they can count it as self-improvement, e.g. added value to the company. – Borgh Dec 27 '18 at 8:44
  • @ErwinBolwidt: I see your point, but as Roy pointed out, DevOps is used in different meanings nowadays - certainly where I work, which prompted me to use it in this context. – bytepusher Dec 27 '18 at 15:13
20

With this manager, you are not enabled to directly improve the company, you are expected to follow the manager's direction. This manager will evaluate what kinds of improvements are needed, and will direct people to perform them.

In this case, you did work off the books, and the manager wants to assure themselves that you can be managed (which is doing what is asked of you, without doing extra stuff).

Some companies see work like this as "lack of structure", some companies see doing work like this as "taking initiative." It sounds like you are in a company that won't like such efforts unless the management has approved it beforehand.

Next time offer the solution to management first, and see how they react.

14

A good manager would either tell you why these tasks cannot be automated (maybe because of special cases where your code would blindly do something really wrong), why the task shouldn't be automated (because your company bills another company by the hour, and that boring and repetitive task is a nice little earner), or if you were the first one who realised that automation was not very difficult, congratulate you to your initiative and results, possibly telling you to check with him the next time.

A bad manager will only care about his power. You went ahead without his knowledge and permission. Maybe his boss has asked why these tasks take so long, and your manager lied they were impossible to automate. Anyway, what is good for the company doesn't count for this manager, so you have no chance to convince him.

10

I once worked for a retailer who expected hand-written reports faxed to the office at the end of the day. I knew my employer — a tech-averse gentleman who was very good at flying businesses by the seat of his pants — but I was also annoyed with the waste of my time, the waste of resources, and the inherent errors with using a pen.

When I first discussed it with him, he said no. He didn't want to be bothered to understand what I was doing and the processes in place worked for his needs.

Months later, on my own time (I've paid for that particular mistake before), I wrote some simple web pages that let me quickly fill out the reports, generate a PDF, and email that to the main office where they could choose to print it or not. I went out of may way to be sure the fundamentals of the process were not interrupted.

He grumbled, but the office found the reports easier to work with and read and, indeed, from their perspective, nothing had changed other than printing from an email rather than picking up paper from a fax machine.

Over the course of years the owner eventually had me write code that completley automated the store-office reporting process (for multiple stores). It saved hundreds of man-hours a year, thousands of sheets of paper wasted on the reports, and improved the accuracy of the reports.

My secrets?

  • My employer didn't pay a brass farthing for my time and effort.
  • I was completely willing to back away if anyone complained.
  • I didn't make a big deal of it. Though other stores could have immediately benefitted, it would have (legitimately) been perceived as stepping on toes had I tried to promulgate its use.
  • I was patient.

Managers are "owners" of their respective little piece of the business and that includes your time and their perception to their supervisors. I could see that my efforts would benefit the company as a whole — but the owner didn't care. That's his perogative. I had to be content that they helped me without interrupting anything else.

Epilogue: years later, as the little software hacks grew and it became obvious that we needed to bring everything together into a single domain with the company's first website, the owner sat me down and showed me pictures of his antique car collection. "You know what I like about these?" he asked. "They're easy to fix. You're building a Lamborghini, and I don't know how to fix it." Message received. Today the company has its own website with substantial automation — and a lot of my own time went in to making sure it was dead simple to use and hard to break. Was it fair that I wasn't paid every penny I could have made? That's irrelevant. In the end, both I and the company benefitted. That was my choice and I've never regretted it.

  • 1
    This definitely can be a solution, if the OP is willing to not get paid for their efforts. Many people, including myself, have gone down that rabbit hole to end up doing a lot of work, having lots of stress, and having no time or extra money because of it. I would also say this would work for a place that has little to no tech and start a wedge of tech into the place, like you did, carefully and with great respect to the current situation. The OP is already in a tech position, so there seems to be more going on here, unfortunately. – computercarguy Dec 27 '18 at 1:01
  • @computercarguy, please remember the context of the OP's question: he's interested in creating software that benefits him with the excuse that it benefits the company. He's not working on software the company asked him to make. Getting paid for something you weren't asked to create is wishful thinking at best, unethical at worst. If getting paid for something you've not been asked to make is priority #1, then the OP shouldn't have written his software in the first place. – JBH Dec 27 '18 at 2:42
  • Actually, a lot of software companies were based off of people's personal projects they wanted to get paid for, rather than something someone asked for. Demanding payment for something a company never asked for and doesn't need is definitely unethical and probably illegal, granted. The way I understand the OPs question is that he took initiative without his manager's approval and is trying to get out of trouble for it. Sort of the "it's easier to ask forgiveness than permission" path that has backfired. I also see it as benefiting his co-workers, intentionally, so not truly unethical IMO. – computercarguy Dec 27 '18 at 2:51
  • @computercarguy, We probably need more info. My perspective is that he wrote code for internal reasons. I've been on both sides of the employer/employee aisle. That's rarely an appreciated incentive. If he wrote it on his own time, then the discussin with his manager is about the merits of the software. If he wrote it on his company's time - frankly, he deserved the chewing out he received. Respect and responsibility must go both ways. – JBH Dec 27 '18 at 3:05
  • My understanding was that he did it on company time and, yes, probably did deserve the chewing out. If he did it on his own time and computer, he might need more of a chewing out, because of potential conflict of interest, IP rights, or a leakage of the company's proprietary code/procedures. You are definitely right about respect and responsibility, as he definitely should have asked his manager before working on this project. However, the manager seems to need to explain things a bit better as to current business practices. The boss shouldn't just assume a junior knows all that. – computercarguy Dec 27 '18 at 3:23
4

"How can I change my manager's mind?"
At this point, I'd say you can't. Or at least it's not a good idea to try it again right away.

I'd suggest talking to a team lead or a senior dev about why these tasks aren't to be automated. Caution: don't do this as anything official, just make it a normal conversation, the type where a junior is asking to get more information about how things work. This isn't something to start a Conversation about, with a meeting or anything, just something asked offhand.

Your senior or lead should be able to answer these questions without bringing any heat on you from the manager. Beware that your manager could think you were "going behind his back" if you get "caught", and talking your way out of this might not work, so this is a risky path.

You might be able to bring up the questions @jessie mentions in a couple of months or even years, depending on your manager. It really depends on the manager and how careful you are in phrasing things. Try to not "beat the dead horse" or "step on toes", seeing as you may have already inadvertently already done so.

So, my real advice is to let things lay and cool down for a while. Your manager may eventually be curious as to how you managed to automate someone else failed, or may simply see (on their own) that the manual way is wasting time and money. For some managers, you have to make them believe the work is their idea, and, at this point, it may be hard to do on this topic.

Even a good manager could be mad, if you were working on a low priority task when something much higher or critical needs to be worked on instead. Maybe they were just having a bad day and you unintentionally interrupted their workflow.

So, yes, let it drop for a while and do a little unobtrusive recon to figure out a better time or a better approach to suggesting your improvements.

3

Imagine you're in the army. The manager is leading the group through a hostile environment. He knows where the rescue team is. One of the people has left the group silently to explore a shorter way to get to the rescue point. This could succeed, but also has the chance to force the entire group to leave the known path and perform rescue operation in the rescue operation :).

This is more or less what you did in your manager eyes. He or she is the one that leads the group and have been involved in lots of other discussions that you haven't been involved into. He has some inteligence that you don't have at your disposal. So maybe he "sees" some pottential problems better than you.

My advice is to try and regain his or her trust first. By doing the tasks you are assigned to. In the mean time you could be working on two things:

  1. Gaining inteligence - every chance you have to speak to your manager - ask questions that will help you understand where your tool fails short. But do not under any circumstances mention your tool. Try to explore the process instead.
  2. Use your tool in controlled environment if possible. If your tool could be used locally or something like that (e.g. it is not harmful, does not require others to be involved and does not change the infrastructure in any way, so safe that it does not require backups of any sort) - use it to perform your tasks better. But still in the begining do a very detailed inspection if the tool does the job well and do not speak too much about it.
0

We don’t really have the context here. I’ll try to put myself in the managers shoes.

Manager is a Product Owner who is responsible for budget as well as schedule. If the manager has planned X number of tasks and did not plan for Y, lets say there is a customer billing aspect to it. If you do Y, then you could have given away Y for free. If Y now leads to an “opportunity”, then you just have given away free money.

Process improvements and automation are great. I am a big proponent. In the future before attempting to realize your idea, do a cost/benefit analysis so the ROI can be captured then planned. That way, you get credit for the improvement and probably still get to do it anyways. Also no one will get mad at you.

-3

You have to understand the reasons why your manager is declining your request. Was he just surprised? Was there a large battle about the topic with some other dude just a couple of weeks ago? Is there a problem with these tasks which would be immanent from automating these tasks?
If there is no deep reason for him to decline your idea, you might want to argue that you are able to use it and not everybody has to use it. Or ask some co-workers what they think about. Together you might have more arguments or you manager might listen more to his senior stuff.

I disagree with most of the others answers. You don't have to ask for permission to do a side project, unless it eats a big chunk of your working time. Spending one or two hours that will turn out as a loss, that is totally acceptable. Your manager's duty is not know and plan every quarter hour of your working time.

  • 3
    Actually, that's literally the job of a manager: to know what their team and subordinates are doing, and to make sure they're doing what they should, and not doing what they should not. – user53718 Dec 27 '18 at 0:08
  • @Nij: The manager should know what their team members do, right. But not every detail and not whether they spend two hours optimizing their process. That's micro-management. I am grown up enough to make such decisions. – usr1234567 Dec 27 '18 at 20:08
  • If that's part of what you should not be doing, they do need to know, and being adult enough doesn't mean authorised enough. – user53718 Dec 27 '18 at 21:12

protected by Jane S Dec 27 '18 at 5:36

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

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