Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Should developers be worried about possible automation happening in their projects that might make them redundant ? I never particularly worried about this myself but I have seen many developers worrying about it, even if they don't admit this openly. There is a fear that if you automate most of the aspects of a system that you are handling it might make you redundant eventually.

I myself had an experience on this. 1 year back I had started working in a project were any requirement/change request that came, the only deliverable was a bunch of insert queries. That team had 2 developers and 1 tester working on it (all on shore). The only thing that the developer had to do would be to configure the insert queries based on the requirements.

When I came to work on it, I immediately suggested to build a web application that would enable the business people to do it directly. Every thing would be configured in the web application including error reports in case anything went wrong.

Needless to say my manager loved the idea but it never passed through with the higher management. The logic for that was until the client comes up with such a requirement it should never be done as it will involve future losses for the company and possibly loss of employment of the employees currently handling it.

So should a developer be concerned about this ?I would certainly like to believe that

If you don't take care of your customer some one else will

but experience tells me otherwise.

share|improve this question

closed as not constructive by GlenH7, Martijn Pieters, Joris Timmermans, Glenn Nelson, Jimmy Hoffa Mar 8 '13 at 17:39

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

5  
If I automate something, I don't make myself redundant, I make a part of my job easier and free up time for other tasks ;-) –  delnan Mar 8 '13 at 14:33
1  
This is an interesting question, but I don't believe it's very constructive. This kind of boils down to being a polling type question without the possibility of a definitive answer. –  GlenH7 Mar 8 '13 at 14:43
4  
Good developers don't. –  Blrfl Mar 8 '13 at 14:44
2  
If they need to worry then their job is not development. Process execution can be automated. Process creation cannot. At least until a breakthrough in AI takes place. –  mike30 Mar 8 '13 at 15:02
    
Don't worry, even if automation boosts our productivity by 100 times, we'll still be working 40 hours per week. –  Giorgio Mar 8 '13 at 16:50

7 Answers 7

1 year back I had started working in a project were any requirement/change request that came, the only deliverable was a bunch of insert queries. That team had 2 developers and 1 tester working on it (all on shore). The only thing that the developer had to do would be to configure the insert queries based on the requirements.

That's not software development, it's routine configuration. The job of a software developer is to automate exactly that kind of thing. Businesses sink a lot of money into buying computer hardware, and a lot more money into buying and developing software. One of the most important reasons that they do that is that they can use those tools to become more efficient. The three people in your scenario didn't have to sit around waiting to be replaced by machines -- they could have said:

Hey, manager, this stuff you've got us doing is the same day in and day out. It's silly to pay us to sit here and do it when we could write a program that would do the same thing. Let us do that, and when we're done we'll be able to move on to making other parts of the system better. You can provide the same service at much lower cost, which means that you can charge the customer less, satisfy them better, and still make more profit.

Any manager who'd turn down a deal like that should be fired automated. In fact, the manager should really have noticed the situation and instigated the change:

Hey, guys, I want you to write a program that processes change requests. You won't have to do this boring work anymore, we'll be able to handle requests 24/7, it'll cut our costs and let us lower our price, and besides all that I've got a long list of other things that I need you to work on.

The only software "developers" who need to worry about automation are the ones who get scared when their manager talks like that.

share|improve this answer

Should developers be worried about possible automation happening in their projects that might make them redundant ? I never particularly worried about this myself but I have seen many developers worrying about it, even if they don't admit this openly. There is a fear that if you automate most of the aspects of a system that you are handling it might make you redundant eventually.

I don't class anything that can be automated as development work. That is either configuration or admin work. Taking away that boring work just leaves you open to take on more interesting and taxing projects.

Needless to say my manager loved the idea but it never passed through with the higher management. The logic for that was until the client comes up with such a requirement it should never be done as it will involve future losses for the company and possibly loss of employment of the employees currently handling it.

Thats a completely separate issue. That is your company trying to keep workloads high by being inefficient. Not a great business strategy IMO since it leaves you open to being undercut by the competition.

share|improve this answer
8  
+1 for "I don't class anything that can be automated as development work." –  mike30 Mar 8 '13 at 14:54
1  
"it will involve future losses for the company". Not only is that shortsighted, but if the client ever finds out he switches to the competitor. –  Jan Doggen Mar 8 '13 at 15:39

Your worry is similar to Bastiat's broken window fallacy. Essentially, you're only looking at the immediate lost opportunity for the maintenance contract without considering the opportunities you are losing by devoting too many resources to something that can be automated.

There's always something you can do to take it to the next level, that only a trained professional can accomplish. For example, people still manage to sell tax preparation software even though a spreadsheet is perfectly capable of accomplishing the task. Don't be the company getting stuck selling the service of modifying tax calculation spreadsheets.

share|improve this answer
    
+1 This is an excellent answer, addressing the core cause of the concern. The misguided upper management would do well to learn from this fallacy. –  Dani Mar 8 '13 at 17:51

The job of a developer is to translate informal requirements in such a way they are understandable by automatic tools. We weren't made redundant by the introduction of symbolic assemblers, compilers, libraries, 4th generation languages nor EDI. Why would we be made redundant by the next step?

share|improve this answer

Until such time that developers start writing perfect code or self fixing code, automation taking away jobs is not going to happen. What may happen is that what you work on changes, rather than doing grunt work, you start maintaining the application that does grunt work. This is incentive to always keep learning new things so you don't fall behind and end up unqualified when the next big thing comes.

share|improve this answer

For the next 10-20 years, there's no need to worry although there will always be app builders for power users. These tools will improve as user skills improve and the programmers who write them hone their craft. Remember, programmers are needed to write the tools that do the automation.

Then, there's customization. For example, let's consider Sharepoint. It's suppose to be a simple enough system for a power user to build a corporate website from supplied parts. In practice, it doesn't work this way. Instead of a power user, you have a programmer/administrator, often being paid quite well, coding web parts, modifying CSS and so forth along with managing content, users and so forth. You see the same thing with WordPress, Drupal and other content and web site management systems. If you don't mind doing this kind of programming work, it can be quite rewarding financially.

Maybe, in 20+ years or so, we'll see the technological singularity where AI becomes advanced enough to do these tasks and eliminate programming jobs entirely. But, I suspect that if we do actually reach that point, holding onto a programming job will be the least of our worries (re: "are you alive?" or "I'll be back")

share|improve this answer

I believe that if the work you are doing is routine enough that it can be automated, it absolutely should be automated. Automation saves valuable time for yourself, your fellow developers, your business and your customers. It breeds consistency in the way things are done, making trouble spots easier to deal with, and improving the quality of your work. It introduces the capability for a process to be leveraged by other systems, applications, and even in situations you didn't anticipate in the future. I understand this can't always be done for a myriad of practical reasons, but that is my philosophical point of view on the topic.

I don't feel that automating yourself out of a job is a realistic possibility, personally. If we have a task that we can automate, we should do it, and move on to bigger, harder problems. We are valuable, intelligent, creative human beings. Successfully automating away your current work is direct evidence for that. If our job doesn't have bigger, harder problems, or our company does not see that we are fit for a greater challenge, we should be looking for better, more rewarding jobs, where our skills can be of better use to humanity.

share|improve this answer

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